48   mGridFrameMarginSpinBox->setShowClearButton( 
true );
    49   mGridFrameMarginSpinBox->setClearValue( 0 );
    51   connect( mIntervalXSpinBox, &QgsDoubleSpinBox::editingFinished, 
this, &QgsLayoutMapGridWidget::mIntervalXSpinBox_editingFinished );
    52   connect( mIntervalYSpinBox, &QgsDoubleSpinBox::editingFinished, 
this, &QgsLayoutMapGridWidget::mIntervalYSpinBox_editingFinished );
    53   connect( mOffsetXSpinBox, static_cast < 
void ( QDoubleSpinBox::* )( 
double ) > ( &QDoubleSpinBox::valueChanged ), 
this, &QgsLayoutMapGridWidget::mOffsetXSpinBox_valueChanged );
    54   connect( mOffsetYSpinBox, static_cast < 
void ( QDoubleSpinBox::* )( 
double ) > ( &QDoubleSpinBox::valueChanged ), 
this, &QgsLayoutMapGridWidget::mOffsetYSpinBox_valueChanged );
    55   connect( mCrossWidthSpinBox, static_cast < 
void ( QDoubleSpinBox::* )( 
double ) > ( &QDoubleSpinBox::valueChanged ), 
this, &QgsLayoutMapGridWidget::mCrossWidthSpinBox_valueChanged );
    56   connect( mFrameWidthSpinBox, static_cast < 
void ( QDoubleSpinBox::* )( 
double ) > ( &QDoubleSpinBox::valueChanged ), 
this, &QgsLayoutMapGridWidget::mFrameWidthSpinBox_valueChanged );
    57   connect( mGridFrameMarginSpinBox, static_cast < 
void ( QDoubleSpinBox::* )( 
double ) > ( &QDoubleSpinBox::valueChanged ), 
this, &QgsLayoutMapGridWidget::mGridFrameMarginSpinBox_valueChanged );
    58   connect( mFrameStyleComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mFrameStyleComboBox_currentIndexChanged );
    59   connect( mGridFramePenSizeSpinBox, static_cast < 
void ( QDoubleSpinBox::* )( 
double ) > ( &QDoubleSpinBox::valueChanged ), 
this, &QgsLayoutMapGridWidget::mGridFramePenSizeSpinBox_valueChanged );
    60   connect( mGridFramePenColorButton, &
QgsColorButton::colorChanged, 
this, &QgsLayoutMapGridWidget::mGridFramePenColorButton_colorChanged );
    61   connect( mGridFrameFill1ColorButton, &
QgsColorButton::colorChanged, 
this, &QgsLayoutMapGridWidget::mGridFrameFill1ColorButton_colorChanged );
    62   connect( mGridFrameFill2ColorButton, &
QgsColorButton::colorChanged, 
this, &QgsLayoutMapGridWidget::mGridFrameFill2ColorButton_colorChanged );
    63   connect( mGridTypeComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mGridTypeComboBox_currentIndexChanged );
    64   connect( mMapGridCRSButton, &QPushButton::clicked, 
this, &QgsLayoutMapGridWidget::mMapGridCRSButton_clicked );
    65   connect( mMapGridUnitComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::intervalUnitChanged );
    66   connect( mGridBlendComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mGridBlendComboBox_currentIndexChanged );
    67   connect( mCheckGridLeftSide, &QCheckBox::toggled, 
this, &QgsLayoutMapGridWidget::mCheckGridLeftSide_toggled );
    68   connect( mCheckGridRightSide, &QCheckBox::toggled, 
this, &QgsLayoutMapGridWidget::mCheckGridRightSide_toggled );
    69   connect( mCheckGridTopSide, &QCheckBox::toggled, 
this, &QgsLayoutMapGridWidget::mCheckGridTopSide_toggled );
    70   connect( mCheckGridBottomSide, &QCheckBox::toggled, 
this, &QgsLayoutMapGridWidget::mCheckGridBottomSide_toggled );
    71   connect( mFrameDivisionsLeftComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mFrameDivisionsLeftComboBox_currentIndexChanged );
    72   connect( mFrameDivisionsRightComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mFrameDivisionsRightComboBox_currentIndexChanged );
    73   connect( mFrameDivisionsTopComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mFrameDivisionsTopComboBox_currentIndexChanged );
    74   connect( mFrameDivisionsBottomComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mFrameDivisionsBottomComboBox_currentIndexChanged );
    75   connect( mDrawAnnotationGroupBox, &QgsCollapsibleGroupBoxBasic::toggled, 
this, &QgsLayoutMapGridWidget::mDrawAnnotationGroupBox_toggled );
    76   connect( mAnnotationFormatButton, &QToolButton::clicked, 
this, &QgsLayoutMapGridWidget::mAnnotationFormatButton_clicked );
    77   connect( mAnnotationDisplayLeftComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationDisplayLeftComboBox_currentIndexChanged );
    78   connect( mAnnotationDisplayRightComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationDisplayRightComboBox_currentIndexChanged );
    79   connect( mAnnotationDisplayTopComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationDisplayTopComboBox_currentIndexChanged );
    80   connect( mAnnotationDisplayBottomComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationDisplayBottomComboBox_currentIndexChanged );
    81   connect( mAnnotationPositionLeftComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationPositionLeftComboBox_currentIndexChanged );
    82   connect( mAnnotationPositionRightComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationPositionRightComboBox_currentIndexChanged );
    83   connect( mAnnotationPositionTopComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationPositionTopComboBox_currentIndexChanged );
    84   connect( mAnnotationPositionBottomComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationPositionBottomComboBox_currentIndexChanged );
    85   connect( mAnnotationDirectionComboBoxLeft, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationDirectionComboBoxLeft_currentIndexChanged );
    86   connect( mAnnotationDirectionComboBoxRight, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationDirectionComboBoxRight_currentIndexChanged );
    87   connect( mAnnotationDirectionComboBoxTop, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationDirectionComboBoxTop_currentIndexChanged );
    88   connect( mAnnotationDirectionComboBoxBottom, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationDirectionComboBoxBottom_currentIndexChanged );
    89   connect( mAnnotationFormatComboBox, 
static_cast<void ( QComboBox::* )( 
int )
>( &QComboBox::currentIndexChanged ), 
this, &QgsLayoutMapGridWidget::mAnnotationFormatComboBox_currentIndexChanged );
    90   connect( mCoordinatePrecisionSpinBox, static_cast < 
void ( QSpinBox::* )( 
int ) > ( &QSpinBox::valueChanged ), 
this, &QgsLayoutMapGridWidget::mCoordinatePrecisionSpinBox_valueChanged );
    91   connect( mDistanceToMapFrameSpinBox, static_cast < 
void ( QDoubleSpinBox::* )( 
double ) > ( &QDoubleSpinBox::valueChanged ), 
this, &QgsLayoutMapGridWidget::mDistanceToMapFrameSpinBox_valueChanged );
    92   connect( mMinWidthSpinBox, static_cast < 
void ( QDoubleSpinBox::* )( 
double ) > ( &QDoubleSpinBox::valueChanged ), 
this, &QgsLayoutMapGridWidget::minIntervalChanged );
    93   connect( mMaxWidthSpinBox, static_cast < 
void ( QDoubleSpinBox::* )( 
double ) > ( &QDoubleSpinBox::valueChanged ), 
this, &QgsLayoutMapGridWidget::maxIntervalChanged );
    94   connect( mAnnotationFontColorButton, &
QgsColorButton::colorChanged, 
this, &QgsLayoutMapGridWidget::mAnnotationFontColorButton_colorChanged );
    95   connect( mEnabledCheckBox, &QCheckBox::toggled, 
this, &QgsLayoutMapGridWidget::gridEnabledToggled );
   100   blockAllSignals( 
true );
   112   insertFrameDisplayEntries( mFrameDivisionsLeftComboBox );
   113   insertFrameDisplayEntries( mFrameDivisionsRightComboBox );
   114   insertFrameDisplayEntries( mFrameDivisionsTopComboBox );
   115   insertFrameDisplayEntries( mFrameDivisionsBottomComboBox );
   127   mAnnotationFontColorButton->setColorDialogTitle( tr( 
"Select Font Color" ) );
   128   mAnnotationFontColorButton->setAllowOpacity( 
true );
   129   mAnnotationFontColorButton->setContext( QStringLiteral( 
"composer" ) );
   131   insertAnnotationDisplayEntries( mAnnotationDisplayLeftComboBox );
   132   insertAnnotationDisplayEntries( mAnnotationDisplayRightComboBox );
   133   insertAnnotationDisplayEntries( mAnnotationDisplayTopComboBox );
   134   insertAnnotationDisplayEntries( mAnnotationDisplayBottomComboBox );
   136   insertAnnotationPositionEntries( mAnnotationPositionLeftComboBox );
   137   insertAnnotationPositionEntries( mAnnotationPositionRightComboBox );
   138   insertAnnotationPositionEntries( mAnnotationPositionTopComboBox );
   139   insertAnnotationPositionEntries( mAnnotationPositionBottomComboBox );
   141   insertAnnotationDirectionEntries( mAnnotationDirectionComboBoxLeft );
   142   insertAnnotationDirectionEntries( mAnnotationDirectionComboBoxRight );
   143   insertAnnotationDirectionEntries( mAnnotationDirectionComboBoxTop );
   144   insertAnnotationDirectionEntries( mAnnotationDirectionComboBoxBottom );
   146   mGridFramePenColorButton->setColorDialogTitle( tr( 
"Select Grid Frame Color" ) );
   147   mGridFramePenColorButton->setAllowOpacity( 
true );
   148   mGridFramePenColorButton->setContext( QStringLiteral( 
"composer" ) );
   149   mGridFramePenColorButton->setNoColorString( tr( 
"Transparent Frame" ) );
   150   mGridFramePenColorButton->setShowNoColor( 
true );
   152   mGridFrameFill1ColorButton->setColorDialogTitle( tr( 
"Select Grid Frame Fill Color" ) );
   153   mGridFrameFill1ColorButton->setAllowOpacity( 
true );
   154   mGridFrameFill1ColorButton->setContext( QStringLiteral( 
"composer" ) );
   155   mGridFrameFill1ColorButton->setNoColorString( tr( 
"Transparent Fill" ) );
   156   mGridFrameFill1ColorButton->setShowNoColor( 
true );
   158   mGridFrameFill2ColorButton->setColorDialogTitle( tr( 
"Select Grid Frame Fill Color" ) );
   159   mGridFrameFill2ColorButton->setAllowOpacity( 
true );
   160   mGridFrameFill2ColorButton->setContext( QStringLiteral( 
"composer" ) );
   161   mGridFrameFill2ColorButton->setNoColorString( tr( 
"Transparent Fill" ) );
   162   mGridFrameFill2ColorButton->setShowNoColor( 
true );
   168   toggleFrameControls( 
false, 
false, 
false );
   183   blockAllSignals( 
false );
   184   connect( mAnnotationFontButton, &
QgsFontButton::changed, 
this, &QgsLayoutMapGridWidget::annotationFontChanged );
   188   mGridLineStyleButton->registerExpressionContextGenerator( mMapGrid );
   190   mGridMarkerStyleButton->registerExpressionContextGenerator( mMapGrid );
   192   if ( mMap->layout() )
   214 void QgsLayoutMapGridWidget::setGuiElementValues()
   221   if ( !mMapGrid || !mMap )
   226   blockAllSignals( 
true );
   229   blockAllSignals( 
false );
   232 void QgsLayoutMapGridWidget::blockAllSignals( 
bool block )
   235   mEnabledCheckBox->blockSignals( block );
   236   mGridTypeComboBox->blockSignals( block );
   237   mIntervalXSpinBox->blockSignals( block );
   238   mIntervalYSpinBox->blockSignals( block );
   239   mOffsetXSpinBox->blockSignals( block );
   240   mOffsetYSpinBox->blockSignals( block );
   241   mCrossWidthSpinBox->blockSignals( block );
   242   mFrameStyleComboBox->blockSignals( block );
   243   mFrameWidthSpinBox->blockSignals( block );
   244   mGridFrameMarginSpinBox->blockSignals( block );
   245   mGridLineStyleButton->blockSignals( block );
   246   mMapGridUnitComboBox->blockSignals( block );
   247   mGridFramePenSizeSpinBox->blockSignals( block );
   248   mGridFramePenColorButton->blockSignals( block );
   249   mGridFrameFill1ColorButton->blockSignals( block );
   250   mGridFrameFill2ColorButton->blockSignals( block );
   251   mGridBlendComboBox->blockSignals( block );
   252   mCheckGridLeftSide->blockSignals( block );
   253   mCheckGridRightSide->blockSignals( block );
   254   mCheckGridTopSide->blockSignals( block );
   255   mCheckGridBottomSide->blockSignals( block );
   256   mFrameDivisionsLeftComboBox->blockSignals( block );
   257   mFrameDivisionsRightComboBox->blockSignals( block );
   258   mFrameDivisionsTopComboBox->blockSignals( block );
   259   mFrameDivisionsBottomComboBox->blockSignals( block );
   260   mGridMarkerStyleButton->blockSignals( block );
   263   mDrawAnnotationGroupBox->blockSignals( block );
   264   mAnnotationFormatComboBox->blockSignals( block );
   265   mAnnotationDisplayLeftComboBox->blockSignals( block );
   266   mAnnotationPositionLeftComboBox->blockSignals( block );
   267   mAnnotationDirectionComboBoxLeft->blockSignals( block );
   268   mAnnotationDisplayRightComboBox->blockSignals( block );
   269   mAnnotationPositionRightComboBox->blockSignals( block );
   270   mAnnotationDirectionComboBoxRight->blockSignals( block );
   271   mAnnotationDisplayTopComboBox->blockSignals( block );
   272   mAnnotationPositionTopComboBox->blockSignals( block );
   273   mAnnotationDirectionComboBoxTop->blockSignals( block );
   274   mAnnotationDisplayBottomComboBox->blockSignals( block );
   275   mAnnotationPositionBottomComboBox->blockSignals( block );
   276   mAnnotationDirectionComboBoxBottom->blockSignals( block );
   277   mDistanceToMapFrameSpinBox->blockSignals( block );
   278   mCoordinatePrecisionSpinBox->blockSignals( block );
   279   mAnnotationFontColorButton->blockSignals( block );
   280   mAnnotationFontButton->blockSignals( block );
   281   mMinWidthSpinBox->blockSignals( block );
   282   mMaxWidthSpinBox->blockSignals( block );
   287   if ( !mMapGrid || !mMap )
   292   mMap->beginCommand( tr( 
"Change Frame Divisions" ) );
   293   mMapGrid->setFrameDivisions( mode, border );
   295   mMap->updateBoundingRect();
   300   if ( !mMapGrid || !mMap )
   305   mMap->beginCommand( tr( 
"Change Annotation Format" ) );
   306   mMapGrid->setAnnotationDisplay( mode, border );
   307   mMap->updateBoundingRect();
   312 void QgsLayoutMapGridWidget::toggleFrameControls( 
bool frameEnabled, 
bool frameFillEnabled, 
bool frameSizeEnabled )
   315   mFrameWidthSpinBox->setEnabled( frameSizeEnabled );
   316   mGridFrameMarginSpinBox->setEnabled( frameEnabled );
   317   mGridFramePenSizeSpinBox->setEnabled( frameEnabled );
   318   mGridFramePenColorButton->setEnabled( frameEnabled );
   319   mGridFrameFill1ColorButton->setEnabled( frameFillEnabled );
   320   mGridFrameFill2ColorButton->setEnabled( frameFillEnabled );
   321   mFrameWidthLabel->setEnabled( frameSizeEnabled );
   322   mFrameMarginLabel->setEnabled( frameEnabled );
   323   mFramePenLabel->setEnabled( frameEnabled );
   324   mFrameFillLabel->setEnabled( frameFillEnabled );
   325   mCheckGridLeftSide->setEnabled( frameEnabled );
   326   mCheckGridRightSide->setEnabled( frameEnabled );
   327   mCheckGridTopSide->setEnabled( frameEnabled );
   328   mCheckGridBottomSide->setEnabled( frameEnabled );
   329   mFrameDivisionsLeftComboBox->setEnabled( frameEnabled );
   330   mFrameDivisionsRightComboBox->setEnabled( frameEnabled );
   331   mFrameDivisionsTopComboBox->setEnabled( frameEnabled );
   332   mFrameDivisionsBottomComboBox->setEnabled( frameEnabled );
   333   mLeftDivisionsLabel->setEnabled( frameEnabled );
   334   mRightDivisionsLabel->setEnabled( frameEnabled );
   335   mTopDivisionsLabel->setEnabled( frameEnabled );
   336   mBottomDivisionsLabel->setEnabled( frameEnabled );
   339 void QgsLayoutMapGridWidget::insertAnnotationPositionEntries( QComboBox *
c )
   345 void QgsLayoutMapGridWidget::insertAnnotationDirectionEntries( QComboBox *
c )
   358   c->setCurrentIndex( 
c->findData( display ) );
   363   if ( !mMapGrid || !mMap )
   368   mMap->beginCommand( tr( 
"Change Annotation Position" ) );
   369   mMapGrid->setAnnotationPosition( position, border );
   371   mMap->updateBoundingRect();
   378   if ( !mMapGrid || !mMap )
   383   mMap->beginCommand( tr( 
"Change Annotation Direction" ) );
   384   mMapGrid->setAnnotationDirection( direction, border );
   385   mMap->updateBoundingRect();
   390 void QgsLayoutMapGridWidget::insertFrameDisplayEntries( QComboBox *
c )
   397 void QgsLayoutMapGridWidget::insertAnnotationDisplayEntries( QComboBox *
c )
   414     c->setCurrentIndex( 
c->findText( tr( 
"Inside Frame" ) ) );
   418     c->setCurrentIndex( 
c->findText( tr( 
"Outside Frame" ) ) );
   428   c->setCurrentIndex( 
c->findData( dir ) );
   431 bool QgsLayoutMapGridWidget::hasPredefinedScales()
 const   436   if ( !hasProjectScales || scales.isEmpty() )
   441     QStringList myScalesList = scalesStr.split( 
',' );
   442     return !myScalesList.isEmpty() && !myScalesList[0].isEmpty();
   447 void QgsLayoutMapGridWidget::setGridItems()
   454   mGridMarkerStyleButton->registerExpressionContextGenerator( mMapGrid );
   455   mGridLineStyleButton->registerExpressionContextGenerator( mMapGrid );
   457   mEnabledCheckBox->setChecked( mMapGrid->enabled() );
   458   mIntervalXSpinBox->setValue( mMapGrid->intervalX() );
   459   mIntervalYSpinBox->setValue( mMapGrid->intervalY() );
   460   mOffsetXSpinBox->setValue( mMapGrid->offsetX() );
   461   mOffsetYSpinBox->setValue( mMapGrid->offsetY() );
   462   mCrossWidthSpinBox->setValue( mMapGrid->crossLength() );
   463   mFrameWidthSpinBox->setValue( mMapGrid->frameWidth() );
   464   mGridFrameMarginSpinBox->setValue( mMapGrid->frameMargin() );
   465   mGridFramePenSizeSpinBox->setValue( mMapGrid->framePenSize() );
   466   mGridFramePenColorButton->setColor( mMapGrid->framePenColor() );
   467   mGridFrameFill1ColorButton->setColor( mMapGrid->frameFillColor1() );
   468   mGridFrameFill2ColorButton->setColor( mMapGrid->frameFillColor2() );
   471   mGridTypeComboBox->setCurrentIndex( mGridTypeComboBox->findData( gridStyle ) );
   475       mCrossWidthSpinBox->setVisible( 
true );
   476       mCrossWidthDDBtn->setVisible( 
true );
   477       mCrossWidthLabel->setVisible( 
true );
   478       mGridLineStyleButton->setVisible( 
true );
   479       mLineStyleLabel->setVisible( 
true );
   480       mGridMarkerStyleButton->setVisible( 
false );
   481       mMarkerStyleLabel->setVisible( 
false );
   482       mGridBlendComboBox->setVisible( 
true );
   483       mGridBlendLabel->setVisible( 
true );
   486       mCrossWidthSpinBox->setVisible( 
false );
   487       mCrossWidthDDBtn->setVisible( 
false );
   488       mCrossWidthLabel->setVisible( 
false );
   489       mGridLineStyleButton->setVisible( 
false );
   490       mLineStyleLabel->setVisible( 
false );
   491       mGridMarkerStyleButton->setVisible( 
true );
   492       mMarkerStyleLabel->setVisible( 
true );
   493       mGridBlendComboBox->setVisible( 
true );
   494       mGridBlendLabel->setVisible( 
true );
   497       mCrossWidthSpinBox->setVisible( 
false );
   498       mCrossWidthDDBtn->setVisible( 
false );
   499       mCrossWidthLabel->setVisible( 
false );
   500       mGridLineStyleButton->setVisible( 
true );
   501       mLineStyleLabel->setVisible( 
true );
   502       mGridMarkerStyleButton->setVisible( 
false );
   503       mMarkerStyleLabel->setVisible( 
false );
   504       mGridBlendComboBox->setVisible( 
true );
   505       mGridBlendLabel->setVisible( 
true );
   508       mCrossWidthSpinBox->setVisible( 
false );
   509       mCrossWidthDDBtn->setVisible( 
false );
   510       mCrossWidthLabel->setVisible( 
false );
   511       mGridLineStyleButton->setVisible( 
false );
   512       mLineStyleLabel->setVisible( 
false );
   513       mGridMarkerStyleButton->setVisible( 
false );
   514       mMarkerStyleLabel->setVisible( 
false );
   515       mGridBlendComboBox->setVisible( 
false );
   516       mGridBlendLabel->setVisible( 
false );
   521   mFrameWidthSpinBox->setValue( mMapGrid->frameWidth() );
   522   mGridFrameMarginSpinBox->setValue( mMapGrid->frameMargin() );
   524   mFrameStyleComboBox->setCurrentIndex( mFrameStyleComboBox->findData( gridFrameStyle ) );
   525   switch ( gridFrameStyle )
   529       toggleFrameControls( 
true, 
true, 
true );
   534       toggleFrameControls( 
true, 
false, 
true );
   538       toggleFrameControls( 
true, 
false, 
false );
   541       toggleFrameControls( 
false, 
false, 
false );
   556   mGridLineStyleButton->setSymbol( mMapGrid->lineSymbol()->clone() );
   558   mGridMarkerStyleButton->setSymbol( mMapGrid->markerSymbol()->clone() );
   560   mGridBlendComboBox->setBlendMode( mMapGrid->blendMode() );
   562   mDrawAnnotationGroupBox->setChecked( mMapGrid->annotationEnabled() );
   563   mAnnotationDisplayLeftComboBox->setCurrentIndex( mAnnotationDisplayLeftComboBox->findData( mMapGrid->annotationDisplay( 
QgsLayoutItemMapGrid::Left ) ) );
   564   mAnnotationDisplayRightComboBox->setCurrentIndex( mAnnotationDisplayRightComboBox->findData( mMapGrid->annotationDisplay( 
QgsLayoutItemMapGrid::Right ) ) );
   565   mAnnotationDisplayTopComboBox->setCurrentIndex( mAnnotationDisplayTopComboBox->findData( mMapGrid->annotationDisplay( 
QgsLayoutItemMapGrid::Top ) ) );
   566   mAnnotationDisplayBottomComboBox->setCurrentIndex( mAnnotationDisplayBottomComboBox->findData( mMapGrid->annotationDisplay( 
QgsLayoutItemMapGrid::Bottom ) ) );
   568   mAnnotationPositionLeftComboBox->setCurrentIndex( mAnnotationPositionLeftComboBox->findData( mMapGrid->annotationPosition( 
QgsLayoutItemMapGrid::Left ) ) );
   569   mAnnotationPositionRightComboBox->setCurrentIndex( mAnnotationPositionRightComboBox->findData( mMapGrid->annotationPosition( 
QgsLayoutItemMapGrid::Right ) ) );
   570   mAnnotationPositionTopComboBox->setCurrentIndex( mAnnotationPositionTopComboBox->findData( mMapGrid->annotationPosition( 
QgsLayoutItemMapGrid::Top ) ) );
   571   mAnnotationPositionBottomComboBox->setCurrentIndex( mAnnotationPositionBottomComboBox->findData( mMapGrid->annotationPosition( 
QgsLayoutItemMapGrid::Bottom ) ) );
   575   initAnnotationDirectionBox( mAnnotationDirectionComboBoxTop, mMapGrid->annotationDirection( 
QgsLayoutItemMapGrid::Top ) );
   578   mAnnotationFontColorButton->setColor( mMapGrid->annotationFontColor() );
   579   mAnnotationFontButton->setCurrentFont( mMapGrid->annotationFont() );
   581   mAnnotationFormatComboBox->setCurrentIndex( mAnnotationFormatComboBox->findData( mMapGrid->annotationFormat() ) );
   583   mDistanceToMapFrameSpinBox->setValue( mMapGrid->annotationFrameDistance() );
   584   mCoordinatePrecisionSpinBox->setValue( mMapGrid->annotationPrecision() );
   587   mMapGridUnitComboBox->setCurrentIndex( mMapGridUnitComboBox->findData( mMapGrid->units() ) );
   588   switch ( mMapGrid->units() )
   593       mIntervalStackedWidget->setCurrentIndex( 0 );
   597       mIntervalStackedWidget->setCurrentIndex( 1 );
   600   mMinWidthSpinBox->setValue( mMapGrid->minimumIntervalWidth() );
   601   mMaxWidthSpinBox->setValue( mMapGrid->maximumIntervalWidth() );
   605   QString crsButtonText = gridCrs.
