[QGIS Commit] r13544 - trunk/qgis/src/plugins/georeferencer

svn_qgis at osgeo.org svn_qgis at osgeo.org
Fri May 21 05:32:01 EDT 2010


Author: mmassing
Date: 2010-05-21 05:31:57 -0400 (Fri, 21 May 2010)
New Revision: 13544

Modified:
   trunk/qgis/src/plugins/georeferencer/qgsgeorefconfigdialog.cpp
   trunk/qgis/src/plugins/georeferencer/qgsgeorefconfigdialogbase.ui
   trunk/qgis/src/plugins/georeferencer/qgsgeorefplugingui.cpp
   trunk/qgis/src/plugins/georeferencer/qgsgeorefplugingui.h
Log:
Amend previously ommited docking feature of patch #2673.

Modified: trunk/qgis/src/plugins/georeferencer/qgsgeorefconfigdialog.cpp
===================================================================
--- trunk/qgis/src/plugins/georeferencer/qgsgeorefconfigdialog.cpp	2010-05-21 06:32:06 UTC (rev 13543)
+++ trunk/qgis/src/plugins/georeferencer/qgsgeorefconfigdialog.cpp	2010-05-21 09:31:57 UTC (rev 13544)
@@ -70,6 +70,15 @@
   {
     mShowCoordsCheckBox->setChecked( false );
   }
+
+  if ( s.value( "/Plugin-GeoReferencer/Config/ShowDocked" ).toBool() )
+  {
+    mShowDockedCheckBox->setChecked( true );
+  }
+  else
+  {
+    mShowDockedCheckBox->setChecked( false );
+  }
 }
 
 void QgsGeorefConfigDialog::writeSettings()
@@ -77,4 +86,5 @@
   QSettings s;
   s.setValue( "/Plugin-GeoReferencer/Config/ShowId", mShowIDsCheckBox->isChecked() );
   s.setValue( "/Plugin-GeoReferencer/Config/ShowCoords", mShowCoordsCheckBox->isChecked() );
+  s.setValue( "/Plugin-GeoReferencer/Config/ShowDocked", mShowDockedCheckBox->isChecked() );
 }

Modified: trunk/qgis/src/plugins/georeferencer/qgsgeorefconfigdialogbase.ui
===================================================================
--- trunk/qgis/src/plugins/georeferencer/qgsgeorefconfigdialogbase.ui	2010-05-21 06:32:06 UTC (rev 13543)
+++ trunk/qgis/src/plugins/georeferencer/qgsgeorefconfigdialogbase.ui	2010-05-21 09:31:57 UTC (rev 13544)
@@ -19,15 +19,15 @@
      <property name="title">
       <string>Point tip</string>
      </property>
-     <layout class="QHBoxLayout" name="horizontalLayout">
-      <item>
+     <layout class="QGridLayout" name="gridLayout">
+      <item row="0" column="0">
        <widget class="QCheckBox" name="mShowIDsCheckBox">
         <property name="text">
          <string>Show IDs</string>
         </property>
        </widget>
       </item>
-      <item>
+      <item row="1" column="0">
        <widget class="QCheckBox" name="mShowCoordsCheckBox">
         <property name="text">
          <string>Show coords</string>
@@ -38,6 +38,13 @@
     </widget>
    </item>
    <item row="1" column="0">
+    <widget class="QCheckBox" name="mShowDockedCheckBox">
+     <property name="text">
+      <string>Show Georeferencer window docked</string>
+     </property>
+    </widget>
+   </item>
+   <item row="2" column="0">
     <widget class="QDialogButtonBox" name="buttonBox">
      <property name="orientation">
       <enum>Qt::Horizontal</enum>

Modified: trunk/qgis/src/plugins/georeferencer/qgsgeorefplugingui.cpp
===================================================================
--- trunk/qgis/src/plugins/georeferencer/qgsgeorefplugingui.cpp	2010-05-21 06:32:06 UTC (rev 13543)
+++ trunk/qgis/src/plugins/georeferencer/qgsgeorefplugingui.cpp	2010-05-21 09:31:57 UTC (rev 13544)
@@ -86,6 +86,7 @@
     , mMapCoordsDialog( 0 )
     , mUseZeroForTrans( false )
     , mLoadInQgis( false )
+    , mDock( 0 )
 {
   setupUi( this );
 
@@ -104,8 +105,35 @@
   mActionLinkQGisToGeoref->setEnabled( false );
 
   mCanvas->clearExtentHistory(); // reset zoomnext/zoomlast
+
+  QSettings s;
+  if ( s.value( "/Plugin-GeoReferencer/Config/ShowDocked" ).toBool() )
+  {
+    dockThisWindow( true );
+  }
 }
 
+void QgsGeorefPluginGui::dockThisWindow( bool dock )
+{
+  if ( mDock )
+  {
+    setParent( 0 );
+    show();
+    mIface->removeDockWidget( mDock );
+    mDock->setWidget( 0 );
+    delete mDock;
+    mDock = 0;
+  }
+
+  if ( dock )
+  {
+    mDock = new QgsGeorefDockWidget( tr( "Georeferencer" ), mIface->mainWindow() );
+    mDock->setWidget( this );
+    connect( this, SIGNAL( destroyed() ), mDock, SLOT( close() ) );
+    mIface->addDockWidget( Qt::BottomDockWidgetArea, mDock );
+  }
+}
+
 QgsGeorefPluginGui::~QgsGeorefPluginGui()
 {
   QgsTransformSettingsDialog::resetSettings();
@@ -123,6 +151,7 @@
   delete mToolAddPoint;
   delete mToolDeletePoint;
   delete mToolMovePoint;
+  delete mDock;
 }
 
 // ----------------------------- protected --------------------------------- //
@@ -568,6 +597,17 @@
   {
     mCanvas->refresh();
     mIface->mapCanvas()->refresh();
+    QSettings s;
+    //update dock state
+    bool dock = s.value( "/Plugin-GeoReferencer/Config/ShowDocked" ).toBool();
+    if ( dock && !mDock )
+    {
+      dockThisWindow( true );
+    }
+    else if ( !dock && mDock )
+    {
+      dockThisWindow( false );
+    }
   }
 }
 

Modified: trunk/qgis/src/plugins/georeferencer/qgsgeorefplugingui.h
===================================================================
--- trunk/qgis/src/plugins/georeferencer/qgsgeorefplugingui.h	2010-05-21 06:32:06 UTC (rev 13543)
+++ trunk/qgis/src/plugins/georeferencer/qgsgeorefplugingui.h	2010-05-21 09:31:57 UTC (rev 13544)
@@ -159,7 +159,10 @@
     void logRequaredGCPs();
     void clearGCPData();
 
+    /**Docks / undocks this window*/
+    void dockThisWindow( bool dock );
 
+
     QMenu *mPanelMenu;
     QMenu *mToolbarMenu;
 
@@ -207,5 +210,7 @@
     bool mExtentsChangedRecursionGuard;
     bool mGCPsDirty;
     bool mLoadInQgis;
+
+    QDockWidget* mDock;
 };
 #endif



More information about the QGIS-commit mailing list