diff --git a/src/app/ui/editor/editor.cpp b/src/app/ui/editor/editor.cpp index bf67ef189..0e61288a2 100644 --- a/src/app/ui/editor/editor.cpp +++ b/src/app/ui/editor/editor.cpp @@ -1166,7 +1166,7 @@ bool Editor::onProcessMessage(Message* msg) case kFocusLeaveMessage: // As we use keys like Space-bar as modifier, we can clear the // keyboard buffer when we lost the focus. - clear_keybuf(); + she::clear_keyboard_buffer(); break; case kMouseWheelMessage: diff --git a/src/app/ui/timeline.cpp b/src/app/ui/timeline.cpp index 2fb6da037..e2e5dde5f 100644 --- a/src/app/ui/timeline.cpp +++ b/src/app/ui/timeline.cpp @@ -53,7 +53,6 @@ #include "raster/raster.h" #include "ui/ui.h" -#include #include #include @@ -320,7 +319,7 @@ bool Timeline::onProcessMessage(Message* msg) if (!m_document) break; - if (mouseMsg->middle() || key[KEY_SPACE]) { + if (mouseMsg->middle() || she::is_key_pressed(kKeySpace)) { captureMouse(); m_state = STATE_SCROLLING; m_oldPos = static_cast(msg)->position(); @@ -739,8 +738,8 @@ bool Timeline::onProcessMessage(Message* msg) case kKeySpace: { m_scroll = false; - // We have to clear all the KEY_SPACE in buffer. - clear_keybuf(); + // We have to clear all the kKeySpace keys in buffer. + she::clear_keyboard_buffer(); used = true; break; } diff --git a/src/she/alleg4/she.cpp b/src/she/alleg4/she.cpp index 9b3f9b996..0ef9aa06a 100644 --- a/src/she/alleg4/she.cpp +++ b/src/she/alleg4/she.cpp @@ -810,6 +810,16 @@ void error_message(const char* msg) #endif } +bool is_key_pressed(KeyScancode scancode) +{ + return key[scancode] ? true: false; +} + +void clear_keyboard_buffer() +{ + clear_keybuf(); +} + } // namespace she // It must be defined by the user program code. diff --git a/src/she/keys.h b/src/she/keys.h index b58daad35..170d6a2aa 100644 --- a/src/she/keys.h +++ b/src/she/keys.h @@ -154,6 +154,9 @@ namespace she { kKeyScancodes = 127 }; + bool is_key_pressed(KeyScancode scancode); + void clear_keyboard_buffer(); + } // namespace she #endif diff --git a/src/ui/accelerator.cpp b/src/ui/accelerator.cpp index fd135f27c..65c998760 100644 --- a/src/ui/accelerator.cpp +++ b/src/ui/accelerator.cpp @@ -14,8 +14,7 @@ #include "base/split_string.h" #include "base/string.h" -#include -#include +#include #include #include @@ -410,16 +409,16 @@ bool Accelerator::checkFromAllegroKeyArray() { KeyModifiers modifiers = kKeyNoneModifier; - if (key[KEY_LSHIFT] ) modifiers = (KeyModifiers)((int)modifiers | (int)kKeyShiftModifier); - if (key[KEY_RSHIFT] ) modifiers = (KeyModifiers)((int)modifiers | (int)kKeyShiftModifier); - if (key[KEY_LCONTROL]) modifiers = (KeyModifiers)((int)modifiers | (int)kKeyCtrlModifier); - if (key[KEY_RCONTROL]) modifiers = (KeyModifiers)((int)modifiers | (int)kKeyCtrlModifier); - if (key[KEY_ALT] ) modifiers = (KeyModifiers)((int)modifiers | (int)kKeyAltModifier); - if (key[KEY_COMMAND ]) modifiers = (KeyModifiers)((int)modifiers | (int)kKeyCmdModifier); + if (she::is_key_pressed(kKeyLShift) ) modifiers = (KeyModifiers)((int)modifiers | (int)kKeyShiftModifier); + if (she::is_key_pressed(kKeyRShift) ) modifiers = (KeyModifiers)((int)modifiers | (int)kKeyShiftModifier); + if (she::is_key_pressed(kKeyLControl)) modifiers = (KeyModifiers)((int)modifiers | (int)kKeyCtrlModifier); + if (she::is_key_pressed(kKeyRControl)) modifiers = (KeyModifiers)((int)modifiers | (int)kKeyCtrlModifier); + if (she::is_key_pressed(kKeyAlt) ) modifiers = (KeyModifiers)((int)modifiers | (int)kKeyAltModifier); + if (she::is_key_pressed(kKeyCommand) ) modifiers = (KeyModifiers)((int)modifiers | (int)kKeyCmdModifier); for (KeyCombos::iterator it = m_combos.begin(), end = m_combos.end(); it != end; ++it) { - if ((it->scancode == 0 || key[it->scancode]) && + if ((it->scancode == 0 || she::is_key_pressed(it->scancode)) && (it->modifiers == modifiers)) { return true; } diff --git a/src/ui/listbox.cpp b/src/ui/listbox.cpp index ca3e77b20..c3d5d7cfa 100644 --- a/src/ui/listbox.cpp +++ b/src/ui/listbox.cpp @@ -18,8 +18,6 @@ #include "ui/theme.h" #include "ui/view.h" -#include - namespace ui { using namespace gfx; diff --git a/src/ui/message.cpp b/src/ui/message.cpp index 719446b0a..aec39fb43 100644 --- a/src/ui/message.cpp +++ b/src/ui/message.cpp @@ -14,8 +14,7 @@ #include "ui/manager.h" #include "ui/widget.h" -#include -#include +#include namespace ui { @@ -23,11 +22,11 @@ Message::Message(MessageType type) : m_type(type) , m_used(false) , m_modifiers((KeyModifiers) - ((key[KEY_LSHIFT] || key[KEY_RSHIFT] ? kKeyShiftModifier: 0) | - (key[KEY_LCONTROL] || key[KEY_RCONTROL] ? kKeyCtrlModifier: 0) | - (key[KEY_ALT] ? kKeyAltModifier: 0) | - (key[KEY_COMMAND] ? kKeyCmdModifier: 0) | - (key[KEY_SPACE] ? kKeySpaceModifier: 0))) + ((she::is_key_pressed(kKeyLShift) || she::is_key_pressed(kKeyRShift) ? kKeyShiftModifier: 0) | + (she::is_key_pressed(kKeyLControl) || she::is_key_pressed(kKeyRControl) ? kKeyCtrlModifier: 0) | + (she::is_key_pressed(kKeyAlt) ? kKeyAltModifier: 0) | + (she::is_key_pressed(kKeyCommand) ? kKeyCmdModifier: 0) | + (she::is_key_pressed(kKeySpace) ? kKeySpaceModifier: 0))) { }