X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fcoreinfodlg.h;h=458c6e0b5a4f89f9754315d1b1e2f8db03c38e62;hb=6fd69e84e6c395a108e6b2620c6428907b7d7efd;hp=038c42703a9fef3d305db8333fdcf6f61300cc18;hpb=68878dc8366f2f4a0afe132847aad9a51a80cdbf;p=quassel.git diff --git a/src/qtui/coreinfodlg.h b/src/qtui/coreinfodlg.h index 038c4270..458c6e0b 100644 --- a/src/qtui/coreinfodlg.h +++ b/src/qtui/coreinfodlg.h @@ -18,36 +18,52 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ -#ifndef COREINFODLG_H -#define COREINFODLG_H +#pragma once -#include "ui_coreinfodlg.h" #include -#include "clientcoreinfo.h" +#include "ui_coreinfodlg.h" +#include "coreinfo.h" +#include "coresessionwidget.h" -class CoreInfoDlg : public QDialog -{ - Q_OBJECT +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 _widgets; }; - - -#endif //COREINFODLG_H