isValid() ? gridCrs.
authid() : tr( 
"Change…" );
   606   mMapGridCRSButton->setText( crsButtonText );
   609 void QgsLayoutMapGridWidget::mIntervalXSpinBox_editingFinished()
   611   if ( !mMapGrid || !mMap )
   616   mMap->beginCommand( tr( 
"Change Grid Interval" ) );
   617   mMapGrid->setIntervalX( mIntervalXSpinBox->value() );
   618   mMap->updateBoundingRect();
   623 void QgsLayoutMapGridWidget::mIntervalYSpinBox_editingFinished()
   625   if ( !mMapGrid || !mMap )
   630   mMap->beginCommand( tr( 
"Change Grid Interval" ) );
   631   mMapGrid->setIntervalY( mIntervalYSpinBox->value() );
   632   mMap->updateBoundingRect();
   637 void QgsLayoutMapGridWidget::mOffsetXSpinBox_valueChanged( 
double value )
   639   if ( !mMapGrid || !mMap )
   644   mMap->beginCommand( tr( 
"Change Grid Offset" ) );
   645   mMapGrid->setOffsetX( value );
   646   mMap->updateBoundingRect();
   651 void QgsLayoutMapGridWidget::mOffsetYSpinBox_valueChanged( 
double value )
   653   if ( !mMapGrid || !mMap )
   658   mMap->beginCommand( tr( 
"Change Grid Offset" ) );
   659   mMapGrid->setOffsetY( value );
   660   mMap->updateBoundingRect();
   665 void QgsLayoutMapGridWidget::mCrossWidthSpinBox_valueChanged( 
double val )
   667   if ( !mMapGrid || !mMap )
   672   mMap->beginCommand( tr( 
"Change Cross Width" ) );
   673   mMapGrid->setCrossLength( val );
   678 void QgsLayoutMapGridWidget::mFrameWidthSpinBox_valueChanged( 
double val )
   680   if ( !mMapGrid || !mMap )
   685   mMap->beginCommand( tr( 
"Change Frame Width" ) );
   686   mMapGrid->setFrameWidth( val );
   687   mMap->updateBoundingRect();
   692 void QgsLayoutMapGridWidget::mGridFrameMarginSpinBox_valueChanged( 
double val )
   694   if ( !mMapGrid || !mMap )
   699   mMap->beginCommand( tr( 
"Change Grid Frame Margin" ) );
   700   mMapGrid->setFrameMargin( val );
   701   mMap->updateBoundingRect();
   706 void QgsLayoutMapGridWidget::mCheckGridLeftSide_toggled( 
bool checked )
   708   if ( !mMapGrid || !mMap )
   713   mMap->beginCommand( tr( 
"Change Frame Left" ) );
   715   mMap->updateBoundingRect();
   720 void QgsLayoutMapGridWidget::mCheckGridRightSide_toggled( 
bool checked )
   722   if ( !mMapGrid || !mMap )
   727   mMap->beginCommand( tr( 
"Change Frame Right" ) );
   729   mMap->updateBoundingRect();
   734 void QgsLayoutMapGridWidget::mCheckGridTopSide_toggled( 
bool checked )
   736   if ( !mMapGrid || !mMap )
   741   mMap->beginCommand( tr( 
"Change Frame Top" ) );
   743   mMap->updateBoundingRect();
   748 void QgsLayoutMapGridWidget::mCheckGridBottomSide_toggled( 
bool checked )
   750   if ( !mMapGrid || !mMap )
   755   mMap->beginCommand( tr( 
"Change Frame Bottom" ) );
   757   mMap->updateBoundingRect();
   762 void QgsLayoutMapGridWidget::mFrameDivisionsLeftComboBox_currentIndexChanged( 
int index )
   764   handleChangedFrameDisplay( 
QgsLayoutItemMapGrid::Left, static_cast< QgsLayoutItemMapGrid::DisplayMode >( mFrameDivisionsLeftComboBox->itemData( index ).toInt() ) );
   767 void QgsLayoutMapGridWidget::mFrameDivisionsRightComboBox_currentIndexChanged( 
int index )
   769   handleChangedFrameDisplay( 
QgsLayoutItemMapGrid::Right, static_cast< QgsLayoutItemMapGrid::DisplayMode >( mFrameDivisionsRightComboBox->itemData( index ).toInt() ) );
   772 void QgsLayoutMapGridWidget::mFrameDivisionsTopComboBox_currentIndexChanged( 
int index )
   774   handleChangedFrameDisplay( 
QgsLayoutItemMapGrid::Top, static_cast< QgsLayoutItemMapGrid::DisplayMode >( mFrameDivisionsTopComboBox->itemData( index ).toInt() ) );
   777 void QgsLayoutMapGridWidget::mFrameDivisionsBottomComboBox_currentIndexChanged( 
int index )
   779   handleChangedFrameDisplay( 
QgsLayoutItemMapGrid::Bottom, static_cast< QgsLayoutItemMapGrid::DisplayMode >( mFrameDivisionsBottomComboBox->itemData( index ).toInt() ) );
   782 void QgsLayoutMapGridWidget::mGridFramePenSizeSpinBox_valueChanged( 
double d )
   784   if ( !mMapGrid || !mMap )
   789   mMap->beginCommand( tr( 
"Change Frame Thickness" ) );
   790   mMapGrid->setFramePenSize( d );
   791   mMap->updateBoundingRect();
   796 void QgsLayoutMapGridWidget::mGridFramePenColorButton_colorChanged( 
const QColor &newColor )
   798   if ( !mMapGrid || !mMap )
   804   mMapGrid->setFramePenColor( newColor );
   809 void QgsLayoutMapGridWidget::mGridFrameFill1ColorButton_colorChanged( 
const QColor &newColor )
   811   if ( !mMapGrid || !mMap )
   817   mMapGrid->setFrameFillColor1( newColor );
   822 void QgsLayoutMapGridWidget::mGridFrameFill2ColorButton_colorChanged( 
const QColor &newColor )
   824   if ( !mMapGrid || !mMap )
   830   mMapGrid->setFrameFillColor2( newColor );
   835 void QgsLayoutMapGridWidget::mFrameStyleComboBox_currentIndexChanged( 
int )
   837   if ( !mMapGrid || !mMap )
   843   mMap->beginCommand( tr( 
"Change Frame Style" ) );
   844   mMapGrid->setFrameStyle( style );
   849       toggleFrameControls( 
true, 
true, 
true );
   854       toggleFrameControls( 
true, 
false, 
true );
   858       toggleFrameControls( 
true, 
false, 
false );
   861       toggleFrameControls( 
false, 
false, 
false );
   864   mMap->updateBoundingRect();
   869 void QgsLayoutMapGridWidget::intervalUnitChanged( 
int )
   871   if ( !mMapGrid || !mMap )
   882       mIntervalStackedWidget->setCurrentIndex( 0 );
   886       mIntervalStackedWidget->setCurrentIndex( 1 );
   890   mMap->beginCommand( tr( 
"Change Grid Unit" ) );
   891   mMapGrid->setUnits( unit );
   892   mMap->updateBoundingRect();
   897 void QgsLayoutMapGridWidget::minIntervalChanged( 
double interval )
   900   mMapGrid->setMinimumIntervalWidth( interval );
   902   mMap->updateBoundingRect();
   906 void QgsLayoutMapGridWidget::maxIntervalChanged( 
double interval )
   909   mMapGrid->setMaximumIntervalWidth( interval );
   911   mMap->updateBoundingRect();
   915 void QgsLayoutMapGridWidget::mGridBlendComboBox_currentIndexChanged( 
int index )
   920     mMap->beginCommand( tr( 
"Change Grid Blend Mode" ) );
   921     mMapGrid->setBlendMode( mGridBlendComboBox->blendMode() );
   928 void QgsLayoutMapGridWidget::mGridTypeComboBox_currentIndexChanged( 
int )
   930   if ( !mMapGrid || !mMap )
   935   mMap->beginCommand( tr( 
"Change Grid Type" ) );
   936   switch ( static_cast< QgsLayoutItemMapGrid::GridStyle >( mGridTypeComboBox->currentData().toInt() ) )
   940       mCrossWidthSpinBox->setVisible( 
true );
   941       mCrossWidthDDBtn->setVisible( 
true );
   942       mCrossWidthLabel->setVisible( 
true );
   943       mGridLineStyleButton->setVisible( 
true );
   944       mLineStyleLabel->setVisible( 
true );
   945       mGridMarkerStyleButton->setVisible( 
false );
   946       mMarkerStyleLabel->setVisible( 
false );
   947       mGridBlendComboBox->setVisible( 
true );
   948       mGridBlendLabel->setVisible( 
true );
   953       mCrossWidthSpinBox->setVisible( 
false );
   954       mCrossWidthDDBtn->setVisible( 
false );
   955       mCrossWidthLabel->setVisible( 
false );
   956       mGridLineStyleButton->setVisible( 
false );
   957       mLineStyleLabel->setVisible( 
false );
   958       mGridMarkerStyleButton->setVisible( 
true );
   959       mMarkerStyleLabel->setVisible( 
true );
   960       mGridBlendComboBox->setVisible( 
true );
   961       mGridBlendLabel->setVisible( 
true );
   966       mCrossWidthSpinBox->setVisible( 
false );
   967       mCrossWidthDDBtn->setVisible( 
false );
   968       mCrossWidthLabel->setVisible( 
false );
   969       mGridLineStyleButton->setVisible( 
true );
   970       mLineStyleLabel->setVisible( 
true );
   971       mGridMarkerStyleButton->setVisible( 
false );
   972       mMarkerStyleLabel->setVisible( 
false );
   973       mGridBlendComboBox->setVisible( 
true );
   974       mGridBlendLabel->setVisible( 
true );
   979       mCrossWidthSpinBox->setVisible( 
false );
   980       mCrossWidthDDBtn->setVisible( 
false );
   981       mCrossWidthLabel->setVisible( 
false );
   982       mGridLineStyleButton->setVisible( 
false );
   983       mLineStyleLabel->setVisible( 
false );
   984       mGridMarkerStyleButton->setVisible( 
false );
   985       mMarkerStyleLabel->setVisible( 
false );
   986       mGridBlendComboBox->setVisible( 
false );
   987       mGridBlendLabel->setVisible( 
false );
   991   mMap->updateBoundingRect();
   996 void QgsLayoutMapGridWidget::mMapGridCRSButton_clicked()
   998   if ( !mMapGrid || !mMap )
  1007   if ( crsDialog.exec() == QDialog::Accepted )
  1009     mMap->beginCommand( tr( 
"Change Grid CRS" ) );
  1010     mMapGrid->setCrs( crsDialog.
crs() );
  1011     mMap->updateBoundingRect();
  1012     mMapGridCRSButton->setText( crsDialog.
crs().
authid() );
  1017 void QgsLayoutMapGridWidget::mDrawAnnotationGroupBox_toggled( 
bool state )
  1019   if ( !mMapGrid || !mMap )
  1024   mMap->beginCommand( tr( 
"Toggle Annotations" ) );
  1025   mMapGrid->setAnnotationEnabled( state );
  1026   mMap->updateBoundingRect();
  1031 void QgsLayoutMapGridWidget::mAnnotationFormatButton_clicked()
  1033   if ( !mMapGrid || !mMap )
  1039   expressionContext.
