#ifndef SQUAWK_H #define SQUAWK_H #include #include #include #include #include #include "accounts.h" #include "models/roster.h" #include "../global.h" namespace Ui { class Squawk; } class Squawk : public QMainWindow { Q_OBJECT public: explicit Squawk(QWidget *parent = nullptr); ~Squawk() override; signals: void newAccountRequest(const QMap&); void connectAccount(const QString&); void disconnectAccount(const QString&); public slots: void newAccount(const QMap& account); void accountConnectionStateChanged(const QString& account, int state); void addGroup(const QString& account, const QString& name); void removeGroup(const QString& account, const QString& name); void addContact(const QString& account, const QString& jid, const QString& name, const QString& group); void removeContact(const QString& account, const QString& jid, const QString& group); void removeContact(const QString& account, const QString& jid); void changeContact(const QString& account, const QString& jid, const QString& name); private: QScopedPointer m_ui; Accounts* accounts; Models::Roster rosterModel; protected: void closeEvent(QCloseEvent * event) override; private slots: void onAccounts(); void onAccountsClosed(QObject* parent = 0); void onComboboxActivated(int index); }; #endif // SQUAWK_H