2 * Copyright 2011-2014 Haiku, Inc. All rights reserved.
3 * Distributed under the terms of the MIT License.
6 * John Scipione, jscipione@gmail.com
8 #ifndef MODIFIER_KEYS_WINDOW_H
9 #define MODIFIER_KEYS_WINDOW_H
20 class ConflictView
: public BView
{
22 ConflictView(const char* name
);
25 virtual void Draw(BRect updateRect
);
28 void SetStopIcon(bool show
);
29 void SetWarnIcon(bool show
);
40 class ModifierKeysWindow
: public BWindow
{
43 virtual ~ModifierKeysWindow();
45 virtual void MessageReceived(BMessage
* message
);
48 BMenuField
* _CreateShiftMenuField();
49 BMenuField
* _CreateControlMenuField();
50 BMenuField
* _CreateOptionMenuField();
51 BMenuField
* _CreateCommandMenuField();
53 void _MarkMenuItems();
54 const char* _KeyToString(int32 key
);
55 uint32
_KeyToKeyCode(int32 key
,
58 void _ValidateDuplicateKeys();
59 uint32
_DuplicateKeys();
60 void _HideShowIcons();
62 BPopUpMenu
* fShiftMenu
;
63 BPopUpMenu
* fControlMenu
;
64 BPopUpMenu
* fOptionMenu
;
65 BPopUpMenu
* fCommandMenu
;
67 ConflictView
* fShiftConflictView
;
68 ConflictView
* fControlConflictView
;
69 ConflictView
* fOptionConflictView
;
70 ConflictView
* fCommandConflictView
;
72 BButton
* fRevertButton
;
73 BButton
* fCancelButton
;
84 #endif // MODIFIER_KEYS_WINDOW_H