modernize: Reformat ALL the source... again!
[quassel.git] / src / qtui / coreinfodlg.h
index 8b9e0a1..6eaa32f 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2005-2015 by the Quassel Project                        *
+ *   Copyright (C) 2005-2018 by the Quassel Project                        *
  *   devel@quassel-irc.org                                                 *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.         *
  ***************************************************************************/
 
-#ifndef COREINFODLG_H
-#define COREINFODLG_H
+#pragma once
 
-#include "ui_coreinfodlg.h"
 #include <QDialog>
 
-#include "clientcoreinfo.h"
+#include "coreinfo.h"
+#include "coresessionwidget.h"
+
+#include "ui_coreinfodlg.h"
 
 class CoreInfoDlg : public QDialog
 {
     Q_OBJECT
 
 public:
-    CoreInfoDlg(QWidget *parent = 0);
+    explicit CoreInfoDlg(QWidget* parent = nullptr);
 
 public slots:
-    void coreInfoAvailable();
+    void coreInfoChanged(const QVariantMap&);
 
 protected:
-    virtual void timerEvent(QTimerEvent *) { updateUptime(); }
+    void timerEvent(QTimerEvent*) override { updateUptime(); }
 
 private slots:
+    /**
+     * Requests resynchronization of CoreInfo object for legacy (pre-0.13) cores
+     *
+     * This provides compatibility with updating core information for legacy cores, and can be
+     * removed after protocol break.
+     */
+    void refreshLegacyCoreInfo();
+
+    /**
+     * Handler for recreation of CoreInfo object, including first-time setup
+     *
+     * Applies existing CoreInfo information to the dialog, too.
+     */
+    void coreInfoResynchronized();
+
     void on_closeButton_clicked() { reject(); }
     void updateUptime();
+    void disconnectClicked(int peerId);
+
+    /**
+     * Event handler for core unspported Details button
+     */
+    void on_coreUnsupportedDetails_clicked();
 
 private:
     Ui::CoreInfoDlg ui;
-    ClientCoreInfo _coreInfo;
+    QMap<int, CoreSessionWidget*> _widgets;
 };
-
-
-#endif //COREINFODLG_H