diff libgui/qterminal/libqterminal/QTerminal.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 818eef7b2618
children 0ee7b4d1b940
line wrap: on
line diff
--- a/libgui/qterminal/libqterminal/QTerminal.cc
+++ b/libgui/qterminal/libqterminal/QTerminal.cc
@@ -22,6 +22,22 @@
 
 #include "QTerminal.h"
 
+#if defined (Q_OS_WIN32)
+# include "win32/QWinTerminalImpl.h"
+#else
+# include "unix/QUnixTerminalImpl.h"
+#endif
+
+QTerminal *
+QTerminal::create (QWidget *xparent)
+{
+#if defined (Q_OS_WIN32)
+  return new QWinTerminalImpl (xparent);
+#else
+  return new QUnixTerminalImpl (xparent);
+#endif
+}
+
 void
 QTerminal::notice_settings (const QSettings *settings)
 {
@@ -36,11 +52,11 @@
   QString cursorType = settings->value ("terminal/cursorType","ibeam").toString ();
   bool cursorBlinking = settings->value ("terminal/cursorBlinking",true).toBool ();
   if (cursorType == "ibeam")
-    setCursorType(QTerminalInterface::IBeamCursor, cursorBlinking);
+    setCursorType(QTerminal::IBeamCursor, cursorBlinking);
   else if (cursorType == "block")
-    setCursorType(QTerminalInterface::BlockCursor, cursorBlinking);
+    setCursorType(QTerminal::BlockCursor, cursorBlinking);
   else if (cursorType == "underline")
-    setCursorType(QTerminalInterface::UnderlineCursor, cursorBlinking);
+    setCursorType(QTerminal::UnderlineCursor, cursorBlinking);
 
   bool cursorUseForegroundColor
     = settings->value ("terminal/cursorUseForegroundColor",true).toBool ();