# HG changeset patch # User Michael Goffioul # Date 1328194882 0 # Node ID 5758e00132468fed8bfe25a8dc47cae1d1b48c9a # Parent ccef87280af694f5c6dc94af13d2090f4d166bd0 Enable compilation on Win32-native platform. diff -r ccef87280af6 -r 5758e0013246 .gitignore --- a/.gitignore Tue Jan 31 15:36:05 2012 +0100 +++ b/.gitignore Thu Feb 02 15:01:22 2012 +0000 @@ -3,3 +3,6 @@ *.o *.a Makefile* +*.pdb +debug/ +release/ diff -r ccef87280af6 -r 5758e0013246 libqterminal/QTerminal.h --- a/libqterminal/QTerminal.h Tue Jan 31 15:36:05 2012 +0100 +++ b/libqterminal/QTerminal.h Thu Feb 02 15:01:22 2012 +0000 @@ -23,7 +23,9 @@ #ifndef QTERMINAL_H #define QTERMINAL_H -#ifdef __WIN32 +#include + +#ifdef Q_OS_WIN32 #include "win32/QWinTerminalImpl.h" class QTerminal : public QWinTerminalImpl { diff -r ccef87280af6 -r 5758e0013246 libqterminal/QTerminalInterface.h --- a/libqterminal/QTerminalInterface.h Tue Jan 31 15:36:05 2012 +0100 +++ b/libqterminal/QTerminalInterface.h Thu Feb 02 15:01:22 2012 +0000 @@ -32,18 +32,13 @@ QTerminalInterface(QWidget *parent = 0) : QWidget(parent) { } virtual ~QTerminalInterface() { } - virtual void setTerminalFont(QFont &font) = 0; + virtual void setTerminalFont(const QFont& font) = 0; virtual void setSize(int h, int v) = 0; - virtual void sendText(QString text) = 0; + virtual void sendText(const QString& text) = 0; public slots: virtual void copyClipboard() = 0; virtual void pasteClipboard() = 0; - -protected: - virtual void focusInEvent(QFocusEvent *focusEvent) = 0; - virtual void showEvent(QShowEvent *) = 0; - virtual void resizeEvent(QResizeEvent *) = 0; }; #endif // QTERMINALINTERFACE_H diff -r ccef87280af6 -r 5758e0013246 libqterminal/libqterminal.pro --- a/libqterminal/libqterminal.pro Tue Jan 31 15:36:05 2012 +0100 +++ b/libqterminal/libqterminal.pro Thu Feb 02 15:01:22 2012 +0000 @@ -7,6 +7,8 @@ QT += core gui +INCLUDEPATH += . + unix { DEFINES += HAVE_POSIX_OPENPT diff -r ccef87280af6 -r 5758e0013246 libqterminal/unix/QUnixTerminalImpl.cpp --- a/libqterminal/unix/QUnixTerminalImpl.cpp Tue Jan 31 15:36:05 2012 +0100 +++ b/libqterminal/unix/QUnixTerminalImpl.cpp Thu Feb 02 15:01:22 2012 +0000 @@ -93,7 +93,7 @@ emit destroyed(); } -void QUnixTerminalImpl::setTerminalFont(QFont &font) +void QUnixTerminalImpl::setTerminalFont(const QFont &font) { if(!m_terminalView) return; @@ -107,7 +107,7 @@ m_terminalView->setSize(h, v); } -void QUnixTerminalImpl::sendText(QString text) +void QUnixTerminalImpl::sendText(const QString& text) { m_terminalModel->sendText(text); } diff -r ccef87280af6 -r 5758e0013246 libqterminal/unix/QUnixTerminalImpl.h --- a/libqterminal/unix/QUnixTerminalImpl.h Tue Jan 31 15:36:05 2012 +0100 +++ b/libqterminal/unix/QUnixTerminalImpl.h Thu Feb 02 15:01:22 2012 +0000 @@ -34,9 +34,9 @@ QUnixTerminalImpl(QWidget *parent = 0); virtual ~QUnixTerminalImpl(); - void setTerminalFont(QFont &font); + void setTerminalFont(const QFont &font); void setSize(int h, int v); - void sendText(QString text); + void sendText(const QString& text); public slots: void copyClipboard(); diff -r ccef87280af6 -r 5758e0013246 libqterminal/win32/QTerminalColors.cpp --- a/libqterminal/win32/QTerminalColors.cpp Tue Jan 31 15:36:05 2012 +0100 +++ b/libqterminal/win32/QTerminalColors.cpp Thu Feb 02 15:01:22 2012 +0000 @@ -22,7 +22,7 @@ #define WIN32_LEAN_AND_MEAN #include -#include "win32/QTerminalColors.h" +#include "QTerminalColors.h" ////////////////////////////////////////////////////////////////////////////// diff -r ccef87280af6 -r 5758e0013246 libqterminal/win32/QWinTerminalImpl.cpp --- a/libqterminal/win32/QWinTerminalImpl.cpp Tue Jan 31 15:36:05 2012 +0100 +++ b/libqterminal/win32/QWinTerminalImpl.cpp Thu Feb 02 15:01:22 2012 +0000 @@ -39,8 +39,8 @@ #include #include -#include "win32/QWinTerminalImpl.h" -#include "win32/QTerminalColors.h" +#include "QWinTerminalImpl.h" +#include "QTerminalColors.h" // Uncomment to log activity to LOGFILENAME // #define DEBUG_QCONSOLE @@ -48,6 +48,10 @@ // Uncomment to create hidden console window #define HIDDEN_CONSOLE +#ifdef _MSC_VER +# pragma warning(disable : 4996) +#endif + ////////////////////////////////////////////////////////////////////////////// class QConsoleView : public QWidget @@ -86,7 +90,7 @@ friend class QWinTerminalImpl; public: - QConsolePrivate (QUnixTerminalImpl* parent, const QString& cmd = QString ()); + QConsolePrivate (QWinTerminalImpl* parent, const QString& cmd = QString ()); ~QConsolePrivate (void); void updateConsoleSize (bool sync = false); @@ -135,7 +139,7 @@ ////////////////////////////////////////////////////////////////////////////// -QConsolePrivate::QConsolePrivate (QUnixTerminalImpl* parent, const QString& cmd) +QConsolePrivate::QConsolePrivate (QWinTerminalImpl* parent, const QString& cmd) : q (parent), m_command (cmd), m_process (NULL), m_inWheelEvent (false) { log (NULL); @@ -342,6 +346,8 @@ FILE* flog = fopen (LOGFILENAME, "w"); fclose (flog); } +#else + Q_UNUSED (fmt); #endif } @@ -599,7 +605,12 @@ void QConsolePrivate::startCommand (void) { - if (! m_command.isEmpty ()) + QString cmd = m_command; + + if (cmd.isEmpty ()) + cmd = qgetenv ("COMSPEC").constData (); + + if (! cmd.isEmpty ()) { STARTUPINFO si; PROCESS_INFORMATION pi; @@ -609,7 +620,7 @@ ZeroMemory (&pi, sizeof (pi)); if (CreateProcessW (NULL, - (LPWSTR)m_command.unicode (), + (LPWSTR)cmd.unicode (), NULL, NULL, TRUE, @@ -687,14 +698,14 @@ ////////////////////////////////////////////////////////////////////////////// QWinTerminalImpl::QWinTerminalImpl (QWidget* parent) - : d (new QConsolePrivate (this)) + : QTerminalInterface (parent), d (new QConsolePrivate (this)) { } ////////////////////////////////////////////////////////////////////////////// QWinTerminalImpl::QWinTerminalImpl (const QString& cmd, QWidget* parent) - : d (new QConsolePrivate (this, cmd)) + : QTerminalInterface (parent), d (new QConsolePrivate (this, cmd)) { } @@ -872,3 +883,29 @@ d->sendConsoleText (s); } +////////////////////////////////////////////////////////////////////////////// + +void QWinTerminalImpl::setTerminalFont (const QFont& f) +{ + Q_UNUSED (f); +} + +////////////////////////////////////////////////////////////////////////////// + +void QWinTerminalImpl::setSize (int columns, int lines) +{ + Q_UNUSED (columns); + Q_UNUSED (lines); +} + +////////////////////////////////////////////////////////////////////////////// + +void QWinTerminalImpl::copyClipboard (void) +{ +} + +////////////////////////////////////////////////////////////////////////////// + +void QWinTerminalImpl::pasteClipboard (void) +{ +} diff -r ccef87280af6 -r 5758e0013246 libqterminal/win32/QWinTerminalImpl.h --- a/libqterminal/win32/QWinTerminalImpl.h Tue Jan 31 15:36:05 2012 +0100 +++ b/libqterminal/win32/QWinTerminalImpl.h Thu Feb 02 15:01:22 2012 +0000 @@ -48,8 +48,14 @@ QWinTerminalImpl (const QString& cmd, QWidget* parent = 0); ~QWinTerminalImpl (void); + void setTerminalFont (const QFont& font); + void setSize (int columns, int lines); void sendText (const QString& s); +public slots: + void copyClipboard (void); + void pasteClipboard (void); + signals: void terminated (void); void titleChanged (const QString&); diff -r ccef87280af6 -r 5758e0013246 qterminal/qterminal.pro --- a/qterminal/qterminal.pro Tue Jan 31 15:36:05 2012 +0100 +++ b/qterminal/qterminal.pro Thu Feb 02 15:01:22 2012 +0000 @@ -6,8 +6,14 @@ SOURCES = main.cpp INCLUDEPATH = ../libqterminal -LIBS += -L../libqterminal -lqterminal -lutil - - - - +win32 { + win32-msvc* { + debug: LIBS += -L../libqterminal/debug + release: LIBS += -L../libqterminal/release + } else { + LIBS += -L../libqterminal + } + LIBS += -lqterminal -luser32 -lkernel32 +} else { + LIBS += -L../libqterminal -lqterminal -lutil +}