changeset 178:eae306792116

Preparations for recently opened file list. The settings for the list length already works. Also the first file can be automatically loaded on startup out of a list of files as string separated by "|" character. git-svn-id: svn://svn.code.sf.net/p/universalindent/code/trunk@382 59b1889a-e5ac-428c-b0c7-476e01d41282
author thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
date Tue, 05 Jun 2007 10:27:20 +0000
parents aff3b5fbd669
children 6a57033ef207
files src/UiGuiSettingsDialog.ui src/indentgui.ui src/mainwindow.cpp src/uiguisettings.cpp src/uiguisettings.h src/uiguisettingsdialog.cpp
diffstat 6 files changed, 64 insertions(+), 52 deletions(-) [+]
line wrap: on
line diff
--- a/src/UiGuiSettingsDialog.ui	Tue Jun 05 06:50:44 2007 +0000
+++ b/src/UiGuiSettingsDialog.ui	Tue Jun 05 10:27:20 2007 +0000
@@ -19,12 +19,12 @@
    <iconset resource="../resources/Icons.qrc" >:/mainWindow/preferences-system.png</iconset>
   </property>
   <layout class="QVBoxLayout" >
+   <property name="margin" >
+    <number>9</number>
+   </property>
    <property name="spacing" >
     <number>6</number>
    </property>
-   <property name="margin" >
-    <number>9</number>
-   </property>
    <item>
     <widget class="QTabWidget" name="tabWidget" >
      <property name="currentIndex" >
@@ -38,20 +38,20 @@
        <iconset resource="../resources/Icons.qrc" >:/settingsDialog/applications-system.png</iconset>
       </attribute>
       <layout class="QVBoxLayout" >
-       <property name="spacing" >
-        <number>6</number>
-       </property>
        <property name="margin" >
         <number>9</number>
        </property>
+       <property name="spacing" >
+        <number>6</number>
+       </property>
        <item>
         <layout class="QHBoxLayout" >
+         <property name="margin" >
+          <number>0</number>
+         </property>
          <property name="spacing" >
           <number>6</number>
          </property>
-         <property name="margin" >
-          <number>0</number>
-         </property>
          <item>
           <widget class="QLabel" name="label" >
            <property name="toolTip" >
@@ -68,7 +68,9 @@
          <item>
           <widget class="QComboBox" name="uiGuiLanguage" >
            <property name="sizePolicy" >
-            <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+            <sizepolicy>
+             <hsizetype>0</hsizetype>
+             <vsizetype>0</vsizetype>
              <horstretch>0</horstretch>
              <verstretch>0</verstretch>
             </sizepolicy>
@@ -115,19 +117,18 @@
        </item>
        <item>
         <layout class="QHBoxLayout" >
-         <property name="spacing" >
-          <number>6</number>
-         </property>
          <property name="margin" >
           <number>0</number>
          </property>
+         <property name="spacing" >
+          <number>6</number>
+         </property>
          <item>
           <widget class="QSpinBox" name="uiGuiRecentlyOpenedListSize" >
-           <property name="enabled" >
-            <bool>false</bool>
-           </property>
            <property name="sizePolicy" >
-            <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+            <sizepolicy>
+             <hsizetype>0</hsizetype>
+             <vsizetype>0</vsizetype>
              <horstretch>0</horstretch>
              <verstretch>0</verstretch>
             </sizepolicy>
@@ -135,12 +136,12 @@
            <property name="toolTip" >
             <string>Sets how many files should be remembered in the list of recently opened files.</string>
            </property>
+           <property name="maximum" >
+            <number>30</number>
+           </property>
            <property name="minimum" >
             <number>1</number>
            </property>
-           <property name="maximum" >
-            <number>30</number>
-           </property>
            <property name="value" >
             <number>1</number>
            </property>
@@ -148,9 +149,6 @@
          </item>
          <item>
           <widget class="QLabel" name="labelRecentlyOpenedListSize" >
