X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fmainwin.cpp;h=27ac628d58d06aae6da9ff6930ed2ed0c2474b9b;hp=7c75310dc5351eb930966b5a5a95e6d80c464f1a;hb=9dfd2abe3811975b464264e5c5a73568d9ef106b;hpb=a540a0285feef171e16fd6225b0e045fc5fc52e4 diff --git a/src/qtui/mainwin.cpp b/src/qtui/mainwin.cpp index 7c75310d..27ac628d 100644 --- a/src/qtui/mainwin.cpp +++ b/src/qtui/mainwin.cpp @@ -63,6 +63,7 @@ #include "sessionsettings.h" #include "settingsdlg.h" #include "settingspagedlg.h" +#include "toolbaractionprovider.h" #include "topicwidget.h" #include "verticaldock.h" @@ -153,6 +154,7 @@ void MainWin::init() { setupNickWidget(); setupInputWidget(); setupStatusBar(); + setupToolBars(); setupSystray(); setupTitleSetter(); @@ -221,6 +223,7 @@ void MainWin::setupActions() { // View coll->addAction("ConfigureBufferViews", new Action(tr("&Configure Buffer Views..."), coll, this, SLOT(on_actionConfigureViews_triggered()))); + QAction *lockAct = coll->addAction("LockDockPositions", new Action(tr("&Lock Dock Positions"), coll)); lockAct->setCheckable(true); connect(lockAct, SIGNAL(toggled(bool)), SLOT(on_actionLockDockPositions_toggled(bool))); @@ -274,6 +277,7 @@ void MainWin::setupMenus() { _viewMenu = menuBar()->addMenu(tr("&View")); _bufferViewsMenu = _viewMenu->addMenu(tr("&Buffer Views")); _bufferViewsMenu->addAction(coll->action("ConfigureBufferViews")); + _toolbarMenu = _viewMenu->addMenu(tr("&Toolbars")); _viewMenu->addSeparator(); _viewMenu->addAction(coll->action("ToggleSearchBar")); @@ -520,6 +524,27 @@ void MainWin::setupSystray() { #endif } +void MainWin::setupToolBars() { + connect(_bufferWidget, SIGNAL(currentChanged(QModelIndex)), + QtUi::toolBarActionProvider(), SLOT(currentBufferChanged(QModelIndex))); + connect(_nickListWidget, SIGNAL(nickSelectionChanged(QModelIndexList)), + QtUi::toolBarActionProvider(), SLOT(nickSelectionChanged(QModelIndexList))); + + _mainToolBar = addToolBar("Main Toolbar"); + _mainToolBar->setObjectName("MainToolBar"); + QtUi::toolBarActionProvider()->addActions(_mainToolBar, ToolBarActionProvider::MainToolBar); + _toolbarMenu->addAction(_mainToolBar->toggleViewAction()); + + //_nickToolBar = addToolBar("User"); + //_nickToolBar->setObjectName("NickToolBar"); + //QtUi::toolBarActionProvider()->addActions(_nickToolBar, ToolBarActionProvider::NickToolBar); + +#ifdef HAVE_KDE + _mainToolBar->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + //_nickToolBar->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); +#endif +} + void MainWin::changeEvent(QEvent *event) { if(event->type() == QEvent::WindowStateChange) { if(windowState() & Qt::WindowMinimized) { @@ -565,6 +590,8 @@ void MainWin::setConnectedState() { // _viewMenu->setEnabled(true); if(!Client::internalCore()) statusBar()->showMessage(tr("Connected to core.")); + else + statusBar()->clearMessage(); if(Client::signalProxy()->isSecure()) { sslLabel->setPixmap(SmallIcon("security-high"));