Mercurial > octave-nkf
view libgui/src/terminal-dock-widget.cc @ 16639:ba808cd9d86c
simplify QTerminal inheritance scheme
* Qterminal.h, Qterminal.cc: Merge QTerminalInterface class into
QTerminal.
(QTerminal::create): New function.
(QTerminal::Qterminal): Now protected.
* QUnixTerminal.h, QUnixTerminal.cpp, QWinTerminal.h,
QWinTerminal.cpp: Derive from QTerminal, not QTerminalInterface.
* QTerminalInterface.h: Delete.
* libgui/qterminal-module.mk: Update file lists.
* terminal-dock-widget.cc
(terminal_dock_widget::terminal_dock_widget): Use QTerminal::create to
create terminal object.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Sun, 12 May 2013 15:23:14 -0400 |
parents | 999400bebe5e |
children | b04413e5a811 |
line wrap: on
line source
/* Copyright (C) 2013 John W. Eaton Copyright (C) 2011-2012 Jacob Dawid This file is part of Octave. Octave is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. Octave is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Octave; see the file COPYING. If not, see <http://www.gnu.org/licenses/>. */ #ifdef HAVE_CONFIG_H #include <config.h> #endif #include "terminal-dock-widget.h" terminal_dock_widget::terminal_dock_widget (QWidget *p) : octave_dock_widget (p), terminal (QTerminal::create (p)) { terminal->setObjectName ("OctaveTerminal"); terminal->setFocusPolicy (Qt::StrongFocus); setObjectName ("TerminalDockWidget"); setWindowIcon (QIcon(":/actions/icons/logo.png")); setWindowTitle (tr ("Command Window")); setWidget (terminal); connect (this, SIGNAL (visibilityChanged (bool)), this, SLOT (handle_visibility (bool))); // Forward signals to QTerminal widget. connect (this, SIGNAL (notice_settings_signal (const QSettings *)), terminal, SLOT (notice_settings (const QSettings *))); connect (this, SIGNAL (copyClipboard_signal (void)), terminal, SLOT (copyClipboard (void))); connect (this, SIGNAL (pasteClipboard_signal (void)), terminal, SLOT (pasteClipboard (void))); } bool terminal_dock_widget::has_focus (void) const { QWidget *w = widget (); return w->hasFocus (); } void terminal_dock_widget::notice_settings (const QSettings *settings) { emit notice_settings_signal (settings); } void terminal_dock_widget::copyClipboard (void) { emit copyClipboard_signal (); } void terminal_dock_widget::pasteClipboard (void) { emit pasteClipboard_signal (); } void terminal_dock_widget::focus (void) { octave_dock_widget::focus (); QWidget *w = widget (); w->setFocus (); w->activateWindow (); w->raise (); }