xref: /haiku/headers/private/interface/MenuWindow.h (revision 93a78ecaa45114d68952d08c4778f073515102f2)
1 /*
2  * Copyright 2001-2006, Haiku, Inc.
3  * Distributed under the terms of the MIT License.
4  *
5  * Authors:
6  *		Marc Flerackers (mflerackers@androme.be)
7  *		Stefano Ceccherini (burton666@libero.it)
8  */
9 #ifndef __MENUWINDOW_H
10 #define __MENUWINDOW_H
11 
12 
13 #include <Window.h>
14 
15 class BMenu;
16 
17 
18 namespace BPrivate {
19 
20 class BMenuFrame;
21 class BMenuScroller;
22 
23 
24 class BMenuWindow : public BWindow {
25 	public:
26 		BMenuWindow(const char *name);
27 		virtual ~BMenuWindow();
28 
29 		void AttachMenu(BMenu *menu);
30 		void DetachMenu();
31 
32 		void AttachScrollers();
33 		void DetachScrollers();
34 
35 		bool CheckForScrolling(BPoint cursor);
36 
37 	private:
38 		BMenu *fMenu;
39 		BMenuFrame *fMenuFrame;
40 		BMenuScroller *fUpperScroller;
41 		BMenuScroller *fLowerScroller;
42 
43 		float fValue;
44 		float fLimit;
45 
46 		bool _Scroll(BPoint cursor);
47 };
48 
49 }	// namespace BPrivate
50 
51 #endif	// __MENUWINDOW_H
52