2525QgsComposerMapWidget::QgsComposerMapWidget ( QgsComposerMap* composerMap ): QWidget(), mComposerMap( composerMap )
2626{
2727 setupUi ( this );
28- mGridDockWidget ->setVisible ( false );
28+ mGridWidget ->setVisible ( false );
29+ mGridWidget ->setParent ( 0 ); // in order to save space, separate the grid widget
30+ mGridWidget ->setWindowFlags ( Qt::CustomizeWindowHint | Qt::WindowTitleHint );
2931
3032 // add widget for general composer item properties
3133 QgsComposerItemWidget* itemPropertiesWidget = new QgsComposerItemWidget ( this , composerMap );
32- gridLayout_3->addWidget ( itemPropertiesWidget, 7 , 0 , 1 , 1 );
34+ gridLayout_3->addWidget ( itemPropertiesWidget, 6 , 0 , 1 , 1 );
3335 QDoubleValidator v ( 0 );
3436
3537 mWidthLineEdit ->setValidator ( &v );
@@ -55,9 +57,8 @@ QgsComposerMapWidget::QgsComposerMapWidget( QgsComposerMap* composerMap ): QWidg
5557 mAnnotationDirectionComboBox ->insertItem ( 0 , tr ( " Horizontal" ) );
5658 mAnnotationDirectionComboBox ->insertItem ( 1 , tr ( " Vertical" ) );
5759 mAnnotationDirectionComboBox ->insertItem ( 2 , tr ( " Horizontal and Vertical" ) );
60+ mAnnotationDirectionComboBox ->insertItem ( 2 , tr ( " Boundary direction" ) );
5861
59- mAnnotationTypeComboBox ->insertItem ( 0 , tr ( " Coordinate" ) );
60- mAnnotationTypeComboBox ->insertItem ( 1 , tr ( " Sector" ) );
6162 blockAllSignals ( false );
6263
6364 if ( composerMap )
@@ -70,7 +71,7 @@ QgsComposerMapWidget::QgsComposerMapWidget( QgsComposerMap* composerMap ): QWidg
7071
7172QgsComposerMapWidget::~QgsComposerMapWidget ()
7273{
73-
74+ delete mGridWidget ;
7475}
7576
7677void QgsComposerMapWidget::on_mWidthLineEdit_editingFinished ()
@@ -160,6 +161,18 @@ void QgsComposerMapWidget::on_mScaleLineEdit_editingFinished()
160161 mComposerMap ->setNewScale ( scaleDenominator );
161162}
162163
164+ void QgsComposerMapWidget::on_mRotationSpinBox_valueChanged ( int value )
165+ {
166+ if ( !mComposerMap )
167+ {
168+ return ;
169+ }
170+
171+ mComposerMap ->setRotation ( value );
172+ mComposerMap ->cache ();
173+ mComposerMap ->update ();
174+ }
175+
163176void QgsComposerMapWidget::on_mSetToMapCanvasExtentButton_clicked ()
164177{
165178 if ( mComposerMap )
@@ -274,6 +287,8 @@ void QgsComposerMapWidget::updateGuiElements()
274287 mYMinLineEdit ->setText ( QString::number ( composerMapExtent.yMinimum (), ' f' , 3 ) );
275288 mYMaxLineEdit ->setText ( QString::number ( composerMapExtent.yMaximum (), ' f' , 3 ) );
276289
290+ mRotationSpinBox ->setValue ( mComposerMap ->rotation () );
291+
277292 // keep layer list check box
278293 if ( mComposerMap ->keepLayerSet () )
279294 {
@@ -309,6 +324,8 @@ void QgsComposerMapWidget::updateGuiElements()
309324 mGridTypeComboBox ->setCurrentIndex ( mGridTypeComboBox ->findText ( tr ( " Solid" ) ) );
310325 }
311326
327+ mCrossWidthSpinBox ->setValue ( mComposerMap ->crossLength () );
328+
312329 QgsComposerMap::GridAnnotationPosition annotationPos = mComposerMap ->gridAnnotationPosition ();
313330 if ( annotationPos == QgsComposerMap::InsideMapFrame )
314331 {
@@ -339,19 +356,13 @@ void QgsComposerMapWidget::updateGuiElements()
339356 {
340357 mAnnotationDirectionComboBox ->setCurrentIndex ( mAnnotationDirectionComboBox ->findText ( tr ( " Vertical" ) ) );
341358 }
342- else
359+ else if ( dir == QgsComposerMap::HorizontalAndVertical )
343360 {
344361 mAnnotationDirectionComboBox ->setCurrentIndex ( mAnnotationDirectionComboBox ->findText ( tr ( " Horizontal and Vertical" ) ) );
345362 }
346-
347- QgsComposerMap::GridAnnotationType type = mComposerMap ->gridAnnotationType ();
348- if ( type == QgsComposerMap::Sector )
349- {
350- mAnnotationTypeComboBox ->setCurrentIndex ( mAnnotationTypeComboBox ->findText ( tr ( " Sector" ) ) );
351- }
352- else
363+ else // BoundaryDirection
353364 {
354- mAnnotationTypeComboBox ->setCurrentIndex ( mAnnotationTypeComboBox ->findText ( tr ( " Coordinate " ) ) );
365+ mAnnotationDirectionComboBox ->setCurrentIndex ( mAnnotationDirectionComboBox ->findText ( tr ( " Boundary direction " ) ) );
355366 }
356367
357368
@@ -400,6 +411,7 @@ void QgsComposerMapWidget::blockAllSignals( bool b )
400411 mOffsetXSpinBox ->blockSignals ( b );
401412 mOffsetYSpinBox ->blockSignals ( b );
402413 mGridTypeComboBox ->blockSignals ( b );
414+ mCrossWidthSpinBox ->blockSignals ( b );
403415 mPreviewModeComboBox ->blockSignals ( b );
404416 mKeepLayerListCheckBox ->blockSignals ( b );
405417 mSetToMapCanvasExtentButton ->blockSignals ( b );
@@ -411,7 +423,6 @@ void QgsComposerMapWidget::blockAllSignals( bool b )
411423 mAnnotationPositionComboBox ->blockSignals ( b );
412424 mDistanceToMapFrameSpinBox ->blockSignals ( b );
413425 mAnnotationDirectionComboBox ->blockSignals ( b );
414- mAnnotationTypeComboBox ->blockSignals ( b );
415426}
416427
417428void QgsComposerMapWidget::on_mUpdatePreviewButton_clicked ()
@@ -561,6 +572,17 @@ void QgsComposerMapWidget::on_mGridTypeComboBox_currentIndexChanged( const QStri
561572 mComposerMap ->update ();
562573}
563574
575+ void QgsComposerMapWidget::on_mCrossWidthSpinBox_valueChanged ( double d )
576+ {
577+ if ( !mComposerMap )
578+ {
579+ return ;
580+ }
581+
582+ mComposerMap ->setCrossLength ( d );
583+ mComposerMap ->update ();
584+ }
585+
564586void QgsComposerMapWidget::on_mAnnotationFontButton_clicked ()
565587{
566588 if ( !mComposerMap )
@@ -647,40 +669,26 @@ void QgsComposerMapWidget::on_mAnnotationDirectionComboBox_currentIndexChanged(
647669 {
648670 mComposerMap ->setGridAnnotationDirection ( QgsComposerMap::Vertical );
649671 }
650- else
672+ else if ( text == tr ( " Horizontal and Vertical " ) )
651673 {
652674 mComposerMap ->setGridAnnotationDirection ( QgsComposerMap::HorizontalAndVertical );
653675 }
654- mComposerMap ->updateBoundingRect ();
655- mComposerMap ->update ();
656- }
657-
658- void QgsComposerMapWidget::on_mAnnotationTypeComboBox_currentIndexChanged ( const QString& text )
659- {
660- if ( !mComposerMap )
661- {
662- return ;
663- }
664-
665- if ( text == tr ( " Sector" ) )
676+ else // BoundaryDirection
666677 {
667- mComposerMap ->setGridAnnotationType ( QgsComposerMap::Sector );
668- }
669- else
670- {
671- mComposerMap ->setGridAnnotationType ( QgsComposerMap::Coordinate );
678+ mComposerMap ->setGridAnnotationDirection ( QgsComposerMap::BoundaryDirection );
672679 }
680+ mComposerMap ->updateBoundingRect ();
673681 mComposerMap ->update ();
674682}
675683
676684void QgsComposerMapWidget::on_mShowGridDialogCheckBox_stateChanged ( int state )
677685{
678686 if ( state == Qt::Checked )
679687 {
680- mGridDockWidget ->setVisible ( true );
688+ mGridWidget ->setVisible ( true );
681689 }
682690 else
683691 {
684- mGridDockWidget ->setVisible ( false );
692+ mGridWidget ->setVisible ( false );
685693 }
686694}
0 commit comments