diff options
Diffstat (limited to 'Swift/Controllers/UIInterfaces')
-rw-r--r-- | Swift/Controllers/UIInterfaces/MainWindow.h | 36 | ||||
-rw-r--r-- | Swift/Controllers/UIInterfaces/MainWindowFactory.h | 27 |
2 files changed, 63 insertions, 0 deletions
diff --git a/Swift/Controllers/UIInterfaces/MainWindow.h b/Swift/Controllers/UIInterfaces/MainWindow.h new file mode 100644 index 0000000..ce8b877 --- /dev/null +++ b/Swift/Controllers/UIInterfaces/MainWindow.h @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2010 Kevin Smith + * Licensed under the GNU General Public License v3. + * See Documentation/Licenses/GPLv3.txt for more information. + */ + +#ifndef SWIFTEN_MainWindow_H +#define SWIFTEN_MainWindow_H + +#include "Swiften/Base/String.h" +#include "Swiften/JID/JID.h" +#include "Swiften/Elements/StatusShow.h" + +#include <boost/signals.hpp> +#include <boost/shared_ptr.hpp> + +namespace Swift { + class TreeWidget; + + class MainWindow { + public: + virtual ~MainWindow() {}; + virtual TreeWidget* getTreeWidget() = 0; + virtual void setMyName(const String& name) = 0; + virtual void setMyAvatarPath(const String& path) = 0; + virtual void setMyStatusText(const String& status) = 0; + virtual void setMyStatusType(StatusShow::Type type) = 0; + + boost::signal<void (const JID&)> onStartChatRequest; + boost::signal<void (StatusShow::Type, const String&)> onChangeStatusRequest; + boost::signal<void (bool)> onShowOfflineToggled; + boost::signal<void ()> onSignOutRequest; + }; +} +#endif + diff --git a/Swift/Controllers/UIInterfaces/MainWindowFactory.h b/Swift/Controllers/UIInterfaces/MainWindowFactory.h new file mode 100644 index 0000000..c5cdfef --- /dev/null +++ b/Swift/Controllers/UIInterfaces/MainWindowFactory.h @@ -0,0 +1,27 @@ +/* + * Copyright (c) 2010 Kevin Smith + * Licensed under the GNU General Public License v3. + * See Documentation/Licenses/GPLv3.txt for more information. + */ + +#ifndef SWIFTEN_MainWindowFactory_H +#define SWIFTEN_MainWindowFactory_H + +#include "Swiften/JID/JID.h" +#include "Swift/Controllers/UIEvents/UIEventStream.h" + +namespace Swift { + class MainWindow; + + class MainWindowFactory { + public: + virtual ~MainWindowFactory() {}; + /** + * Transfers ownership of result. + */ + virtual MainWindow* createMainWindow(UIEventStream* eventStream) = 0; + + }; +} +#endif + |