X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fcoreinfodlg.h;h=458c6e0b5a4f89f9754315d1b1e2f8db03c38e62;hp=8b9e0a152e5b0a54ff979c04d048598ff80fb007;hb=00e1a9c29e792ba4d65dba21b7ba04131bcb13bc;hpb=921e54680da16fcf2adb7a90506875aceb6633a4 diff --git a/src/qtui/coreinfodlg.h b/src/qtui/coreinfodlg.h index 8b9e0a15..458c6e0b 100644 --- a/src/qtui/coreinfodlg.h +++ b/src/qtui/coreinfodlg.h @@ -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 * @@ -18,35 +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