xref: /haiku/src/preferences/screensaver/ScreenSaverWindow.h (revision 16c83730262f1e4f0fc69d80744bb36dcfbbe3af)
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 "PasswordWindow.h"
16 
17 #include <Box.h>
18 #include <CheckBox.h>
19 #include <FilePanel.h>
20 #include <Slider.h>
21 #include <ListView.h>
22 
23 #include "ScreenSaverSettings.h"
24 
25 
26 class BButton;
27 class BTabView;
28 
29 class FadeView;
30 class ModulesView;
31 
32 
33 class ScreenSaverWindow : public BWindow {
34 public:
35 								ScreenSaverWindow();
36 	virtual						~ScreenSaverWindow();
37 
38 	virtual	void				MessageReceived(BMessage* message);
39 	virtual	void				ScreenChanged(BRect frame, color_space space);
40 	virtual	bool				QuitRequested();
41 
42 			void				LoadSettings();
43 
44 private:
45 			float				fMinWidth;
46 			float				fMinHeight;
47 			ScreenSaverSettings	fSettings;
48 			PasswordWindow*		fPasswordWindow;
49 
50 			FadeView*			fFadeView;
51 			ModulesView*		fModulesView;
52 			BTabView*			fTabView;
53 };
54 
55 
56 static const int32 kMsgUpdateList = 'UPDL';
57 
58 
59 #endif	// SCREEN_SAVER_WINDOW_H
60