Mercurial > hg > octave-terminal
changeset 13406:91d64ef98f81
Corrected saving/loading of settings, now loading online docs.
author | Jacob Dawid <jacob.dawid@googlemail.com> |
---|---|
date | Mon, 11 Apr 2011 22:18:04 +0200 |
parents | 42de7a2d4d64 |
children | b2902b9ba84d |
files | gui//src/MainWindow.cpp gui//src/MainWindow.h |
diffstat | 2 files changed, 17 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/gui//src/MainWindow.cpp +++ b/gui//src/MainWindow.cpp @@ -19,13 +19,15 @@ #include <QMenuBar> #include <QMenu> #include <QAction> -#include <QtWebKit/QWebView> #include <QSettings> +#include <QDesktopServices> #include "MainWindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_isRunning(true) { + QDesktopServices desktopServices; + m_settingsFile = desktopServices.storageLocation(QDesktopServices::HomeLocation) + "/.quint/setting.ini"; constructWindow(); establishOctaveLink(); } @@ -42,9 +44,13 @@ m_statusBar->showMessage(statusMessage, 1000); } +void MainWindow::openWebPage(QString url) { + m_webView->load(QUrl(url)); +} + void MainWindow::closeEvent(QCloseEvent *closeEvent) { reportStatusMessage("Saving data and shutting down."); - QSettings settings("~/.quint/settings.ini", QSettings::IniFormat); + QSettings settings(m_settingsFile, QSettings::IniFormat); settings.setValue("MainWindow/geometry", saveGeometry()); settings.setValue("MainWindow/windowState", saveState()); QMainWindow::closeEvent(closeEvent); @@ -59,9 +65,11 @@ m_filesDockWidget = new FilesDockWidget(this); m_openedFiles = new QMdiArea(this); m_statusBar = new QStatusBar(this); + m_webView = new QWebView(this); m_centralTabWidget = new QTabWidget(this); m_centralTabWidget->addTab(m_octaveTerminal, "Terminal"); m_centralTabWidget->addTab(m_openedFiles, "Editor"); + m_centralTabWidget->addTab(m_webView, "Documentation"); // TODO: Add meaningfull toolbar items. QAction *commandAction = new QAction(style->standardIcon(QStyle::SP_CommandLink), @@ -79,12 +87,14 @@ addDockWidget(Qt::RightDockWidgetArea, m_filesDockWidget); setStatusBar(m_statusBar); - QSettings settings("~/.quint/settings.ini", QSettings::IniFormat); + QSettings settings(m_settingsFile, QSettings::IniFormat); restoreGeometry(settings.value("MainWindow/geometry").toByteArray()); restoreState(settings.value("MainWindow/windowState").toByteArray()); connect(m_filesDockWidget, SIGNAL(openFile(QString)), this, SLOT(handleOpenFileRequest(QString))); connect(m_historyDockWidget, SIGNAL(information(QString)), this, SLOT(reportStatusMessage(QString))); + + openWebPage("http://www.gnu.org/software/octave/doc/interpreter/"); } void MainWindow::establishOctaveLink() {
--- a/gui//src/MainWindow.h +++ b/gui//src/MainWindow.h @@ -25,6 +25,7 @@ #include <QMdiArea> #include <QStatusBar> #include <QToolBar> +#include <QtWebKit/QWebView> #include "OctaveTerminal.h" #include "OctaveLink.h" #include "VariablesDockWidget.h" @@ -98,6 +99,7 @@ public slots: void handleOpenFileRequest(QString fileName); void reportStatusMessage(QString statusMessage); + void openWebPage(QString url); protected: void closeEvent(QCloseEvent *closeEvent); @@ -113,6 +115,8 @@ QTabWidget *m_centralTabWidget; QStatusBar *m_statusBar; QToolBar *m_generalPurposeToolbar; + QWebView *m_webView; + QString m_settingsFile; // Threads for running octave and managing the data interaction. OctaveMainThread *m_octaveMainThread;