setHighlightedFunctions( QStringList() << QStringLiteral( 
"to_dms" ) << QStringLiteral( 
"to_dm" ) );
  1041   QgsExpressionBuilderDialog exprDlg( 
nullptr, mMapGrid->annotationExpression(), 
this, QStringLiteral( 
"generic" ), expressionContext );
  1042   exprDlg.setWindowTitle( tr( 
"Expression Based Annotation" ) );
  1044   if ( exprDlg.exec() == QDialog::Accepted )
  1047     mMap->beginCommand( tr( 
"Change Annotation Format" ) );
  1048     mMapGrid->setAnnotationExpression( expression );
  1049     mMap->updateBoundingRect();
  1055 void QgsLayoutMapGridWidget::mAnnotationDisplayLeftComboBox_currentIndexChanged( 
int )
  1057   handleChangedAnnotationDisplay( 
QgsLayoutItemMapGrid::Left, static_cast< QgsLayoutItemMapGrid::DisplayMode >( mAnnotationDisplayLeftComboBox->currentData().toInt() ) );
  1060 void QgsLayoutMapGridWidget::mAnnotationDisplayRightComboBox_currentIndexChanged( 
int )
  1062   handleChangedAnnotationDisplay( 
QgsLayoutItemMapGrid::Right, static_cast< QgsLayoutItemMapGrid::DisplayMode >( mAnnotationDisplayRightComboBox->currentData().toInt() ) );
  1065 void QgsLayoutMapGridWidget::mAnnotationDisplayTopComboBox_currentIndexChanged( 
int )
  1067   handleChangedAnnotationDisplay( 
QgsLayoutItemMapGrid::Top, static_cast< QgsLayoutItemMapGrid::DisplayMode >( mAnnotationDisplayTopComboBox->currentData().toInt() ) );
  1070 void QgsLayoutMapGridWidget::mAnnotationDisplayBottomComboBox_currentIndexChanged( 
int )
  1072   handleChangedAnnotationDisplay( 
QgsLayoutItemMapGrid::Bottom, static_cast< QgsLayoutItemMapGrid::DisplayMode >( mAnnotationDisplayBottomComboBox->currentData().toInt() ) );
  1075 void QgsLayoutMapGridWidget::mAnnotationPositionLeftComboBox_currentIndexChanged( 
int )
  1077   handleChangedAnnotationPosition( 
QgsLayoutItemMapGrid::Left, static_cast< QgsLayoutItemMapGrid::AnnotationPosition >( mAnnotationPositionLeftComboBox->currentData().toInt() ) );
  1080 void QgsLayoutMapGridWidget::mAnnotationPositionRightComboBox_currentIndexChanged( 
int )
  1082   handleChangedAnnotationPosition( 
QgsLayoutItemMapGrid::Right, static_cast< QgsLayoutItemMapGrid::AnnotationPosition >( mAnnotationPositionRightComboBox->currentData().toInt() ) );
  1085 void QgsLayoutMapGridWidget::mAnnotationPositionTopComboBox_currentIndexChanged( 
int )
  1087   handleChangedAnnotationPosition( 
QgsLayoutItemMapGrid::Top, static_cast< QgsLayoutItemMapGrid::AnnotationPosition >( mAnnotationPositionTopComboBox->currentData().toInt() ) );
  1090 void QgsLayoutMapGridWidget::mAnnotationPositionBottomComboBox_currentIndexChanged( 
int )
  1092   handleChangedAnnotationPosition( 
QgsLayoutItemMapGrid::Bottom, static_cast< QgsLayoutItemMapGrid::AnnotationPosition >( mAnnotationPositionBottomComboBox->currentData().toInt() ) );
  1095 void QgsLayoutMapGridWidget::mAnnotationDirectionComboBoxLeft_currentIndexChanged( 
int index )
  1097   handleChangedAnnotationDirection( 
QgsLayoutItemMapGrid::Left, static_cast< QgsLayoutItemMapGrid::AnnotationDirection >( mAnnotationDirectionComboBoxLeft->itemData( index ).toInt() ) );
  1100 void QgsLayoutMapGridWidget::mAnnotationDirectionComboBoxRight_currentIndexChanged( 
int index )
  1102   handleChangedAnnotationDirection( 
QgsLayoutItemMapGrid::Right, static_cast< QgsLayoutItemMapGrid::AnnotationDirection >( mAnnotationDirectionComboBoxRight->itemData( index ).toInt() ) );
  1105 void QgsLayoutMapGridWidget::mAnnotationDirectionComboBoxTop_currentIndexChanged( 
int index )
  1107   handleChangedAnnotationDirection( 
QgsLayoutItemMapGrid::Top, static_cast< QgsLayoutItemMapGrid::AnnotationDirection >( mAnnotationDirectionComboBoxTop->itemData( index ).toInt() ) );
  1110 void QgsLayoutMapGridWidget::mAnnotationDirectionComboBoxBottom_currentIndexChanged( 
int index )
  1112   handleChangedAnnotationDirection( 
QgsLayoutItemMapGrid::Bottom, static_cast< QgsLayoutItemMapGrid::AnnotationDirection >( mAnnotationDirectionComboBoxBottom->itemData( index ).toInt() ) );
  1115 void QgsLayoutMapGridWidget::mDistanceToMapFrameSpinBox_valueChanged( 
double d )
  1117   if ( !mMapGrid || !mMap )
  1123   mMapGrid->setAnnotationFrameDistance( d );
  1124   mMap->updateBoundingRect();
  1129 void QgsLayoutMapGridWidget::annotationFontChanged()
  1131   if ( !mMapGrid || !mMap )
  1136   mMap->beginCommand( tr( 
"Change Annotation Font" ) );
  1137   mMapGrid->setAnnotationFont( mAnnotationFontButton->currentFont() );
  1138   mMap->updateBoundingRect();
  1143 void QgsLayoutMapGridWidget::lineSymbolChanged()
  1145   if ( !mMapGrid || !mMap )
  1151   mMapGrid->setLineSymbol( mGridLineStyleButton->clonedSymbol<
QgsLineSymbol>() );
  1156 void QgsLayoutMapGridWidget::markerSymbolChanged()
  1158   if ( !mMapGrid || !mMap )
  1164   mMapGrid->setMarkerSymbol( mGridMarkerStyleButton->clonedSymbol<
QgsMarkerSymbol>() );
  1169 void QgsLayoutMapGridWidget::gridEnabledToggled( 
bool active )
  1171   if ( !mMapGrid || !mMap )
  1176   mMap->beginCommand( tr( 
"Toggle Grid Display" ) );
  1177   mMapGrid->setEnabled( active );
  1179   mMap->updateBoundingRect();
  1183 void QgsLayoutMapGridWidget::mAnnotationFontColorButton_colorChanged( 
const QColor &color )
  1185   if ( !mMapGrid || !mMap )
  1191   mMapGrid->setAnnotationFontColor( color );
  1196 void QgsLayoutMapGridWidget::mAnnotationFormatComboBox_currentIndexChanged( 
int index )
  1198   if ( !mMapGrid || !mMap )
  1203   mMap->beginCommand( tr( 
"Change Annotation Format" ) );
  1205   mMapGrid->setAnnotationFormat( static_cast< QgsLayoutItemMapGrid::AnnotationFormat >( mAnnotationFormatComboBox->itemData( index ).toInt() ) );
  1208   mMap->updateBoundingRect();
  1213 void QgsLayoutMapGridWidget::mCoordinatePrecisionSpinBox_valueChanged( 
int value )
  1215   if ( !mMapGrid || !mMap )
  1219   mMap->beginCommand( tr( 
"Change Annotation Precision" ) );
  1220   mMapGrid->setAnnotationPrecision( value );
  1221   mMap->updateBoundingRect();
 
