summaryrefslogtreecommitdiffstats
blob: e7d41520cda332b75c79ad98c587324213305df0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include "QtSwift.h"

#include "QtLoginWindowFactory.h"
#include "QtChatWindowFactory.h"
#include "QtMainWindowFactory.h"
#include "QtTreeWidgetFactory.h"

#include <boost/bind.hpp>

#include "Swiften/Application/Application.h"
#include "Swiften/Application/Platform/PlatformApplication.h"
#include "Swiften/Base/String.h"
#include "Swiften/Elements/Presence.h"
#include "Swiften/Client/Client.h"
#include "Swiften/Controllers/ChatController.h"
#include "Swiften/Controllers/MainController.h"

namespace Swift{

QtSwift::QtSwift() : 
	treeWidgetFactory_(new QtTreeWidgetFactory()), 
	chatWindowFactory_(new QtChatWindowFactory(treeWidgetFactory_)),
	rosterWindowFactory_(new QtMainWindowFactory(treeWidgetFactory_)),
	loginWindowFactory_(new QtLoginWindowFactory()) {
	QCoreApplication::setApplicationName("Swift");
	QCoreApplication::setOrganizationName("Swift");
	QCoreApplication::setOrganizationDomain("swift.im");
	settings_ = new QtSettingsProvider();
	application_ = new PlatformApplication("Swift");
	mainController_ = new MainController(chatWindowFactory_, rosterWindowFactory_, loginWindowFactory_, treeWidgetFactory_, settings_, application_);
}

QtSwift::~QtSwift() {
	delete chatWindowFactory_;
	delete rosterWindowFactory_;
	delete loginWindowFactory_;
	delete treeWidgetFactory_;
	delete mainController_;
	delete settings_;
	delete application_;
}

}