-           <property name="enabled" >
-            <bool>false</bool>
-           </property>
            <property name="toolTip" >
             <string>Sets how many files should be remembered in the list of recently opened files.</string>
            </property>
@@ -187,12 +185,12 @@
        <iconset resource="../resources/Icons.qrc" >:/settingsDialog/accessories-text-editor.png</iconset>
       </attribute>
       <layout class="QVBoxLayout" >
+       <property name="margin" >
+        <number>9</number>
+       </property>
        <property name="spacing" >
         <number>6</number>
        </property>
-       <property name="margin" >
-        <number>9</number>
-       </property>
        <item>
         <widget class="QCheckBox" name="uiGuiWhiteSpaceIsVisible" >
          <property name="toolTip" >
@@ -205,17 +203,18 @@
        </item>
        <item>
         <layout class="QHBoxLayout" >
-         <property name="spacing" >
-          <number>6</number>
-         </property>
          <property name="margin" >
           <number>0</number>
          </property>
-
+         <property name="spacing" >
+          <number>6</number>
+         </property>
          <item>
           <widget class="QSpinBox" name="uiGuiTabWidth" >
            <property name="sizePolicy" >
-            <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+            <sizepolicy>
+             <hsizetype>0</hsizetype>
+             <vsizetype>0</vsizetype>
              <horstretch>0</horstretch>
              <verstretch>0</verstretch>
             </sizepolicy>
@@ -223,12 +222,12 @@
            <property name="toolTip" >
             <string>Defines how many spaces should be displayed in the editor for one tab character.</string>
            </property>
+           <property name="maximum" >
+            <number>99</number>
+           </property>
            <property name="minimum" >
             <number>1</number>
            </property>
-           <property name="maximum" >
-            <number>99</number>
-           </property>
            <property name="value" >
             <number>1</number>
            </property>
@@ -275,12 +274,12 @@
        <iconset resource="../resources/Icons.qrc" >:/settingsDialog/syntax-highlight.png</iconset>
       </attribute>
       <layout class="QVBoxLayout" >
+       <property name="margin" >
+        <number>9</number>
+       </property>
        <property name="spacing" >
         <number>6</number>
        </property>
-       <property name="margin" >
-        <number>9</number>
-       </property>
        <item>
         <widget class="QCheckBox" name="uiGuiSyntaxHighlightningEnabled" >
          <property name="toolTip" >
@@ -303,12 +302,12 @@
           <string>Highlighter settings</string>
          </property>
          <layout class="QHBoxLayout" >
+          <property name="margin" >
+           <number>9</number>
+          </property>
           <property name="spacing" >
            <number>6</number>
           </property>
-          <property name="margin" >
-           <number>9</number>
-          </property>
           <item>
            <widget class="QListWidget" name="listWidget" >
             <property name="currentRow" >
@@ -325,12 +324,12 @@
           </item>
           <item>
            <layout class="QVBoxLayout" >
+            <property name="margin" >
+             <number>0</number>
+            </property>
             <property name="spacing" >
              <number>6</number>
             </property>
-            <property name="margin" >
-             <number>0</number>
-            </property>
             <item>
              <widget class="QPushButton" name="pushButton_2" >
               <property name="toolTip" >
--- a/src/indentgui.ui	Tue Jun 05 06:50:44 2007 +0000
+++ b/src/indentgui.ui	Tue Jun 05 10:27:20 2007 +0000
@@ -393,6 +393,12 @@
    <property name="text" >
     <string>Create Indenter Call Shell Script</string>
    </property>
+   <property name="toolTip" >
+    <string>Create a shell script that calls the current selected indenter for formatting an as parameter given file with the current indent settings</string>
+   </property>
+   <property name="statusTip" >
+    <string>Create a shell script that calls the current selected indenter for formatting an as parameter given file with the current indent settings</string>
+   </property>
   </action>
  </widget>
  <resources>
