xref: /haiku/src/add-ons/input_server/devices/virtualkeyboard/VirtualKeyboardWindow.h (revision 67b3c6776882f76f8179b631c2842a6bccb8c59e)
185768872SFreeman Lou /*
285768872SFreeman Lou  * Copyright 2014 Freeman Lou <freemanlou2430@yahoo.com>
385768872SFreeman Lou  * All rights reserved. Distributed under the terms of the MIT license.
485768872SFreeman Lou  */
585768872SFreeman Lou #ifndef VIRTUAL_KEYBOARD_WINDOW_H
685768872SFreeman Lou #define VIRTUAL_KEYBOARD_WINDOW_H
785768872SFreeman Lou 
8*a9fd76aeSFreeman Lou #include <InputServerDevice.h>
985768872SFreeman Lou #include <Window.h>
1085768872SFreeman Lou 
112e4c86a4SFreeman Lou #include "Keymap.h"
122e4c86a4SFreeman Lou 
132e4c86a4SFreeman Lou class KeyboardLayoutView;
142e4c86a4SFreeman Lou class Keymap;
152e4c86a4SFreeman Lou class BDirectory;
162e4c86a4SFreeman Lou class BListView;
172e4c86a4SFreeman Lou class BMenu;
1885768872SFreeman Lou 
1985768872SFreeman Lou class VirtualKeyboardWindow : public BWindow{
2085768872SFreeman Lou public:
21*a9fd76aeSFreeman Lou 							VirtualKeyboardWindow(BInputServerDevice* dev);
2285768872SFreeman Lou 		virtual void		MessageReceived(BMessage* message);
232e4c86a4SFreeman Lou 
2485768872SFreeman Lou private:
2585768872SFreeman Lou 		KeyboardLayoutView* fKeyboardView;
262e4c86a4SFreeman Lou 		BListView*			fMapListView;
272e4c86a4SFreeman Lou 		BMenu*				fFontMenu;
282e4c86a4SFreeman Lou 		BMenu*				fLayoutMenu;
292e4c86a4SFreeman Lou 		Keymap				fCurrentKeymap;
30*a9fd76aeSFreeman Lou 		BInputServerDevice*	fDevice;
312e4c86a4SFreeman Lou 
322e4c86a4SFreeman Lou private:
332e4c86a4SFreeman Lou 				void		_LoadLayouts(BMenu* menu);
342e4c86a4SFreeman Lou 				void		_LoadLayoutMenu(BMenu* menu, BDirectory directory);
352e4c86a4SFreeman Lou 				void		_LoadMaps();
362e4c86a4SFreeman Lou 				void		_LoadFonts();
3785768872SFreeman Lou };
3885768872SFreeman Lou 
3985768872SFreeman Lou #endif // VIRTUAL_KEYBOARD_WINDOW_H
40