Преглед на файлове

cmake-gui: save and restore the geometry and window state between sessions.

Clinton Stimpson преди 12 години
родител
ревизия
81ea3637b4
променени са 1 файла, в които са добавени 4 реда и са изтрити 5 реда
  1. 4 5
      Source/QtDialog/CMakeSetupDialog.cxx

+ 4 - 5
Source/QtDialog/CMakeSetupDialog.cxx

@@ -66,9 +66,8 @@ CMakeSetupDialog::CMakeSetupDialog()
   // create the GUI
   QSettings settings;
   settings.beginGroup("Settings/StartPath");
-  int h = settings.value("Height", 500).toInt();
-  int w = settings.value("Width", 700).toInt();
-  this->resize(w, h);
+  restoreGeometry(settings.value("geometry").toByteArray());
+  restoreState(settings.value("windowState").toByteArray());
 
   this->AddVariableCompletions = settings.value("AddVariableCompletionEntries",
                            QStringList("CMAKE_INSTALL_PREFIX")).toStringList();
@@ -299,8 +298,8 @@ CMakeSetupDialog::~CMakeSetupDialog()
 {
   QSettings settings;
   settings.beginGroup("Settings/StartPath");
-  settings.setValue("Height", this->height());
-  settings.setValue("Width", this->width());
+  settings.setValue("windowState", QVariant(saveState()));
+  settings.setValue("geometry", QVariant(saveGeometry()));
   settings.setValue("SplitterSizes", this->Splitter->saveState());
 
   // wait for thread to stop