--- a/src/mainwindow.cpp	Tue Jun 05 06:50:44 2007 +0000
+++ b/src/mainwindow.cpp	Tue Jun 05 10:27:20 2007 +0000
@@ -877,12 +877,13 @@
     If the setting for opening the last file is disabled, the editor is empty on startup.
 */
 void MainWindow::loadLastOpenedFile() {
-    // Get setting for last opened source code file
+    // Get setting for last opened source code file.
 	loadLastSourceCodeFileOnStartup = settings->getValueByName("LoadLastOpenedFileOnStartup").toBool();
 
 	// Only load last source code file if set to do so
 	if ( loadLastSourceCodeFileOnStartup ) {
-		currentSourceFile = settings->getValueByName("LastOpenedFile").toString();
+        // From the list of last opened files get the first one.
+        currentSourceFile = settings->getValueByName("LastOpenedFiles").toString().split("|").first();
 
 		// If source file exist load it.
 		if ( QFile::exists(currentSourceFile) ) {
@@ -923,7 +924,7 @@
 void MainWindow::saveSettings() {
     QFileInfo fileInfo(currentSourceFile);
     if ( fileInfo.isFile() ) {
-        settings->setValueByName( "LastOpenedFile", currentSourceFile );
+        settings->setValueByName( "LastOpenedFiles", currentSourceFile );
     }
 	//settings->setValueByName( "LoadLastOpenedFileOnStartup", uiGuiLoadLastOpenedFileOnStartup->isChecked() );
     settings->setValueByName( "LastSelectedIndenterID", currentIndenterID );
--- a/src/uiguisettings.cpp	Tue Jun 05 06:50:44 2007 +0000
+++ b/src/uiguisettings.cpp	Tue Jun 05 10:27:20 2007 +0000
@@ -142,8 +142,9 @@
     else if ( settingName == "WindowPosition" ) emit windowPosition( settings[settingName].toPoint() );
     else if ( settingName == "WindowSize" ) emit windowSize( settings[settingName].toSize() );
     else if ( settingName == "FileEncoding" ) emit fileEncoding( settings[settingName].toString() );
+    else if ( settingName == "RecentlyOpenedListSize" ) emit recentlyOpenedListSize( settings[settingName].toInt() );
     else if ( settingName == "LoadLastOpenedFileOnStartup" ) emit loadLastOpenedFileOnStartup( settings[settingName].toBool() );
-    else if ( settingName == "LastOpenedFile" ) emit lastOpenedFile( settings[settingName].toString() );
+    else if ( settingName == "LastOpenedFiles" ) emit lastOpenedFiles( settings[settingName].toString() );
     else if ( settingName == "LastSelectedIndenterID" ) emit lastSelectedIndenterID( settings[settingName].toInt() );
     else if ( settingName == "SyntaxHighlightningEnabled" ) emit syntaxHighlightningEnabled( settings[settingName].toBool() );
     else if ( settingName == "WhiteSpaceIsVisible" ) emit whiteSpaceIsVisible( settings[settingName].toBool() );
@@ -156,8 +157,9 @@
         emit windowPosition( settings["WindowPosition"].toPoint() );
         emit windowSize( settings["WindowSize"].toSize() );
         emit fileEncoding( settings["FileEncoding"].toString() );
+        emit recentlyOpenedListSize( settings["RecentlyOpenedListSize"].toInt() );
         emit loadLastOpenedFileOnStartup( settings["LoadLastOpenedFileOnStartup"].toBool() );
-        emit lastOpenedFile( settings["LastOpenedFile"].toString() );
+        emit lastOpenedFiles( settings["LastOpenedFiles"].toString() );
         emit lastSelectedIndenterID( settings["LastSelectedIndenterID"].toInt() );
         emit syntaxHighlightningEnabled( settings["SyntaxHighlightningEnabled"].toBool() );
         emit whiteSpaceIsVisible( settings["WhiteSpaceIsVisible"].toBool() );
@@ -206,11 +208,14 @@
 	// Read last selected encoding for the opened source code file.
 	settings["FileEncoding"] = qsettings->value( "UniversalIndentGUI/encoding", "UTF-8" ).toString();
 
+    // Read maximum length of list for recently opened files.
+	settings["RecentlyOpenedListSize"] = qsettings->value("UniversalIndentGUI/recentlyOpenedListSize", 5).toInt();
+
 	// Read if last opened source code file should be loaded on startup.
 	settings["LoadLastOpenedFileOnStartup"] = qsettings->value("UniversalIndentGUI/loadLastSourceCodeFileOnStartup", true).toBool();
 
 	// Read last opened source code file from the settings file.
-	settings["LastOpenedFile"] = qsettings->value("UniversalIndentGUI/lastSourceCodeFile", settings["IndenterExecutableDir"].toString()+"example.cpp").toString();
+	settings["LastOpenedFiles"] = qsettings->value("UniversalIndentGUI/lastSourceCodeFile", settings["IndenterExecutableDir"].toString()+"example.cpp").toString();
 
 	// Read last selected indenter from the settings file.
 	int LastSelectedIndenterID = qsettings->value("UniversalIndentGUI/lastSelectedIndenter", 0).toInt();
@@ -243,7 +248,8 @@
     Settings are for example last selected indenter, last loaded source code file and so on.
 */
 bool UiGuiSettings::saveSettings() {
-    qsettings->setValue( "UniversalIndentGUI/lastSourceCodeFile", settings["LastOpenedFile"] );
+	qsettings->setValue( "UniversalIndentGUI/recentlyOpenedListSize", settings["RecentlyOpenedListSize"] );
+    qsettings->setValue( "UniversalIndentGUI/lastSourceCodeFile", settings["LastOpenedFiles"] );
 	qsettings->setValue( "UniversalIndentGUI/loadLastSourceCodeFileOnStartup", settings["LoadLastOpenedFileOnStartup"] );
     qsettings->setValue( "UniversalIndentGUI/lastSelectedIndenter", settings["LastSelectedIndenterID"] );
     qsettings->setValue( "UniversalIndentGUI/indenterParameterTooltipsEnabled", settings["IndenterParameterTooltipsEnabled"] );
--- a/src/uiguisettings.h	Tue Jun 05 06:50:44 2007 +0000
+++ b/src/uiguisettings.h	Tue Jun 05 10:27:20 2007 +0000
@@ -55,8 +55,9 @@
     void windowPosition(QPoint value);
     void windowSize(QSize value);
     void fileEncoding(QString value);
+    void recentlyOpenedListSize(int value);
     void loadLastOpenedFileOnStartup(bool value);
-    void lastOpenedFile(QString value);
+    void lastOpenedFiles(QString value);
     void lastSelectedIndenterID(int value);
     void syntaxHighlightningEnabled(bool value);
     void whiteSpaceIsVisible(bool value);
--- a/src/uiguisettingsdialog.cpp	Tue Jun 05 06:50:44 2007 +0000
+++ b/src/uiguisettingsdialog.cpp	Tue Jun 05 10:27:20 2007 +0000
@@ -36,7 +36,6 @@
 	setupUi(this);
 	//TODO: This has to be removed when the properties for the highlighters can be set.
 	groupBoxSyntaxHighlighterProperties->setToolTip( "(Will be implemented soon)" + groupBoxSyntaxHighlighterProperties->toolTip() );
-	uiGuiRecentlyOpenedListSize->setToolTip( "(Will be implemented soon)" + uiGuiRecentlyOpenedListSize->toolTip() );
 
     // Get all check boxes that are used for settings.
     checkBoxes = findChildren<QCheckBox*>( QRegExp("uiGui*") );