Mercurial > hg > octave-lyh
diff gui/src/MainWindow.cpp @ 14692:d6d250812c01 gui
Made the terminal window dockable, too. Now the whole interface is fully dockable.
* TerminalDockWidget: Subclassed QDockWidget to add some additional functionality.
* MainWindow: Added TerminalDockWidget and removed central widget.
* src.pro: Added new file to project file.
author | Jacob Dawid <jacob.dawid@googlemail.com> |
---|---|
date | Sun, 27 May 2012 13:54:03 +0200 |
parents | ca733a66be7a |
children | c952f1e35e50 |
line wrap: on
line diff
--- a/gui/src/MainWindow.cpp +++ b/gui/src/MainWindow.cpp @@ -66,8 +66,8 @@ QString selectedFile = QFileDialog::getSaveFileName (this, tr ("Save Workspace"), ResourceManager::instance ()->homePath ()); - m_terminalView->sendText (QString ("save \'%1\'\n").arg (selectedFile)); - m_terminalView->setFocus (); + m_terminal->sendText (QString ("save \'%1\'\n").arg (selectedFile)); + m_terminal->setFocus (); } void @@ -78,23 +78,23 @@ ResourceManager::instance ()->homePath ()); if (!selectedFile.isEmpty ()) { - m_terminalView->sendText (QString ("load \'%1\'\n").arg (selectedFile)); - m_terminalView->setFocus (); + m_terminal->sendText (QString ("load \'%1\'\n").arg (selectedFile)); + m_terminal->setFocus (); } } void MainWindow::handleClearWorkspaceRequest () { - m_terminalView->sendText ("clear\n"); - m_terminalView->setFocus (); + m_terminal->sendText ("clear\n"); + m_terminal->setFocus (); } void MainWindow::handleCommandDoubleClicked (QString command) { - m_terminalView->sendText(command); - m_terminalView->setFocus (); + m_terminal->sendText(command); + m_terminal->setFocus (); } void @@ -134,7 +134,7 @@ //font.setStyleHint(QFont::TypeWriter); font.setFamily(settings->value("terminal/fontName").toString()); font.setPointSize(settings->value("terminal/fontSize").toInt ()); - m_terminalView->setTerminalFont(font); + m_terminal->setTerminalFont(font); } void @@ -217,10 +217,12 @@ m_currentDirectoryUpToolButton->setIcon (style->standardIcon (QStyle::SP_FileDialogToParent)); // Octave Terminal subwindow. - m_terminalView = new QTerminal(this); - setCentralWidget (m_terminalView); + m_terminal = new QTerminal(this); + m_terminalDockWidget = new TerminalDockWidget (m_terminal, this); - m_fileEditor = new FileEditor (m_terminalView, this); + //setCentralWidget (new QWidget (this)); + + m_fileEditor = new FileEditor (m_terminal, this); QMenu *fileMenu = menuBar ()->addMenu (tr ("&File")); QAction *newFileAction @@ -271,6 +273,8 @@ // Window menu QMenu *windowMenu = menuBar ()->addMenu (tr ("&Window")); + QAction *showCommandWindowAction = windowMenu->addAction (tr ("Command Window")); + showCommandWindowAction->setCheckable (true); QAction *showWorkspaceAction = windowMenu->addAction (tr ("Workspace")); showWorkspaceAction->setCheckable (true); QAction *showHistoryAction = windowMenu->addAction (tr ("History")); @@ -313,6 +317,8 @@ connect (octaveForgeAction, SIGNAL (triggered ()), this, SLOT (openOctaveForgePage ())); connect (aboutOctaveAction, SIGNAL (triggered ()), this, SLOT (showAboutOctave ())); + connect (showCommandWindowAction, SIGNAL (toggled (bool)), m_terminalDockWidget, SLOT (setShown (bool))); + connect (m_terminalDockWidget, SIGNAL (activeChanged (bool)), showCommandWindowAction, SLOT (setChecked (bool))); connect (showWorkspaceAction, SIGNAL (toggled (bool)), m_workspaceView, SLOT (setShown (bool))); connect (m_workspaceView, SIGNAL (activeChanged (bool)), showWorkspaceAction, SLOT (setChecked (bool))); connect (showHistoryAction, SIGNAL (toggled (bool)), m_historyDockWidget, SLOT (setShown (bool))); @@ -333,8 +339,8 @@ connect (loadWorkspaceAction, SIGNAL (triggered ()), this, SLOT (handleLoadWorkspaceRequest ())); connect (clearWorkspaceAction, SIGNAL (triggered ()), this, SLOT (handleClearWorkspaceRequest ())); - connect (copyAction, SIGNAL (triggered()), m_terminalView, SLOT(copyClipboard ())); - connect (pasteAction, SIGNAL (triggered()), m_terminalView, SLOT(pasteClipboard ())); + connect (copyAction, SIGNAL (triggered()), m_terminal, SLOT(copyClipboard ())); + connect (pasteAction, SIGNAL (triggered()), m_terminal, SLOT(pasteClipboard ())); setWindowTitle ("Octave"); setDockOptions(QMainWindow::AnimatedDocks | QMainWindow::AllowNestedDocks | QMainWindow::AllowTabbedDocks); @@ -343,6 +349,7 @@ addDockWidget (Qt::LeftDockWidgetArea, m_historyDockWidget); addDockWidget (Qt::RightDockWidgetArea, m_filesDockWidget); addDockWidget (Qt::BottomDockWidgetArea, m_fileEditor); + addDockWidget (Qt::BottomDockWidgetArea, m_terminalDockWidget); setStatusBar (m_statusBar); readSettings ();