Skip to content

Commit

Permalink
Default to label placement engine v2 for newly created projects (for …
Browse files Browse the repository at this point in the history
…QGIS 3.12)
  • Loading branch information
nyalldawson committed Dec 3, 2019
1 parent 9904fe8 commit ea5b423
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 10 deletions.
2 changes: 1 addition & 1 deletion src/app/qgslabelengineconfigdialog.cpp
Expand Up @@ -43,7 +43,7 @@ QgsLabelEngineConfigDialog::QgsLabelEngineConfigDialog( QWidget *parent )
mTextRenderFormatComboBox->addItem( tr( "Always Render Labels as Text" ), QgsRenderContext::TextFormatAlwaysText );

mPlacementVersionComboBox->addItem( tr( "Version 1" ), QgsLabelingEngineSettings::PlacementEngineVersion1 );
mPlacementVersionComboBox->addItem( tr( "Version 2 (Experimental)" ), QgsLabelingEngineSettings::PlacementEngineVersion2 );
mPlacementVersionComboBox->addItem( tr( "Version 2 (Recommended)" ), QgsLabelingEngineSettings::PlacementEngineVersion2 );

mPreviousEngineVersion = engineSettings.placementVersion();
mPlacementVersionComboBox->setCurrentIndex( mPlacementVersionComboBox->findData( mPreviousEngineVersion ) );
Expand Down
2 changes: 1 addition & 1 deletion src/core/pal/pal.h
Expand Up @@ -261,7 +261,7 @@ namespace pal
*/
bool mShowPartialLabels = true;

QgsLabelingEngineSettings::PlacementEngineVersion mPlacementVersion = QgsLabelingEngineSettings::PlacementEngineVersion1;
QgsLabelingEngineSettings::PlacementEngineVersion mPlacementVersion = QgsLabelingEngineSettings::PlacementEngineVersion2;

//! Callback that may be called from PAL to check whether the job has not been canceled in meanwhile
FnIsCanceled fnIsCanceled = nullptr;
Expand Down
4 changes: 2 additions & 2 deletions src/core/qgslabelingenginesettings.h
Expand Up @@ -66,7 +66,7 @@ class CORE_EXPORT QgsLabelingEngineSettings
enum PlacementEngineVersion
{
PlacementEngineVersion1, //!< Version 1, matches placement from QGIS <= 3.10.1
PlacementEngineVersion2, //!< Version 2 (currently experimental)
PlacementEngineVersion2, //!< Version 2 (default for new projects since QGIS 3.12)
};

QgsLabelingEngineSettings();
Expand Down Expand Up @@ -173,7 +173,7 @@ class CORE_EXPORT QgsLabelingEngineSettings

QColor mUnplacedLabelColor = QColor( 255, 0, 0 );

PlacementEngineVersion mPlacementVersion = PlacementEngineVersion1;
PlacementEngineVersion mPlacementVersion = PlacementEngineVersion2;

QgsRenderContext::TextRenderFormat mDefaultTextRenderFormat = QgsRenderContext::TextFormatAlwaysOutlines;

Expand Down
12 changes: 6 additions & 6 deletions tests/src/core/testqgslabelingengine.cpp
Expand Up @@ -135,16 +135,16 @@ void TestQgsLabelingEngine::testEngineSettings()
// getters/setters
QgsLabelingEngineSettings settings;

// default for new projects should be placement engine v1 (for now!)
QCOMPARE( settings.placementVersion(), QgsLabelingEngineSettings::PlacementEngineVersion1 );
// default for new projects should be placement engine v2
QCOMPARE( settings.placementVersion(), QgsLabelingEngineSettings::PlacementEngineVersion2 );

settings.setDefaultTextRenderFormat( QgsRenderContext::TextFormatAlwaysText );
QCOMPARE( settings.defaultTextRenderFormat(), QgsRenderContext::TextFormatAlwaysText );
settings.setDefaultTextRenderFormat( QgsRenderContext::TextFormatAlwaysOutlines );
QCOMPARE( settings.defaultTextRenderFormat(), QgsRenderContext::TextFormatAlwaysOutlines );

settings.setPlacementVersion( QgsLabelingEngineSettings::PlacementEngineVersion2 );
QCOMPARE( settings.placementVersion(), QgsLabelingEngineSettings::PlacementEngineVersion2 );
settings.setPlacementVersion( QgsLabelingEngineSettings::PlacementEngineVersion1 );
QCOMPARE( settings.placementVersion(), QgsLabelingEngineSettings::PlacementEngineVersion1 );

settings.setFlag( QgsLabelingEngineSettings::DrawUnplacedLabels, true );
QVERIFY( settings.testFlag( QgsLabelingEngineSettings::DrawUnplacedLabels ) );
Expand All @@ -159,7 +159,7 @@ void TestQgsLabelingEngine::testEngineSettings()
settings.setDefaultTextRenderFormat( QgsRenderContext::TextFormatAlwaysText );
settings.setFlag( QgsLabelingEngineSettings::DrawUnplacedLabels, true );
settings.setUnplacedLabelColor( QColor( 0, 255, 0 ) );
settings.setPlacementVersion( QgsLabelingEngineSettings::PlacementEngineVersion2 );
settings.setPlacementVersion( QgsLabelingEngineSettings::PlacementEngineVersion1 );
settings.writeSettingsToProject( &p );
QgsLabelingEngineSettings settings2;
settings2.readSettingsFromProject( &p );
Expand All @@ -173,7 +173,7 @@ void TestQgsLabelingEngine::testEngineSettings()
settings2.readSettingsFromProject( &p );
QCOMPARE( settings2.defaultTextRenderFormat(), QgsRenderContext::TextFormatAlwaysOutlines );
QVERIFY( !settings2.testFlag( QgsLabelingEngineSettings::DrawUnplacedLabels ) );
QCOMPARE( settings2.placementVersion(), QgsLabelingEngineSettings::PlacementEngineVersion2 );
QCOMPARE( settings2.placementVersion(), QgsLabelingEngineSettings::PlacementEngineVersion1 );

// test that older setting is still respected as a fallback
QgsProject p2;
Expand Down

0 comments on commit ea5b423

Please sign in to comment.