Mercurial > hg > octave-lyh
comparison gui/src/MainWindow.cpp @ 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 | e02a2fb08bfd |
children | a43ecce77eec |
comparison
equal
deleted
inserted
replaced
13535:98bde3b5b7a0 | 13536:869c62c15e95 |
---|---|
32 | 32 |
33 MainWindow::MainWindow (QWidget * parent):QMainWindow (parent), | 33 MainWindow::MainWindow (QWidget * parent):QMainWindow (parent), |
34 m_isRunning (true) | 34 m_isRunning (true) |
35 { | 35 { |
36 QDesktopServices desktopServices; | 36 QDesktopServices desktopServices; |
37 m_settingsFile = | 37 m_settingsFile = desktopServices.storageLocation (QDesktopServices::HomeLocation) + "/.quint/settings.ini"; |
38 desktopServices.storageLocation (QDesktopServices::HomeLocation) + | |
39 "/.quint/settings.ini"; | |
40 construct (); | 38 construct (); |
41 establishOctaveLink (); | 39 establishOctaveLink (); |
42 } | 40 } |
43 | 41 |
44 MainWindow::~MainWindow () | 42 MainWindow::~MainWindow () |
83 QDesktopServices desktopServices; | 81 QDesktopServices desktopServices; |
84 QString selectedFile = | 82 QString selectedFile = |
85 QFileDialog::getSaveFileName (this, tr ("Save Workspace"), | 83 QFileDialog::getSaveFileName (this, tr ("Save Workspace"), |
86 desktopServices. | 84 desktopServices. |
87 storageLocation (QDesktopServices:: | 85 storageLocation (QDesktopServices:: |
88 HomeLocation) + | 86 HomeLocation)); |
89 "/.quint/workspace"); | |
90 m_octaveTerminal->sendText (QString ("save \'%1\'\n").arg (selectedFile)); | 87 m_octaveTerminal->sendText (QString ("save \'%1\'\n").arg (selectedFile)); |
91 m_octaveTerminal->setFocus (); | 88 m_octaveTerminal->setFocus (); |
92 } | 89 } |
93 | 90 |
94 void | 91 void |
97 QDesktopServices desktopServices; | 94 QDesktopServices desktopServices; |
98 QString selectedFile = | 95 QString selectedFile = |
99 QFileDialog::getOpenFileName (this, tr ("Load Workspace"), | 96 QFileDialog::getOpenFileName (this, tr ("Load Workspace"), |
100 desktopServices. | 97 desktopServices. |
101 storageLocation (QDesktopServices:: | 98 storageLocation (QDesktopServices:: |
102 HomeLocation) + | 99 HomeLocation)); |
103 "/.quint/workspace"); | |
104 m_octaveTerminal->sendText (QString ("load \'%1\'\n").arg (selectedFile)); | 100 m_octaveTerminal->sendText (QString ("load \'%1\'\n").arg (selectedFile)); |
105 m_octaveTerminal->setFocus (); | 101 m_octaveTerminal->setFocus (); |
106 } | 102 } |
107 | 103 |
108 void | 104 void |
134 } | 130 } |
135 | 131 |
136 void | 132 void |
137 MainWindow::openBugTrackerPage () | 133 MainWindow::openBugTrackerPage () |
138 { | 134 { |
139 QDesktopServices:: | 135 QDesktopServices::openUrl (QUrl ("http://savannah.gnu.org/bugs/?group=octave")); |
140 openUrl (QUrl ("http://savannah.gnu.org/bugs/?group=octave")); | |
141 } | 136 } |
142 | 137 |
143 void | 138 void |
144 MainWindow::openAgoraPage () | 139 MainWindow::openAgoraPage () |
145 { | 140 { |
146 QDesktopServices:: | 141 QDesktopServices::openUrl (QUrl ("http://agora.panocha.org.mx/")); |
147 openUrl (QUrl ("http://agora.panocha.org.mx/")); | |
148 } | 142 } |
149 | 143 |
150 void | 144 void |
151 MainWindow::openOctaveForgePage () | 145 MainWindow::openOctaveForgePage () |
152 { | 146 { |
153 QDesktopServices:: | 147 QDesktopServices::openUrl (QUrl ("http://octave.sourceforge.net/")); |
154 openUrl (QUrl ("http://octave.sourceforge.net/")); | |
155 } | 148 } |
156 | 149 |
157 void | 150 void |
158 MainWindow::processSettingsDialogRequest () | 151 MainWindow::processSettingsDialogRequest () |
159 { | 152 { |
160 SettingsDialog settingsDialog (this, m_settingsFile); | 153 SettingsDialog settingsDialog (this, m_settingsFile); |
161 settingsDialog.exec (); | 154 settingsDialog.exec (); |
155 emit settingsChanged (); | |
162 } | 156 } |
163 | 157 |
164 void | 158 void |
165 MainWindow::closeEvent (QCloseEvent * closeEvent) | 159 MainWindow::closeEvent (QCloseEvent * closeEvent) |
166 { | 160 { |
179 MainWindow::readSettings () | 173 MainWindow::readSettings () |
180 { | 174 { |
181 QSettings settings (m_settingsFile, QSettings::IniFormat); | 175 QSettings settings (m_settingsFile, QSettings::IniFormat); |
182 restoreGeometry (settings.value ("MainWindow/geometry").toByteArray ()); | 176 restoreGeometry (settings.value ("MainWindow/geometry").toByteArray ()); |
183 restoreState (settings.value ("MainWindow/windowState").toByteArray ()); | 177 restoreState (settings.value ("MainWindow/windowState").toByteArray ()); |
178 m_centralMdiArea->restoreGeometry (settings.value ("MdiArea/geometry").toByteArray ()); | |
179 emit settingsChanged (); | |
184 } | 180 } |
185 | 181 |
186 void | 182 void |
187 MainWindow::writeSettings () | 183 MainWindow::writeSettings () |
188 { | 184 { |
189 QSettings settings (m_settingsFile, QSettings::IniFormat); | 185 QSettings settings (m_settingsFile, QSettings::IniFormat); |
190 settings.setValue ("MainWindow/geometry", saveGeometry ()); | 186 settings.setValue ("MainWindow/geometry", saveGeometry ()); |
191 settings.setValue ("MainWindow/windowState", saveState ()); | 187 settings.setValue ("MainWindow/windowState", saveState ()); |
188 settings.setValue ("MdiArea/geometry", m_centralMdiArea->saveGeometry ()); | |
192 } | 189 } |
193 | 190 |
194 void | 191 void |
195 MainWindow::construct () | 192 MainWindow::construct () |
196 { | 193 { |
290 connect (showHistoryAction, SIGNAL (toggled (bool)), m_historyDockWidget, SLOT (setShown (bool))); | 287 connect (showHistoryAction, SIGNAL (toggled (bool)), m_historyDockWidget, SLOT (setShown (bool))); |
291 //connect (m_historyDockWidget, SIGNAL (visibilityChanged (bool)), showHistoryAction, SLOT (setChecked (bool))); | 288 //connect (m_historyDockWidget, SIGNAL (visibilityChanged (bool)), showHistoryAction, SLOT (setChecked (bool))); |
292 connect (showFileBrowserAction, SIGNAL (toggled (bool)), m_filesDockWidget, SLOT (setShown (bool))); | 289 connect (showFileBrowserAction, SIGNAL (toggled (bool)), m_filesDockWidget, SLOT (setShown (bool))); |
293 //connect (m_filesDockWidget, SIGNAL (visibilityChanged (bool)), showFileBrowserAction, SLOT (setChecked (bool))); | 290 //connect (m_filesDockWidget, SIGNAL (visibilityChanged (bool)), showFileBrowserAction, SLOT (setChecked (bool))); |
294 | 291 |
292 connect (this, SIGNAL (settingsChanged ()), m_variablesDockWidget, SLOT (noticeSettings ())); | |
293 connect (this, SIGNAL (settingsChanged ()), m_historyDockWidget, SLOT (noticeSettings ())); | |
294 connect (this, SIGNAL (settingsChanged ()), m_filesDockWidget, SLOT (noticeSettings ())); | |
295 | |
296 connect (m_filesDockWidget, SIGNAL (openFile (QString)), this, SLOT (handleOpenFileRequest (QString))); | |
297 connect (m_historyDockWidget, SIGNAL (information (QString)), this, SLOT (reportStatusMessage (QString))); | |
298 connect (saveWorkspaceAction, SIGNAL (triggered ()), this, SLOT (handleSaveWorkspaceRequest ())); | |
299 connect (loadWorkspaceAction, SIGNAL (triggered ()), this, SLOT (handleLoadWorkspaceRequest ())); | |
300 connect (clearWorkspaceAction, SIGNAL (triggered ()), this, SLOT (handleClearWorkspaceRequest ())); | |
301 | |
295 setWindowTitle (QString (VERSION_STRING)); | 302 setWindowTitle (QString (VERSION_STRING)); |
296 | 303 |
297 setCentralWidget (m_centralMdiArea); | 304 setCentralWidget (m_centralMdiArea); |
298 addDockWidget (Qt::LeftDockWidgetArea, m_variablesDockWidget); | 305 addDockWidget (Qt::LeftDockWidgetArea, m_variablesDockWidget); |
299 addDockWidget (Qt::LeftDockWidgetArea, m_historyDockWidget); | 306 addDockWidget (Qt::LeftDockWidgetArea, m_historyDockWidget); |
300 addDockWidget (Qt::RightDockWidgetArea, m_filesDockWidget); | 307 addDockWidget (Qt::RightDockWidgetArea, m_filesDockWidget); |
301 setStatusBar (m_statusBar); | 308 setStatusBar (m_statusBar); |
302 | 309 |
303 readSettings (); | 310 readSettings (); |
304 | |
305 connect (m_filesDockWidget, SIGNAL (openFile (QString)), this, | |
306 SLOT (handleOpenFileRequest (QString))); | |
307 connect (m_historyDockWidget, SIGNAL (information (QString)), this, | |
308 SLOT (reportStatusMessage (QString))); | |
309 connect (saveWorkspaceAction, SIGNAL (triggered ()), this, | |
310 SLOT (handleSaveWorkspaceRequest ())); | |
311 connect (loadWorkspaceAction, SIGNAL (triggered ()), this, | |
312 SLOT (handleLoadWorkspaceRequest ())); | |
313 connect (clearWorkspaceAction, SIGNAL (triggered ()), this, | |
314 SLOT (handleClearWorkspaceRequest ())); | |
315 | |
316 openWebPage ("http://www.gnu.org/software/octave/doc/interpreter/"); | 311 openWebPage ("http://www.gnu.org/software/octave/doc/interpreter/"); |
317 } | 312 } |
318 | 313 |
319 void | 314 void |
320 MainWindow::establishOctaveLink () | 315 MainWindow::establishOctaveLink () |