Map grid frame pen color. 
 
Degree/minutes/seconds, use NSEW suffix. 
 
Draw annotations inside the map frame. 
 
This class is a composition of two QSettings instances: 
 
QVariant value(const QString &key, const QVariant &defaultValue=QVariant(), Section section=NoSection) const
Returns the value for setting key. 
 
Draw annotations vertically, ascending. 
 
FrameStyle
Style for grid frame. 
 
DisplayMode
Display settings for grid annotations and frames. 
 
Grid units in millimeters. 
 
Degree/minutes, use - for S/W coordinates. 
 
const QgsCoordinateReferenceSystem & crs
 
Degree/minutes, use NSEW suffix. 
 
A marker symbol type, for rendering Point and MultiPoint geometries. 
 
QgsCoordinateReferenceSystem crs() const
Returns the CRS currently selected in the widget. 
 
A line symbol type, for rendering LineString and MultiLineString geometries. 
 
void setHighlightedFunctions(const QStringList &names)
Sets the list of function names intended to be highlighted to the user. 
 
A generic dialog to prompt the user for a Coordinate Reference System. 
 
As part of the API refactoring and improvements which landed in the Processing API was substantially reworked from the x version This was done in order to allow much of the underlying Processing framework to be ported into c
 
Map grid frame line thickness. 
 
