Mercurial > hg > octave-thorsten
changeset 13536:869c62c15e95
Few minor improvements, added advanced settings for file browser.
author | Jacob Dawid <jacob.dawid@googlemail.com> |
---|---|
date | Tue, 26 Jul 2011 18:11:34 +0200 |
parents | 98bde3b5b7a0 |
children | a43ecce77eec |
files | gui/src/BrowserWidget.h gui/src/FilesDockWidget.cpp gui/src/FilesDockWidget.h gui/src/HistoryDockWidget.cpp gui/src/HistoryDockWidget.h gui/src/MainWindow.cpp gui/src/MainWindow.h gui/src/SettingsDialog.cpp gui/src/SettingsDialog.ui gui/src/VariablesDockWidget.cpp gui/src/VariablesDockWidget.h |
diffstat | 11 files changed, 128 insertions(+), 34 deletions(-) [+] |
line wrap: on
line diff
--- a/gui/src/BrowserWidget.h +++ b/gui/src/BrowserWidget.h @@ -27,11 +27,13 @@ class BrowserWidget:public QWidget { -Q_OBJECT public: + Q_OBJECT +public: BrowserWidget (QWidget * parent = 0); void load (QUrl url); - public slots:void setUrl (QUrl url); +public slots: + void setUrl (QUrl url); void jumpToWebsite (); void showStatusMessage (QString message);
--- a/gui/src/FilesDockWidget.cpp +++ b/gui/src/FilesDockWidget.cpp @@ -165,3 +165,9 @@ emit openFile (fileInfo.absoluteFilePath ()); } } + +void +FilesDockWidget::noticeSettings () +{ + +}
--- a/gui/src/FilesDockWidget.h +++ b/gui/src/FilesDockWidget.h @@ -48,19 +48,26 @@ class FilesDockWidget:public QDockWidget { - Q_OBJECT public:FilesDockWidget (QWidget * parent = 0); - public slots: - /** Slot for handling a change in directory via double click. */ + Q_OBJECT +public: + FilesDockWidget (QWidget * parent = 0); + +public slots: + /** Slot for handling a change in directory via double click. */ void itemDoubleClicked (const QModelIndex & index); - /** Slot for handling the up-directory button in the toolbar. */ + /** Slot for handling the up-directory button in the toolbar. */ void onUpDirectory (); void setCurrentDirectory (QString currentDirectory); void currentDirectoryEntered (); - signals:void openFile (QString fileName); + /** Tells the widget to notice settings that are probably new. */ + void noticeSettings (); + +signals: + void openFile (QString fileName); private: // TODO: Add toolbar with buttons for navigating the path, creating dirs, etc
--- a/gui/src/HistoryDockWidget.cpp +++ b/gui/src/HistoryDockWidget.cpp @@ -42,3 +42,9 @@ widget ()->setLayout (layout); } + +void +HistoryDockWidget::noticeSettings () +{ + +}
--- a/gui/src/HistoryDockWidget.h +++ b/gui/src/HistoryDockWidget.h @@ -30,6 +30,10 @@ HistoryDockWidget (QWidget *parent = 0); void updateHistory (QStringList history); +public slots: + /** Tells the widget to notice settings that are probably new. */ + void noticeSettings (); + signals: void information (QString message);
--- a/gui/src/MainWindow.cpp +++ b/gui/src/MainWindow.cpp @@ -34,9 +34,7 @@ m_isRunning (true) { QDesktopServices desktopServices; - m_settingsFile = - desktopServices.storageLocation (QDesktopServices::HomeLocation) + - "/.quint/settings.ini"; + m_settingsFile = desktopServices.storageLocation (QDesktopServices::HomeLocation) + "/.quint/settings.ini"; construct (); establishOctaveLink (); } @@ -85,8 +83,7 @@ QFileDialog::getSaveFileName (this, tr ("Save Workspace"), desktopServices. storageLocation (QDesktopServices:: - HomeLocation) + - "/.quint/workspace"); + HomeLocation)); m_octaveTerminal->sendText (QString ("save \'%1\'\n").arg (selectedFile)); m_octaveTerminal->setFocus (); } @@ -99,8 +96,7 @@ QFileDialog::getOpenFileName (this, tr ("Load Workspace"), desktopServices. storageLocation (QDesktopServices:: - HomeLocation) + - "/.quint/workspace"); + HomeLocation)); m_octaveTerminal->sendText (QString ("load \'%1\'\n").arg (selectedFile)); m_octaveTerminal->setFocus (); } @@ -136,22 +132,19 @@ void MainWindow::openBugTrackerPage () { - QDesktopServices:: - openUrl (QUrl ("http://savannah.gnu.org/bugs/?group=octave")); + QDesktopServices::openUrl (QUrl ("http://savannah.gnu.org/bugs/?group=octave")); } void MainWindow::openAgoraPage () { - QDesktopServices:: - openUrl (QUrl ("http://agora.panocha.org.mx/")); + QDesktopServices::openUrl (QUrl ("http://agora.panocha.org.mx/")); } void MainWindow::openOctaveForgePage () { - QDesktopServices:: - openUrl (QUrl ("http://octave.sourceforge.net/")); + QDesktopServices::openUrl (QUrl ("http://octave.sourceforge.net/")); } void @@ -159,6 +152,7 @@ { SettingsDialog settingsDialog (this, m_settingsFile); settingsDialog.exec (); + emit settingsChanged (); } void @@ -181,6 +175,8 @@ QSettings settings (m_settingsFile, QSettings::IniFormat); restoreGeometry (settings.value ("MainWindow/geometry").toByteArray ()); restoreState (settings.value ("MainWindow/windowState").toByteArray ()); + m_centralMdiArea->restoreGeometry (settings.value ("MdiArea/geometry").toByteArray ()); + emit settingsChanged (); } void @@ -189,6 +185,7 @@ QSettings settings (m_settingsFile, QSettings::IniFormat); settings.setValue ("MainWindow/geometry", saveGeometry ()); settings.setValue ("MainWindow/windowState", saveState ()); + settings.setValue ("MdiArea/geometry", m_centralMdiArea->saveGeometry ()); } void @@ -292,6 +289,16 @@ connect (showFileBrowserAction, SIGNAL (toggled (bool)), m_filesDockWidget, SLOT (setShown (bool))); //connect (m_filesDockWidget, SIGNAL (visibilityChanged (bool)), showFileBrowserAction, SLOT (setChecked (bool))); + connect (this, SIGNAL (settingsChanged ()), m_variablesDockWidget, SLOT (noticeSettings ())); + connect (this, SIGNAL (settingsChanged ()), m_historyDockWidget, SLOT (noticeSettings ())); + connect (this, SIGNAL (settingsChanged ()), m_filesDockWidget, SLOT (noticeSettings ())); + + connect (m_filesDockWidget, SIGNAL (openFile (QString)), this, SLOT (handleOpenFileRequest (QString))); + connect (m_historyDockWidget, SIGNAL (information (QString)), this, SLOT (reportStatusMessage (QString))); + connect (saveWorkspaceAction, SIGNAL (triggered ()), this, SLOT (handleSaveWorkspaceRequest ())); + connect (loadWorkspaceAction, SIGNAL (triggered ()), this, SLOT (handleLoadWorkspaceRequest ())); + connect (clearWorkspaceAction, SIGNAL (triggered ()), this, SLOT (handleClearWorkspaceRequest ())); + setWindowTitle (QString (VERSION_STRING)); setCentralWidget (m_centralMdiArea); @@ -301,18 +308,6 @@ setStatusBar (m_statusBar); readSettings (); - - connect (m_filesDockWidget, SIGNAL (openFile (QString)), this, - SLOT (handleOpenFileRequest (QString))); - connect (m_historyDockWidget, SIGNAL (information (QString)), this, - SLOT (reportStatusMessage (QString))); - connect (saveWorkspaceAction, SIGNAL (triggered ()), this, - SLOT (handleSaveWorkspaceRequest ())); - connect (loadWorkspaceAction, SIGNAL (triggered ()), this, - SLOT (handleLoadWorkspaceRequest ())); - connect (clearWorkspaceAction, SIGNAL (triggered ()), this, - SLOT (handleClearWorkspaceRequest ())); - openWebPage ("http://www.gnu.org/software/octave/doc/interpreter/"); }
--- a/gui/src/MainWindow.h +++ b/gui/src/MainWindow.h @@ -68,8 +68,10 @@ { return m_filesDockWidget; } +signals: + void settingsChanged (); - public slots: +public slots: void handleOpenFileRequest (QString fileName); void reportStatusMessage (QString statusMessage); void openWebPage (QString url);
--- a/gui/src/SettingsDialog.cpp +++ b/gui/src/SettingsDialog.cpp @@ -16,6 +16,12 @@ ui->nickServPassword->setText (settings.value ("nickServPassword").toString ()); ui->useCustomFileEditor->setChecked (settings.value ("useCustomFileEditor").toBool ()); ui->customFileEditor->setText (settings.value ("customFileEditor").toString ()); + ui->showFilenames->setChecked (settings.value ("showFilenames").toBool()); + ui->showFileSize->setChecked (settings.value ("showFileSize").toBool()); + ui->showFileType->setChecked (settings.value ("showFileType").toBool()); + ui->showLastModified->setChecked (settings.value ("showLastModified").toBool()); + ui->showHiddenFiles->setChecked (settings.value ("showHiddenFiles").toBool()); + ui->useAlternatingRowColors->setChecked (settings.value ("useAlternatingRowColors").toBool()); } SettingsDialog::~SettingsDialog () @@ -28,5 +34,11 @@ settings.setValue ("nickServPassword", ui->nickServPassword->text ()); settings.setValue ("useCustomFileEditor", ui->useCustomFileEditor->isChecked ()); settings.setValue ("customFileEditor", ui->customFileEditor->text ()); + settings.setValue ("showFilenames", ui->showFilenames->isChecked ()); + settings.setValue ("showFileSize", ui->showFileSize->isChecked ()); + settings.setValue ("showFileType", ui->showFileType->isChecked ()); + settings.setValue ("showLastModified", ui->showLastModified->isChecked ()); + settings.setValue ("showHiddenFiles", ui->showHiddenFiles->isChecked ()); + settings.setValue ("useAlternatingRowColors", ui->useAlternatingRowColors->isChecked ()); delete ui; }
--- a/gui/src/SettingsDialog.ui +++ b/gui/src/SettingsDialog.ui @@ -161,6 +161,55 @@ </item> </layout> </widget> + <widget class="QWidget" name="tab_2"> + <attribute name="title"> + <string>File Browser</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_3"> + <item> + <widget class="QCheckBox" name="showFilenames"> + <property name="text"> + <string>Show filenames</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="showFileSize"> + <property name="text"> + <string>Show file size</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="showFileType"> + <property name="text"> + <string>Show file type</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="showLastModified"> + <property name="text"> + <string>Show date of last modification</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="showHiddenFiles"> + <property name="text"> + <string>Show hidden files</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="useAlternatingRowColors"> + <property name="text"> + <string>Alternating row colors</string> + </property> + </widget> + </item> + </layout> + </widget> </widget> </item> <item>
--- a/gui/src/VariablesDockWidget.cpp +++ b/gui/src/VariablesDockWidget.cpp @@ -188,3 +188,9 @@ } } } + +void +VariablesDockWidget::noticeSettings () +{ + +}
--- a/gui/src/VariablesDockWidget.h +++ b/gui/src/VariablesDockWidget.h @@ -26,10 +26,15 @@ class VariablesDockWidget:public QDockWidget { -Q_OBJECT public: + Q_OBJECT +public: VariablesDockWidget (QWidget * parent = 0); void setVariablesList (QList < SymbolRecord > symbolTable); +public slots: + /** Tells the widget to notice settings that are probably new. */ + void noticeSettings (); + private: void construct (); void updateTreeEntry (QTreeWidgetItem * treeItem,