xref: /haiku/src/apps/haikudepot/ui/SettingsWindow.h (revision 133ebab62cfb61a960689d912f33a4e8a8693e8e)
1*133ebab6SAndrew Lindesay /*
2*133ebab6SAndrew Lindesay  * Copyright 2021, Andrew Lindesay <apl@lindesay.co.nz>.
3*133ebab6SAndrew Lindesay  * All rights reserved. Distributed under the terms of the MIT License.
4*133ebab6SAndrew Lindesay  */
5*133ebab6SAndrew Lindesay #ifndef SETTINGS_WINDOW_H
6*133ebab6SAndrew Lindesay #define SETTINGS_WINDOW_H
7*133ebab6SAndrew Lindesay 
8*133ebab6SAndrew Lindesay #include <Locker.h>
9*133ebab6SAndrew Lindesay #include <Messenger.h>
10*133ebab6SAndrew Lindesay #include <Window.h>
11*133ebab6SAndrew Lindesay 
12*133ebab6SAndrew Lindesay #include "BarberPole.h"
13*133ebab6SAndrew Lindesay #include "HaikuDepotConstants.h"
14*133ebab6SAndrew Lindesay #include "UserDetail.h"
15*133ebab6SAndrew Lindesay #include "UserUsageConditions.h"
16*133ebab6SAndrew Lindesay 
17*133ebab6SAndrew Lindesay 
18*133ebab6SAndrew Lindesay class BButton;
19*133ebab6SAndrew Lindesay class BCheckBox;
20*133ebab6SAndrew Lindesay class Model;
21*133ebab6SAndrew Lindesay 
22*133ebab6SAndrew Lindesay 
23*133ebab6SAndrew Lindesay class SettingsWindow : public BWindow {
24*133ebab6SAndrew Lindesay public:
25*133ebab6SAndrew Lindesay 								SettingsWindow(BWindow* parent, Model* model);
26*133ebab6SAndrew Lindesay 	virtual						~SettingsWindow();
27*133ebab6SAndrew Lindesay 
28*133ebab6SAndrew Lindesay 	virtual	void				MessageReceived(BMessage* message);
29*133ebab6SAndrew Lindesay 
30*133ebab6SAndrew Lindesay private:
31*133ebab6SAndrew Lindesay 			void				_InitUiControls();
32*133ebab6SAndrew Lindesay 			void				_UpdateUiFromModel();
33*133ebab6SAndrew Lindesay 			void				_UpdateModelFromUi();
34*133ebab6SAndrew Lindesay 
35*133ebab6SAndrew Lindesay private:
36*133ebab6SAndrew Lindesay 			Model*				fModel;
37*133ebab6SAndrew Lindesay 
38*133ebab6SAndrew Lindesay 			BCheckBox*			fCanShareAnonymousUsageDataCheckBox;
39*133ebab6SAndrew Lindesay 
40*133ebab6SAndrew Lindesay 			BButton*			fApplyButton;
41*133ebab6SAndrew Lindesay 			BButton*			fCancelButton;
42*133ebab6SAndrew Lindesay };
43*133ebab6SAndrew Lindesay 
44*133ebab6SAndrew Lindesay 
45*133ebab6SAndrew Lindesay #endif // SETTINGS_WINDOW_H
46