Draw line crosses at intersections of grid lines. 
 
Custom expression-based format. 
 
Tick markers drawn inside map frame. 
 
Layout graphical items for displaying a map. 
 
Map grid frame fill color 1. 
 
Draw annotations horizontally. 
 
Grid units in centimeters. 
 
Decimal degrees, use - for S/W coordinates. 
 
QVector< double > mapScales() const
Returns the list of custom project map scales. 
 
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
 
Decimal degrees, use NSEW suffix. 
 
Map grid frame fill color 2. 
 
Show latitude/y annotations/divisions only. 
 
void layerChanged(QgsVectorLayer *layer)
Emitted when the context's layer is changed. 
 
Dynamically sized, based on a on-page size range. 
 
const QgsProjectViewSettings * viewSettings() const
Returns the project's view settings, which contains settings and properties relating to how a QgsProj...
 
void setCrs(const QgsCoordinateReferenceSystem &crs)
Sets the initial crs to show within the dialog. 
 
An individual grid which is drawn above the map content in a QgsLayoutItemMap. 
 
AnnotationDirection
Direction of grid annotations. 
 
static QString defaultProjectScales()
A string with default project scales. 
 
GridUnit
Unit for grid values. 
 
Show both latitude and longitude annotations/divisions. 
 
Map frame annotation color. 
 
AnnotationPosition
Position for grid annotations. 
 
BorderSide
Border sides for annotations. 
 
Degree/minutes/seconds, with minutes using leading zeros where required. 
 
Map frame annotation distance. 
 
Draw annotations vertically, descending. 
 
Show longitude/x annotations/divisions only. 
 
Draw markers at intersections of grid lines. 
 
Black/white pattern, with nautical style diagonals on corners. 
 
static QgsProject * instance()
Returns the QgsProject singleton instance. 
 
Degree/minutes, with minutes using leading zeros where required. 
 
This class represents a coordinate reference system (CRS). 
 
No grid lines over the map, only draw frame and annotations. 
 
GridStyle
Grid drawing style. 
 
Simple solid line frame, with nautical style diagonals on corners. 
 
Tick markers drawn both inside and outside the map frame. 
 
Draw annotations outside the map frame. 
 
A generic dialog for building expression strings. 
 
Grid units follow map units. 
 
QString authid() const
Returns the authority identifier for the CRS. 
 
Degree/minutes/seconds, use - for S/W coordinates. 
 
bool isValid() const
Returns whether this CRS is correctly initialized and usable. 
 
Tick markers drawn outside map frame.