xref: /haiku/src/preferences/screensaver/ScreenSaverWindow.h (revision 60b39cd7416028e61e3d30bb3ba28bd3526e6001)
1 /*
2  * Copyright 2003-2013 Haiku, Inc. All rights reserved.
3  * Distributed under the terms of the MIT License.
4  *
5  * Authors:
6  *		Axel Dörfler, axeld@pinc-software.de
7  *		Jérôme Duval, jerome.duval@free.fr
8  *		Michael Phipps
9  *		John Scipione, jscipione@gmail.com
10  */
11 #ifndef SCREEN_SAVER_WINDOW_H
12 #define SCREEN_SAVER_WINDOW_H
13 
14 
15 #include <Window.h>
16 
17 #include "PasswordWindow.h"
18 #include "ScreenSaverSettings.h"
19 
20 
21 class BMessage;
22 class BRect;
23 class BTabView;
24 
25 class FadeView;
26 class ModulesView;
27 
28 
29 class ScreenSaverWindow : public BWindow {
30 public:
31 								ScreenSaverWindow();
32 	virtual						~ScreenSaverWindow();
33 
34 	virtual	void				MessageReceived(BMessage* message);
35 	virtual	void				ScreenChanged(BRect frame, color_space space);
36 	virtual	bool				QuitRequested();
37 
38 			void				LoadSettings();
39 
40 private:
41 			float				fMinWidth;
42 			float				fMinHeight;
43 			ScreenSaverSettings	fSettings;
44 			PasswordWindow*		fPasswordWindow;
45 
46 			FadeView*			fFadeView;
47 			ModulesView*		fModulesView;
48 			BTabView*			fTabView;
49 };
50 
51 
52 static const int32 kMsgUpdateList = 'UPDL';
53 
54 
55 #endif	// SCREEN_SAVER_WINDOW_H
56