diff options
author | Jonathan Bauer | 2011-03-18 11:54:30 +0100 |
---|---|---|
committer | Jonathan Bauer | 2011-03-18 11:54:30 +0100 |
commit | 5bbb57c9e992c413c094cf33db653bdc63fbe69c (patch) | |
tree | 7419ddfce638c7ad0503c38c160c3cd7f4416e70 /src/fbgui.cpp | |
parent | layout: logViewer as a bottom widget, resizeable, toggle with crtl + D, stil ... (diff) | |
download | fbgui-5bbb57c9e992c413c094cf33db653bdc63fbe69c.tar.gz fbgui-5bbb57c9e992c413c094cf33db653bdc63fbe69c.tar.xz fbgui-5bbb57c9e992c413c094cf33db653bdc63fbe69c.zip |
layout: using QSplitter to split webView/logView in the main window, seems better
Diffstat (limited to 'src/fbgui.cpp')
-rw-r--r-- | src/fbgui.cpp | 49 |
1 files changed, 24 insertions, 25 deletions
diff --git a/src/fbgui.cpp b/src/fbgui.cpp index 52462cb..ac095f1 100644 --- a/src/fbgui.cpp +++ b/src/fbgui.cpp @@ -9,7 +9,7 @@ #include <QtWebKit> QUrl baseURL(DEFAULT_URL); -QString binPath(QApplication::applicationDirPath()); +QString binPath(""); QString downloadPath("/tmp/fbgui/downloads"); int updateInterval = DEFAULT_UPDATE_INTERVAL; bool debug = false; @@ -18,28 +18,17 @@ bool debug = false; fbgui::fbgui() { /* TEST CODE */ - logViewer *logView = new logViewer(this); - /* Dock widget to place logView on bottom */ - QDockWidget *dw = new QDockWidget(QString("debug console"), this); - dw->setAllowedAreas(Qt::BottomDockWidgetArea); - dw->setWidget(logView); - /* Create toggle action (F4) and add to fbgui's action list */ - QAction *toggleLog = dw->toggleViewAction(); - toggleLog->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_D)); - this->addAction(toggleLog); - /* Dock logView to bottom */ - addDockWidget(Qt::BottomDockWidgetArea, dw); - + _logView = new logViewer(this); /* initialize "browser" */ checkHost(); - QWebView *webView = new QWebView(this); - webView->load(baseURL); + _webView = new QWebView(this); + _webView->load(baseURL); /* initialize javascript interface */ - javascriptInterface* jsi = new javascriptInterface(webView->page()->mainFrame()); + javascriptInterface* jsi = new javascriptInterface(_webView->page()->mainFrame()); QObject::connect(jsi, SIGNAL(quitFbgui()), this, SLOT(close())); - QObject::connect(webView->page()->mainFrame(), SIGNAL(javaScriptWindowObjectCleared()), + QObject::connect(_webView->page()->mainFrame(), SIGNAL(javaScriptWindowObjectCleared()), jsi, SLOT(attachToDOM())); /* initialize download manager */ @@ -51,24 +40,34 @@ fbgui::fbgui() jsi, SLOT(updateProgressBar(int, double, QString))); QObject::connect(dm, SIGNAL(downloadQueueEmpty()), jsi, SLOT(callbackOnDlQueueFinished())); + /* TEST */ + _splitter = new QSplitter(Qt::Vertical, this); + _splitter->addWidget(_webView); + _splitter->addWidget(_logView); + createActions(); + /* TEST */ setWindowTitle("fbgui"); setAttribute(Qt::WA_QuitOnClose, true); setWindowFlags(Qt::FramelessWindowHint); - setCentralWidget(webView); + setCentralWidget(_splitter); showFullScreen(); - } //------------------------------------------------------------------------------------------- void fbgui::createActions(){ - _act = new QAction(tr("&test"), this); - _act->setShortcut(QKeySequence(Qt::Key_F5)); - this->addAction(_act); - connect(_act, SIGNAL(triggered()), this, SLOT(testAct())); + /* CTRL + D: toggle debug window */ + _toggleDebug = new QAction(tr("&test"), this); + _toggleDebug->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_D)); + _splitter->addAction(_toggleDebug); + connect(_toggleDebug, SIGNAL(triggered()), this, SLOT(toggleDebug())); } //------------------------------------------------------------------------------------------- -void fbgui::testAct(){ - qDebug() << "Action triggered!"; +void fbgui::toggleDebug(){ + if (_logView->isVisibleTo(_splitter)) + _logView->hide(); + else + _logView->show(); + } //------------------------------------------------------------------------------------------- void fbgui::checkHost() const |