xref: /haiku/src/preferences/input/SettingsView.h (revision 7a617f59fd64449167bb190666bd44fae7efbe0b)
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 <Box.h>
15 #include <Bitmap.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 				BPopUpMenu*		fFocusFollowsMouseMenu;
41 				BCheckBox*		fAcceptFirstClickBox;
42 
43 	private:
44 		typedef	BBox			inherited;
45 
46 		const	MouseSettings&	fSettings;
47 
48 				BOptionPopUp*	fTypeMenu;
49 				BPopUpMenu*		fFocusMenu;
50 				MouseView*		fMouseView;
51 				BSlider*		fClickSpeedSlider;
52 				BSlider*		fMouseSpeedSlider;
53 				BSlider*		fAccelerationSlider;
54 };
55 
56 #endif	/* SETTINGS_VIEW_H */
57