Default to label placement engine v2 for newly created projects (for QGIS 3.12)

This commit is contained in:
Nyall Dawson 2019-12-03 10:06:39 +10:00
parent 9904fe8621
commit ea5b4234ab
4 changed files with 10 additions and 10 deletions

View File

@ -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 ) );

View File

@ -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;

View File

@ -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();
@ -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;

View File

@ -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 ) );
@ -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 );
@ -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;