modernize: Don't use apparent connect-by-name slots in MainWin
[quassel.git] / src / qtui / mainwin.h
index e5b6ba2..58e4be4 100644 (file)
@@ -22,9 +22,7 @@
 
 #include <QUuid>
 
-#ifdef HAVE_KDE4
-#  include <KMainWindow>
-#elif defined HAVE_KF5
+#ifdef HAVE_KF5
 #  include <KXmlGui/KMainWindow>
 #else
 #  include <QMainWindow>
@@ -67,8 +65,7 @@ class MainWin
     Q_OBJECT
 
 public:
-    MainWin(QWidget *parent = 0);
-    virtual ~MainWin();
+    MainWin(QWidget *parent = nullptr);
 
     void init();
 
@@ -79,7 +76,7 @@ public:
     inline BufferWidget *bufferWidget() const { return _bufferWidget; }
     inline SystemTray *systemTray() const { return _systemTray; }
 
-    bool event(QEvent *event);
+    bool event(QEvent *event) override;
 
     static void flagRemoteCoreOnly(QObject *object) { object->setProperty("REMOTE_CORE_ONLY", true); }
     static bool isRemoteCoreOnly(QObject *object) { return object->property("REMOTE_CORE_ONLY").toBool(); }
@@ -88,7 +85,7 @@ public:
     void restoreStateFromSettings(UiSettings &);
 
     // We need to override this to add the show/hide menu bar option
-    virtual QMenu *createPopupMenu();
+    QMenu *createPopupMenu() override;
 
 public slots:
     void showStatusBarMessage(const QString &message);
@@ -100,13 +97,12 @@ public slots:
 
     void showMigrationWarning(bool show);
 
-    //! Quit application
-    void quit();
+    void onExitRequested(const QString &reason);
 
 protected:
-    void closeEvent(QCloseEvent *event);
-    void moveEvent(QMoveEvent *event);
-    void resizeEvent(QResizeEvent *event);
+    void closeEvent(QCloseEvent *event) override;
+    void moveEvent(QMoveEvent *event) override;
+    void resizeEvent(QResizeEvent *event) override;
 
 protected slots:
     void connectedToCore();
@@ -121,7 +117,17 @@ private slots:
     void currentBufferChanged(BufferId);
     void messagesInserted(const QModelIndex &parent, int start, int end);
     void showAboutDlg();
-    void showChannelList(NetworkId netId = NetworkId());
+
+    /**
+     * Show the channel list dialog for the network, optionally searching by channel name
+     *
+     * @param networkId        Network ID for associated network
+     * @param channelFilters   Partial channel name to search for, or empty to show all
+     * @param listImmediately  If true, immediately list channels, otherwise just show dialog
+     */
+    void showChannelList(NetworkId netId = {}, const QString &channelFilters = {},
+                         bool listImmediately = false);
+
     void showNetworkConfig(NetworkId netId = NetworkId());
     void showCoreConnectionDlg();
     void showCoreConfigWizard(const QVariantList &, const QVariantList &);
@@ -145,59 +151,60 @@ private slots:
     void handleSslErrors(const QSslSocket *socket, bool *accepted, bool *permanently);
 #endif
 
-    void on_actionConfigureNetworks_triggered();
-    void on_actionConfigureViews_triggered();
-    void on_actionLockLayout_toggled(bool lock);
+    void onConfigureNetworksTriggered();
+    void onConfigureViewsTriggered();
+    void onLockLayoutToggled(bool lock);
 
     /**
      * Apply the active color to the input widget selected or typed text
      *
      * @seealso InputWidget::applyFormatActiveColor()
      */
-    void on_inputFormatApplyColor_triggered();
+    void onFormatApplyColorTriggered();
 
     /**
      * Apply the active fill color to the input widget selected or typed text background
      *
      * @seealso InputWidget::applyFormatActiveColorFill()
      */
-    void on_inputFormatApplyColorFill_triggered();
+    void onFormatApplyColorFillTriggered();
 
     /**
      * Toggle the boldness of the input widget selected or typed text
      *
      * @seealso InputWidget::toggleFormatBold()
      */
-    void on_inputFormatBold_triggered();
+    void onFormatBoldTriggered();
 
     /**
      * Toggle the italicness of the input widget selected or typed text
      *
      * @seealso InputWidget::toggleFormatItalic()
      */
-    void on_inputFormatItalic_triggered();
+    void onFormatItalicTriggered();
 
     /**
      * Toggle the underlining of the input widget selected or typed text
      *
      * @seealso InputWidget::toggleFormatUnderline()
      */
-    void on_inputFormatUnderline_triggered();
+    void onFormatUnderlineTriggered();
 
     /**
      * Clear the formatting of the input widget selected or typed text
      *
      * @seealso InputWidget::clearFormat()
      */
-    void on_inputFormatClear_triggered();
+    void onFormatClearTriggered();
 
-    void on_jumpHotBuffer_triggered();
-    void on_bufferSearch_triggered();
-    void on_actionDebugNetworkModel_triggered();
-    void on_actionDebugBufferViewOverlay_triggered();
-    void on_actionDebugMessageModel_triggered();
-    void on_actionDebugHotList_triggered();
-    void on_actionDebugLog_triggered();
+    void onJumpHotBufferTriggered();
+    void onBufferSearchTriggered();
+    void onDebugNetworkModelTriggered();
+    void onDebugBufferViewOverlayTriggered();
+    void onDebugMessageModelTriggered();
+    void onDebugHotListTriggered();
+    void onDebugLogTriggered();
+    void onShowResourceTreeTriggered();
 
     void bindJumpKey();
     void onJumpKey();
@@ -259,25 +266,25 @@ private:
     ChatMonitorView *_chatMonitorView;
     TopicWidget *_topicWidget;
 
-    QAction *_fullScreenAction;
+    QAction *_fullScreenAction{nullptr};
     QMenu *_fileMenu, *_networksMenu, *_viewMenu, *_bufferViewsMenu, *_settingsMenu, *_helpMenu, *_helpDebugMenu;
     QMenu *_toolbarMenu;
     QToolBar *_mainToolBar, *_chatViewToolBar, *_nickToolBar;
 
-    QWidget *_awayLog;
+    QWidget *_awayLog{nullptr};
 
     QMessageBox* _migrationWarning{nullptr};
 
-    bool _layoutLoaded;
+    bool _layoutLoaded{false};
 
     QSize _normalSize; //!< Size of the non-maximized window
     QPoint _normalPos; //!< Position of the non-maximized window
 
     BufferHotListFilter *_bufferHotList;
     QHash<int, BufferId> _jumpKeyMap;
-    int _activeBufferViewIndex;
+    int _activeBufferViewIndex{-1};
 
-    bool _aboutToQuit; //closeEvent can occur multiple times on OSX
+    bool _aboutToQuit{false}; //closeEvent can occur multiple times on OSX
 
     friend class QtUi;
 };