xref: /haiku/src/preferences/input/SettingsView.h (revision 4a32f48e70297d9a634646f01e08c2f451ecd6bd)
1 /*
2  * Copyright 2019, Haiku, Inc.
3  * Distributed under the terms of the MIT License.
4  *
5  * Author:
6  *		Preetpal Kaur <preetpalok123@gmail.com>
7  */
8 
9 
10 #ifndef SETTINGS_VIEW_H
11 #define SETTINGS_VIEW_H
12 
13 
14 #include <Bitmap.h>
15 #include <Box.h>
16 #include <Button.h>
17 #include <CheckBox.h>
18 #include <OptionPopUp.h>
19 #include <PopUpMenu.h>
20 #include <Slider.h>
21 
22 
23 class MouseSettings;
24 class MouseView;
25 
26 
27 class SettingsView : public BBox {
28 	public:
29 								SettingsView(MouseSettings &settings);
30 		virtual 				~SettingsView();
31 
32 		virtual void 			AttachedToWindow();
33 
34 				void 			SetMouseType(int32 type);
35 				void 			MouseMapUpdated();
36 				void 			UpdateFromSettings();
37 
38 	public:
39 				// FIXME use proper getters/setters for this?
40 				BCheckBox*		fAcceptFirstClickBox;
41 
42 	private:
43 		typedef	BBox			inherited;
44 
45 		const	MouseSettings&	fSettings;
46 
47 				BOptionPopUp*	fTypeMenu;
48 				BOptionPopUp*	fFocusMenu;
49 				MouseView*		fMouseView;
50 				BSlider*		fClickSpeedSlider;
51 				BSlider*		fMouseSpeedSlider;
52 				BSlider*		fAccelerationSlider;
53 };
54 
55 #endif	/* SETTINGS_VIEW_H */
56