diff options
author | Stijn Buys <ingar@osirion.org> | 2015-01-06 21:49:29 +0000 |
---|---|---|
committer | Stijn Buys <ingar@osirion.org> | 2015-01-06 21:49:29 +0000 |
commit | 7e3684dba968d2129caf4deff344c4f099640a68 (patch) | |
tree | 614763b8d4e5e73874df2603454bc886c176a330 | |
parent | 9626a5ce823fe94970b04dc504993583996e6074 (diff) |
Fixed @goto and @dock buttons.
-rw-r--r-- | src/client/targeticonbutton.cc | 9 | ||||
-rw-r--r-- | src/client/targeticonbutton.h | 12 |
2 files changed, 13 insertions, 8 deletions
diff --git a/src/client/targeticonbutton.cc b/src/client/targeticonbutton.cc index afc3838..ebd5ec3 100644 --- a/src/client/targeticonbutton.cc +++ b/src/client/targeticonbutton.cc @@ -18,10 +18,12 @@ TargetIconButton::TargetIconButton(Widget *parent, const char *icon, const char entity_flags = flags; } -bool TargetIconButton::on_keypress(const int key, const unsigned int modifier) +bool TargetIconButton::on_mousepress(const unsigned int button) { - if (key == 512 + SDL_BUTTON_LEFT) { - if (enabled() && command().size() && targets::current()) { + if (button == SDL_BUTTON_LEFT) + { + if (enabled() && command().size() && targets::current()) + { core::cmd() << "@" << command() << " " << targets::current_id() << std::endl; audio::play("ui/clicked"); } @@ -34,7 +36,6 @@ bool TargetIconButton::on_keypress(const int key, const unsigned int modifier) void TargetIconButton::draw() { set_enabled(targets::current() && ((targets::current()->flags() & entity_flags) == entity_flags)); - ui::IconButton::draw(); } diff --git a/src/client/targeticonbutton.h b/src/client/targeticonbutton.h index 9907f95..cb6a147 100644 --- a/src/client/targeticonbutton.h +++ b/src/client/targeticonbutton.h @@ -19,12 +19,16 @@ public: /// special icon button that sends target '@' commands. TargetIconButton(Widget *parent, const char *icon, const char *command, unsigned int flags = 0); - /// called when the widget receives a key press - virtual bool on_keypress(const int key, const unsigned int modifier); - protected: - /// update enabled/disabled state and draw the IconButton + /** + * @brief draw event handler + * */ virtual void draw(); + + /** + * @brief mouse button press event handler + * */ + virtual bool on_mousepress(const unsigned int button); private: unsigned int entity_flags; |