diff options
Diffstat (limited to 'Swift/QtUI/QtSingleWindow.h')
-rw-r--r-- | Swift/QtUI/QtSingleWindow.h | 69 |
1 files changed, 43 insertions, 26 deletions
diff --git a/Swift/QtUI/QtSingleWindow.h b/Swift/QtUI/QtSingleWindow.h index b55b3c9..a707cd3 100644 --- a/Swift/QtUI/QtSingleWindow.h +++ b/Swift/QtUI/QtSingleWindow.h @@ -1,37 +1,54 @@ /* - * Copyright (c) 2010-2012 Kevin Smith - * Licensed under the GNU General Public License v3. - * See Documentation/Licenses/GPLv3.txt for more information. + * Copyright (c) 2010-2018 Isode Limited. + * All rights reserved. + * See the COPYING file for more information. */ #pragma once +#include <QListWidget> #include <QSplitter> +#include <QStackedWidget> + +#include <Swift/QtUI/ServerList/ServerListModel.h> namespace Swift { - class QtSettingsProvider; - - class QtSingleWindow : public QSplitter { - Q_OBJECT - public: - QtSingleWindow(QtSettingsProvider* settings); - virtual ~QtSingleWindow(); - void insertAtFront(QWidget* widget); - void addWidget(QWidget* widget); - protected: - void resizeEvent(QResizeEvent*); - void moveEvent(QMoveEvent*); - private slots: - void handleSplitterMoved(int, int); - void handleTabsTitleChanged(const QString& title); - private: - void handleGeometryChanged(); - void restoreSplitters(); - - private: - - QtSettingsProvider* settings_; - }; + class QtChatTabs; + class QtLoginWindow; + class QtSettingsProvider; + class QtServerListView; + class ServerListModel; + + class QtSingleWindow : public QSplitter { + Q_OBJECT + public: + QtSingleWindow(QtSettingsProvider* settings); + virtual ~QtSingleWindow(); + void addAccount(QtLoginWindow* widget, QtChatTabs* tabs); + + signals: + void wantsToAddAccount(); + + protected: + void resizeEvent(QResizeEvent*); + void moveEvent(QMoveEvent*); + private slots: + void handleSplitterMoved(); + void handleTabsTitleChanged(const QString& title); + void handleListItemClicked(const QModelIndex&); + private: + void handleGeometryChanged(); + void restoreSplitters(); + + private: + + QtSettingsProvider* settings_; + SwiftAccountData accountData_; + QtServerListView* serverList_; + ServerListModel* serverListModel_; + QStackedWidget* loginWindows_; + QStackedWidget* tabs_; + }; } |