changeset 13370:3b089411a59d

Added menubar, octave terminals can be added dynamically. Removed behaviour of maximizing at startup.
author Jacob Dawid <jacob.dawid@googlemail.com>
date Thu, 07 Apr 2011 21:14:33 +0200
parents ed8625feac69
children c6e7dc1c2925
files gui//src/MainWindow.cpp gui//src/MainWindow.h
diffstat 2 files changed, 15 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/gui//src/MainWindow.cpp
+++ b/gui//src/MainWindow.cpp
@@ -27,13 +27,14 @@
 MainWindow::MainWindow(QWidget *parent)
     : QMainWindow(parent) {
     m_mdiArea = new QMdiArea();
+    setWindowTitle("Quint");
     setCentralWidget(m_mdiArea);
 
+    constructWindow();
+
     loadWebPage("Online Manual", "http://www.gnu.org/software/octave/doc/interpreter/");
-    addTerminalWindow();
-    addTerminalWindow();
+    //addTerminalWindow();
     m_mdiArea->setViewMode(QMdiArea::SubWindowView);
-    showMaximized();
 }
 
 MainWindow::~MainWindow() {
@@ -43,6 +44,7 @@
 void MainWindow::addTerminalWindow() {
     TerminalMdiSubWindow *terminal = new TerminalMdiSubWindow;
     m_mdiArea->addSubWindow(terminal);
+    terminal->show();
 }
 
 void MainWindow::loadWebPage(QString title, QString url) {
@@ -52,3 +54,10 @@
     webView->load(QUrl(url));
     m_mdiArea->addSubWindow(webView);
 }
+
+void MainWindow::constructWindow() {
+    QMenu *viewsMenu = menuBar()->addMenu("Views");
+    QAction *addOctaveTerminalAction = viewsMenu->addAction("Add Octave Terminal");
+
+    connect(addOctaveTerminalAction, SIGNAL(triggered()), this, SLOT(addTerminalWindow()));
+}
--- a/gui//src/MainWindow.h
+++ b/gui//src/MainWindow.h
@@ -30,15 +30,17 @@
 class MainWindow : public QMainWindow
 {
     Q_OBJECT
-
 public:
     MainWindow(QWidget *parent = 0);
     ~MainWindow();
 
+public slots:
     void addTerminalWindow();
     void loadWebPage(QString title, QString url);
 
 private:
+    void constructWindow();
+
     QMdiArea *m_mdiArea;
 };