summaryrefslogtreecommitdiffstats
blob: 0a90e05ca5a7ec08c48515b89a46e3489c04afac (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
/*
 * Copyright (c) 2010 Kevin Smith
 * Licensed under the GNU General Public License v3.
 * See Documentation/Licenses/GPLv3.txt for more information.
 */

#ifndef SWIFT_QtLoginWindowFactory_H
#define SWIFT_QtLoginWindowFactory_H

#include "Swift/Controllers/UIInterfaces/LoginWindowFactory.h"
#include "Swift/QtUI/QtSystemTray.h"

#include <QSplitter>

#include "QtSettingsProvider.h"

namespace Swift {
	class QtLoginWindow;
	class QtLoginWindowFactory : public QObject, public LoginWindowFactory {
		Q_OBJECT
		public:
			QtLoginWindowFactory(QSplitter* splitter, QtSystemTray* systemTray, QtSettingsProvider* settings);
			LoginWindow* createLoginWindow(UIEventStream* uiEventStream);
		private slots:
			void handleWindowGeometryChanged();
		private:
			QSplitter* splitter_;
			QtSystemTray* systemTray_;
			QtSettingsProvider* settings_;
			QtLoginWindow* window_;
	};
}

#endif