X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fmainwin.cpp;h=0f99020e7666e767ae10883c827f11da27d8d3d8;hp=3fc4cb9680781eb71c77ee2ecb120117df6dda60;hb=3497660529f9fa912f4d46ca2da9e0c97310076c;hpb=bac817e9c9af8ea5f9ff90d8673310ec22a1cc88 diff --git a/src/qtui/mainwin.cpp b/src/qtui/mainwin.cpp index 3fc4cb96..0f99020e 100644 --- a/src/qtui/mainwin.cpp +++ b/src/qtui/mainwin.cpp @@ -146,6 +146,8 @@ #include "settingspages/connectionsettingspage.h" #include "settingspages/coreaccountsettingspage.h" #include "settingspages/coreconnectionsettingspage.h" +#include +#include "settingspages/dccsettingspage.h" #include "settingspages/highlightsettingspage.h" #include "settingspages/identitiessettingspage.h" #include "settingspages/ignorelistsettingspage.h" @@ -201,9 +203,11 @@ void MainWin::init() connect(Client::messageModel(), SIGNAL(rowsInserted(const QModelIndex &, int, int)), SLOT(messagesInserted(const QModelIndex &, int, int))); connect(GraphicalUi::contextMenuActionProvider(), SIGNAL(showChannelList(NetworkId)), SLOT(showChannelList(NetworkId))); + connect(Client::instance(), SIGNAL(showChannelList(NetworkId)), SLOT(showChannelList(NetworkId))); connect(GraphicalUi::contextMenuActionProvider(), SIGNAL(showIgnoreList(QString)), SLOT(showIgnoreList(QString))); + connect(Client::instance(), SIGNAL(showIgnoreList(QString)), SLOT(showIgnoreList(QString))); - connect(Client::coreConnection(), SIGNAL(startCoreSetup(QVariantList)), SLOT(showCoreConfigWizard(QVariantList))); + connect(Client::coreConnection(), SIGNAL(startCoreSetup(QVariantList, QVariantList)), SLOT(showCoreConfigWizard(QVariantList, QVariantList))); connect(Client::coreConnection(), SIGNAL(connectionErrorPopup(QString)), SLOT(handleCoreConnectionError(QString))); connect(Client::coreConnection(), SIGNAL(userAuthenticationRequired(CoreAccount *, bool *, QString)), SLOT(userAuthenticationRequired(CoreAccount *, bool *, QString))); connect(Client::coreConnection(), SIGNAL(handleNoSslInClient(bool *)), SLOT(handleNoSslInClient(bool *))); @@ -223,7 +227,7 @@ void MainWin::init() setupActions(); setupBufferWidget(); setupMenus(); - setupTransferWidget(); + // setupTransferWidget(); not ready yet setupChatMonitor(); setupTopicWidget(); setupInputWidget(); @@ -377,7 +381,7 @@ void MainWin::updateIcon() if (Client::isConnected()) icon = QIcon::fromTheme("quassel", QIcon(":/icons/quassel-128.png")); else - icon = QIcon::fromTheme("quassel-inactive", QIcon(":/icons/quassel-128.png")); + icon = QIcon::fromTheme("inactive-quassel", QIcon(":/icons/inactive-quassel.png")); setWindowIcon(icon); qApp->setWindowIcon(icon); } @@ -387,9 +391,9 @@ void MainWin::setupActions() { ActionCollection *coll = QtUi::actionCollection("General", tr("General")); // File - coll->addAction("ConnectCore", new Action(QIcon(":/icons/quassel-128.png"), tr("&Connect to Core..."), coll, + coll->addAction("ConnectCore", new Action(QIcon::fromTheme("connect-quassel", QIcon(":/icons/connect-quassel.png")), tr("&Connect to Core..."), coll, this, SLOT(showCoreConnectionDlg()))); - coll->addAction("DisconnectCore", new Action(QIcon(":/icons/quassel-disconnect.png"), tr("&Disconnect from Core"), coll, + coll->addAction("DisconnectCore", new Action(QIcon::fromTheme("disconnect-quassel", QIcon(":/icons/disconnect-quassel.png")), tr("&Disconnect from Core"), coll, Client::instance(), SLOT(disconnectFromCore()))); coll->addAction("ChangePassword", new Action(QIcon::fromTheme("dialog-password"), tr("Change &Password..."), coll, this, SLOT(showPasswordChangeDlg()))); @@ -653,6 +657,8 @@ void MainWin::addBufferView(ClientBufferViewConfig *config) Client::bufferModel()->synchronizeView(view); + dock->setLocked(QtUiSettings().value("LockLayout", false).toBool()); + dock->setWidget(view); dock->setVisible(_layoutLoaded); // don't show before state has been restored @@ -771,7 +777,7 @@ void MainWin::changeActiveBufferView(int bufferViewId) void MainWin::showPasswordChangeDlg() { - if((Client::coreFeatures() & Quassel::PasswordChange)) { + if(Client::isCoreFeatureEnabled(Quassel::Feature::PasswordChange)) { PasswordChangeDlg dlg(this); dlg.exec(); } @@ -880,11 +886,26 @@ void MainWin::on_actionLockLayout_toggled(bool lock) foreach(VerticalDock *dock, docks) { dock->showTitle(!lock); } + + QList nickdocks = findChildren(); + foreach(NickListDock *nickdock, nickdocks) { + nickdock->setLocked(lock); + } + + QList bufferdocks = findChildren(); + foreach(BufferViewDock *bufferdock, bufferdocks) { + bufferdock->setLocked(lock); + } + if (Client::bufferViewManager()) { foreach(ClientBufferViewConfig *config, Client::bufferViewManager()->clientBufferViewConfigs()) { config->setLocked(lock); } } + + _mainToolBar->setMovable(!lock); + _nickToolBar->setMovable(!lock); + QtUiSettings().setValue("LockLayout", lock); } @@ -895,6 +916,7 @@ void MainWin::setupNickWidget() NickListDock *nickDock = new NickListDock(tr("Nicks"), this); nickDock->setObjectName("NickDock"); nickDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea); + nickDock->setLocked(QtUiSettings().value("LockLayout", false).toBool()); _nickListWidget = new NickListWidget(nickDock); nickDock->setWidget(_nickListWidget); @@ -1091,6 +1113,8 @@ void MainWin::setupToolBars() _mainToolBar->addAction(coll->action("DisconnectCore")); } + _mainToolBar->setMovable(!QtUiSettings().value("LockLayout", false).toBool()); + QtUi::toolBarActionProvider()->addActions(_mainToolBar, ToolBarActionProvider::MainToolBar); _toolbarMenu->addAction(_mainToolBar->toggleViewAction()); @@ -1103,6 +1127,7 @@ void MainWin::setupToolBars() _nickToolBar->setWindowTitle(tr("Nick Toolbar")); _nickToolBar->setVisible(false); //default: not visible addToolBar(_nickToolBar); + _nickToolBar->setMovable(!QtUiSettings().value("LockLayout", false).toBool()); QtUi::toolBarActionProvider()->addActions(_nickToolBar, ToolBarActionProvider::NickToolBar); _toolbarMenu->addAction(_nickToolBar->toggleViewAction()); @@ -1365,9 +1390,9 @@ void MainWin::showCoreConnectionDlg() } -void MainWin::showCoreConfigWizard(const QVariantList &backends) +void MainWin::showCoreConfigWizard(const QVariantList &backends, const QVariantList &authenticators) { - CoreConfigWizard *wizard = new CoreConfigWizard(Client::coreConnection(), backends, this); + CoreConfigWizard *wizard = new CoreConfigWizard(Client::coreConnection(), backends, authenticators, this); wizard->show(); } @@ -1441,6 +1466,7 @@ void MainWin::showSettingsDlg() dlg->registerSettingsPage(new SonnetSettingsPage(dlg)); #endif dlg->registerSettingsPage(new HighlightSettingsPage(dlg)); + dlg->registerSettingsPage(new CoreHighlightSettingsPage(dlg)); dlg->registerSettingsPage(new NotificationsSettingsPage(dlg)); dlg->registerSettingsPage(new BacklogSettingsPage(dlg)); @@ -1450,6 +1476,7 @@ void MainWin::showSettingsDlg() dlg->registerSettingsPage(new NetworksSettingsPage(dlg)); dlg->registerSettingsPage(new AliasesSettingsPage(dlg)); dlg->registerSettingsPage(new IgnoreListSettingsPage(dlg)); + // dlg->registerSettingsPage(new DccSettingsPage(dlg)); not ready yet // Category: Remote Cores if (Quassel::runMode() != Quassel::Monolithic) {