X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fmainwin.cpp;h=5f302a90ec955ee313f60080ac42695b8de09960;hb=5a94027ffed6c97b839a6104e2d572a876a995d8;hp=8b5bb1823c03223ad26d178f5ca3e469c35165ef;hpb=d2268cca78024ec7b67e1007dea41f87bef2fc4e;p=quassel.git diff --git a/src/qtui/mainwin.cpp b/src/qtui/mainwin.cpp index 8b5bb182..5f302a90 100644 --- a/src/qtui/mainwin.cpp +++ b/src/qtui/mainwin.cpp @@ -36,6 +36,7 @@ #include "coreconnectdlg.h" #include "iconloader.h" #include "inputwidget.h" +#include "inputline.h" #include "irclistmodel.h" #include "jumpkeyhandler.h" #include "msgprocessorstatuswidget.h" @@ -75,8 +76,8 @@ MainWin::MainWin(QWidget *parent) _trayIcon(new QSystemTrayIcon(this)) { QtUiSettings uiSettings; - QString style = uiSettings.value("Style", QString("")).toString(); - if(style != "") { + QString style = uiSettings.value("Style", QString()).toString(); + if(!style.isEmpty()) { QApplication::setStyle(style); } @@ -108,26 +109,26 @@ void MainWin::init() { connect(Client::instance(), SIGNAL(networkCreated(NetworkId)), SLOT(clientNetworkCreated(NetworkId))); connect(Client::instance(), SIGNAL(networkRemoved(NetworkId)), SLOT(clientNetworkRemoved(NetworkId))); + // Setup Dock Areas + setDockNestingEnabled(true); + setCorner(Qt::TopLeftCorner, Qt::LeftDockWidgetArea); + setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea); + setCorner(Qt::TopRightCorner, Qt::RightDockWidgetArea); + setCorner(Qt::BottomRightCorner, Qt::RightDockWidgetArea); + // Order is sometimes important setupActions(); setupBufferWidget(); setupMenus(); setupViews(); + setupTopicWidget(); setupChatMonitor(); setupNickWidget(); - setupTopicWidget(); setupInputWidget(); setupStatusBar(); setupSystray(); setupTitleSetter(); - // Setup Dock Areas - setDockNestingEnabled(true); - setCorner(Qt::TopLeftCorner, Qt::LeftDockWidgetArea); - setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea); - setCorner(Qt::TopRightCorner, Qt::RightDockWidgetArea); - setCorner(Qt::BottomRightCorner, Qt::RightDockWidgetArea); - // restore mainwin state restoreState(s.value("MainWinState").toByteArray()); @@ -358,6 +359,8 @@ void MainWin::setupInputWidget() { inputWidget->setSelectionModel(Client::bufferModel()->standardSelectionModel()); _bufferWidget->setFocusProxy(inputWidget); + + inputWidget->inputLine()->installEventFilter(_bufferWidget); } void MainWin::setupTopicWidget() { @@ -370,7 +373,7 @@ void MainWin::setupTopicWidget() { topicwidget->setModel(Client::bufferModel()); topicwidget->setSelectionModel(Client::bufferModel()->standardSelectionModel()); - addDockWidget(Qt::TopDockWidgetArea, dock); + addDockWidget(Qt::TopDockWidgetArea, dock, Qt::Vertical); _viewMenu->addAction(dock->toggleViewAction()); dock->toggleViewAction()->setText(tr("Show Topic Line")); @@ -399,7 +402,7 @@ void MainWin::setupStatusBar() { _viewMenu->addSeparator(); QAction *showStatusbar = QtUi::actionCollection("General")->action("ToggleStatusBar"); - UiSettings uiSettings; + QtUiSettings uiSettings; bool enabled = uiSettings.value("ShowStatusBar", QVariant(true)).toBool(); showStatusbar->setChecked(enabled); @@ -410,7 +413,7 @@ void MainWin::setupStatusBar() { } void MainWin::saveStatusBarStatus(bool enabled) { - UiSettings uiSettings; + QtUiSettings uiSettings; uiSettings.setValue("ShowStatusBar", enabled); } @@ -429,7 +432,7 @@ void MainWin::setupSystray() { systemTrayIcon()->setContextMenu(systrayMenu); - UiSettings s; + QtUiSettings s; if(s.value("UseSystemTrayIcon", QVariant(true)).toBool()) { systemTrayIcon()->show(); } @@ -444,7 +447,7 @@ void MainWin::setupSystray() { void MainWin::changeEvent(QEvent *event) { if(event->type() == QEvent::WindowStateChange) { if(windowState() & Qt::WindowMinimized) { - UiSettings s; + QtUiSettings s; if(s.value("UseSystemTrayIcon").toBool() && s.value("MinimizeOnMinimize").toBool()) { toggleVisibility(); event->ignore(); @@ -469,8 +472,7 @@ void MainWin::setConnectedState() { coll->action("ConnectCore")->setEnabled(false); coll->action("DisconnectCore")->setEnabled(true); coll->action("CoreInfo")->setEnabled(true); - _viewMenu->setEnabled(true); - _bufferWidget->show(); + // _viewMenu->setEnabled(true); statusBar()->showMessage(tr("Connected to core.")); if(sslLabel->width() == 0) sslLabel->setPixmap(SmallIcon("security-low")); @@ -526,8 +528,7 @@ void MainWin::setDisconnectedState() { coll->action("ConnectCore")->setEnabled(true); coll->action("DisconnectCore")->setEnabled(false); coll->action("CoreInfo")->setEnabled(false); - _viewMenu->setEnabled(false); - _bufferWidget->hide(); + //_viewMenu->setEnabled(false); statusBar()->showMessage(tr("Not connected to core.")); sslLabel->setPixmap(QPixmap()); updateIcon(); @@ -580,7 +581,7 @@ void MainWin::showAboutDlg() { } void MainWin::closeEvent(QCloseEvent *event) { - UiSettings s; + QtUiSettings s; if(s.value("UseSystemTrayIcon").toBool() && s.value("MinimizeOnClose").toBool()) { toggleVisibility(); event->ignore();