xref: /haiku/src/apps/charactermap/CharacterWindow.h (revision beedda4c2c643e23c97dcb6917662d57df6a9b0d)
1 /*
2  * Copyright 2009, Axel Dörfler, axeld@pinc-software.de.
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef CHARACTER_WINDOW_H
6 #define CHARACTER_WINDOW_H
7 
8 
9 #include <Messenger.h>
10 #include <Window.h>
11 
12 class BFile;
13 class BListView;
14 class BMenu;
15 class BMenuItem;
16 class BSlider;
17 class BStringView;
18 class CharacterView;
19 
20 
21 class CharacterWindow : public BWindow {
22 public:
23 							CharacterWindow();
24 	virtual					~CharacterWindow();
25 
26 	virtual void			MessageReceived(BMessage* message);
27 	virtual bool			QuitRequested();
28 
29 private:
30 			status_t		_OpenSettings(BFile& file, uint32 mode);
31 			status_t		_LoadSettings(BMessage& settings);
32 			status_t		_SaveSettings();
33 
34 			void			_SetFont(const char* family, const char* style);
35 			BMenu*			_CreateFontMenu();
36 			void			_UpdateUnicodeBlocks();
37 			void			_CreateUnicodeBlocks();
38 
39 private:
40 			BListView*		fUnicodeBlockView;
41 			CharacterView*	fCharacterView;
42 			BMenuItem*		fSelectedFontItem;
43 			BSlider*		fFontSizeSlider;
44 			BStringView*	fCodeView;
45 };
46 
47 #endif	// CHARACTER_WINDOW_H
48