Set map label action. More...
#include <mouse_action_map_label.hpp>

Public Member Functions | |
| mouse_action_map_label (const CKey &key, empty_palette &palette) | |
| editor_action * | click_left (editor_display &disp, int x, int y) |
| A click, possibly the beginning of a drag. More... | |
| editor_action * | drag_left (editor_display &disp, int x, int y, bool &partial, editor_action *last_undo) |
| Drag operation. More... | |
| editor_action * | up_left (editor_display &disp, int x, int y) |
| Left click displays a dialog that is used for entering the label string. More... | |
| editor_action * | click_right (editor_display &disp, int x, int y) |
| A click, possibly the beginning of a drag. More... | |
| editor_action * | up_right (editor_display &disp, int x, int y) |
| Right click erases the label under the mouse. More... | |
| virtual void | set_mouse_overlay (editor_display &disp) |
| Set the mouse overlay for this action. More... | |
Public Member Functions inherited from editor::mouse_action | |
| mouse_action (common_palette &palette, const CKey &key) | |
| virtual | ~mouse_action () |
| virtual bool | has_context_menu () const |
| virtual void | move (editor_display &disp, const map_location &hex) |
| Mouse move (not a drag). More... | |
| void | update_brush_highlights (editor_display &disp, const map_location &hex) |
| Unconditionally update the brush highlights for the current tool when hex is the center location. More... | |
| virtual std::set< map_location > | affected_hexes (editor_display &disp, const map_location &hex) |
| Locations that would be affected by a click, used by move to update highlights. More... | |
| virtual editor_action * | drag_right (editor_display &disp, int x, int y, bool &partial, editor_action *last_undo) |
| Drag operation. More... | |
| virtual editor_action * | drag_end_left (editor_display &disp, int x, int y) |
| The end of dragging. More... | |
| virtual editor_action * | drag_end_right (editor_display &disp, int x, int y) |
| virtual editor_action * | key_event (editor_display &disp, const SDL_Event &e) |
| Function called by the controller on a key event for the current mouse action. More... | |
| void | set_toolbar_button (const theme::menu *value) |
| Helper variable setter - pointer to a toolbar menu/button used for highlighting the current action. More... | |
| const theme::menu * | toolbar_button () const |
| Getter for the (possibly nullptr) associated menu/button. More... | |
| common_palette & | get_palette () |
| Getter for the associated palette. More... | |
| virtual bool | supports_brushes () |
| Whether we need the brush bar, is used to grey it out. More... | |
Private Attributes | |
| bool | click_ |
| map_location | clicked_on_ |
| map_location | last_draged_ |
Additional Inherited Members | |
Protected Member Functions inherited from editor::mouse_action | |
| bool | has_alt_modifier () const |
| bool | has_shift_modifier () const |
| bool | has_ctrl_modifier () const |
| void | set_terrain_mouse_overlay (editor_display &disp, const t_translation::t_terrain &fg, const t_translation::t_terrain &bg) |
| Helper function for derived classes that need a active-terrain mouse overlay. More... | |
Protected Attributes inherited from editor::mouse_action | |
| map_location | previous_move_hex_ |
| The hex previously used in move operations. More... | |
| const CKey & | key_ |
| Key presses, used for modifiers (alt, shift) in some operations. More... | |
Set map label action.
Definition at line 29 of file mouse_action_map_label.hpp.
|
inline |
Definition at line 32 of file mouse_action_map_label.hpp.
|
virtual |
A click, possibly the beginning of a drag.
Must be overridden.
Implements editor::mouse_action.
Definition at line 28 of file mouse_action_map_label.cpp.
References click_, clicked_on_, display::hex_clicked_on(), and last_draged_.
|
virtual |
A click, possibly the beginning of a drag.
Must be overridden.
Implements editor::mouse_action.
Definition at line 92 of file mouse_action_map_label.cpp.
|
virtual |
Drag operation.
A click should have occurred earlier. Defaults to no action.
Reimplemented from editor::mouse_action.
Definition at line 37 of file mouse_action_map_label.cpp.
References editor::editor_action_chain::append_action(), terrain_label::category(), click_, terrain_label::color(), editor::get_current_labels(), map_labels::get_label(), display::hex_clicked_on(), terrain_label::immutable(), last_draged_, terrain_label::team_name(), terrain_label::text(), terrain_label::visible_in_fog(), and terrain_label::visible_in_shroud().
|
virtual |
Set the mouse overlay for this action.
Defaults to an empty overlay.
Reimplemented from editor::mouse_action.
Definition at line 109 of file mouse_action_map_label.cpp.
References adjust_surface_alpha(), blit_surface(), create_neutral_surface(), sdl::create_rect(), image::get_image(), display::get_zoom_factor(), scale_surface(), and display::set_mouseover_hex_overlay().
|
virtual |
Left click displays a dialog that is used for entering the label string.
Reimplemented from editor::mouse_action.
Definition at line 62 of file mouse_action_map_label.cpp.
References terrain_label::category(), click_, terrain_label::color(), d, editor::get_current_labels(), map_labels::get_label(), display::get_map(), display::hex_clicked_on(), terrain_label::immutable(), font::NORMAL_COLOR, gamemap::on_board(), gui2::tdialog::show(), terrain_label::team_name(), terrain_label::text(), editor::mouse_action::update_brush_highlights(), display::video(), terrain_label::visible_in_fog(), and terrain_label::visible_in_shroud().
|
virtual |
Right click erases the label under the mouse.
Reimplemented from editor::mouse_action.
Definition at line 97 of file mouse_action_map_label.cpp.
References display::hex_clicked_on().
|
private |
Definition at line 59 of file mouse_action_map_label.hpp.
Referenced by click_left(), drag_left(), and up_left().
|
private |
Definition at line 60 of file mouse_action_map_label.hpp.
Referenced by click_left().
|
private |
Definition at line 61 of file mouse_action_map_label.hpp.
Referenced by click_left(), and drag_left().
1.8.8