diff options
-rw-r--r-- | src/fbgui.cpp | 49 | ||||
-rw-r--r-- | src/fbgui.h | 8 |
2 files changed, 30 insertions, 27 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 diff --git a/src/fbgui.h b/src/fbgui.h index fc9a86b..be0cf4e 100644 --- a/src/fbgui.h +++ b/src/fbgui.h @@ -45,10 +45,14 @@ private: void createActions(); void checkHost() const; - QAction* _act; + QSplitter* _splitter; + QWebView* _webView; + logViewer* _logView; + + QAction* _toggleDebug; private slots: - void testAct(); + void toggleDebug(); }; |