Dialog that allows user to create custom unit types. More...
#include <edit_unit.hpp>
Public Member Functions | |
editor_edit_unit (const game_config_view &game_config, const std::string &addon_id) | |
DEFINE_SIMPLE_EXECUTE_WRAPPER (editor_edit_unit) | |
The execute function. More... | |
void | write () |
Write the cfg file. More... | |
Public Member Functions inherited from gui2::dialogs::modal_dialog | |
modal_dialog (const std::string &window_id) | |
virtual | ~modal_dialog () |
bool | show (const unsigned auto_close_time=0) |
Shows the window. More... | |
int | get_retval () const |
Returns the cached window exit code. More... | |
void | set_always_save_fields (const bool always_save_fields) |
void | set_allow_plugin_skip (const bool allow_plugin_skip) |
void | set_show_even_without_video (const bool show_even_without_video) |
Public Member Functions inherited from gui2::window | |
window (const builder_window::window_resolution &definition) | |
< Needs to be initialized in show. More... | |
virtual | ~window () |
int | show (unsigned auto_close_timeout=0) |
Shows the window, running an event loop until it should close. More... | |
void | show_tooltip () |
Shows the window as a tooltip. More... | |
void | show_non_modal () |
Shows the window non modal. More... | |
void | draw () |
Draws the window. More... | |
void | hide () |
Hides the window. More... | |
virtual void | layout () override |
Lays out the window. More... | |
virtual void | render () override |
Ensure the window's internal render buffer is up-to-date. More... | |
virtual bool | expose (const rect ®ion) override |
Called by draw_manager when it believes a redraw is necessary. More... | |
virtual rect | screen_location () override |
The current draw location of the window, on the screen. More... | |
void | queue_rerender (const rect ®ion) |
Queue a rerender of the internal render buffer. More... | |
void | queue_rerender () |
void | defer_region (const rect ®ion) |
Defer rendering of a particular region to next frame. More... | |
void | close () |
Requests to close the window. More... | |
bool | invalidate_layout_blocked () const |
Is invalidate_layout blocked, see invalidate_layout_blocker. More... | |
void | invalidate_layout () |
Updates the size of the window. More... | |
virtual widget * | find_at (const point &coordinate, const bool must_be_active) override |
See widget::find_at. More... | |
virtual const widget * | find_at (const point &coordinate, const bool must_be_active) const override |
See widget::find_at. More... | |
dialogs::modal_dialog * | dialog () |
Inherited from widget. More... | |
widget * | find (const std::string &id, const bool must_be_active) override |
See widget::find. More... | |
const widget * | find (const std::string &id, const bool must_be_active) const override |
See widget::find. More... | |
bool | does_click_dismiss () const |
Does the window close easily? More... | |
void | set_enter_disabled (const bool enter_disabled) |
Disable the enter key. More... | |
void | set_escape_disabled (const bool escape_disabled) |
Disable the escape key. More... | |
void | init_linked_size_group (const std::string &id, const bool fixed_width, const bool fixed_height) |
Initializes a linked size group. More... | |
bool | has_linked_size_group (const std::string &id) |
Is the linked size group defined for this window? More... | |
void | add_linked_widget (const std::string &id, widget *widget) |
Adds a widget to a linked size group. More... | |
void | remove_linked_widget (const std::string &id, const widget *widget) |
Removes a widget from a linked size group. More... | |
void | set_retval (const int retval, const bool close_window=true) |
Sets there return value of the window. More... | |
int | get_retval () |
void | set_owner (dialogs::modal_dialog *owner) |
void | set_click_dismiss (const bool click_dismiss) |
bool | get_need_layout () const |
void | set_variable (const std::string &key, const wfl::variant &value) |
point | get_linked_size (const std::string &linked_group_id) const |
void | set_exit_hook (exit_hook mode, std::function< bool(window &)> func) |
Sets the window's exit hook. More... | |
const event::distributor & | get_distributor () const |
Gets a reference to the window's distributor to allow some state peeking. More... | |
show_mode | mode () const |
Returns the dialog mode for this window. More... | |
void | mouse_capture (const bool capture=true) |
void | keyboard_capture (widget *widget) |
void | add_to_keyboard_chain (widget *widget) |
Adds the widget to the keyboard chain. More... | |
void | remove_from_keyboard_chain (widget *widget) |
Remove the widget from the keyboard chain. More... | |
void | add_to_tab_order (widget *widget, int at=-1) |
Add the widget to the tabbing order. More... | |
Public Member Functions inherited from gui2::panel | |
panel (const implementation::builder_styled_widget &builder, const std::string &control_type="") | |
Constructor. More... | |
virtual SDL_Rect | get_client_rect () const override |
See container_base::get_client_rect. More... | |
virtual bool | get_active () const override |
See styled_widget::get_active. More... | |
virtual unsigned | get_state () const override |
See styled_widget::get_state. More... | |
Public Member Functions inherited from gui2::container_base | |
container_base (const implementation::builder_styled_widget &builder, const std::string &control_type) | |
virtual void | layout_initialize (const bool full_initialization) override |
See widget::layout_initialize. More... | |
void | reduce_width (const unsigned maximum_width) |
Tries to reduce the width of a container. More... | |
virtual void | request_reduce_width (const unsigned maximum_width) override |
See widget::request_reduce_width. More... | |
virtual void | demand_reduce_width (const unsigned maximum_width) override |
See widget::demand_reduce_width. More... | |
void | reduce_height (const unsigned maximum_height) |
Tries to reduce the height of a container. More... | |
virtual void | request_reduce_height (const unsigned maximum_height) override |
See widget::request_reduce_height. More... | |
virtual void | demand_reduce_height (const unsigned maximum_height) override |
See widget::demand_reduce_height. More... | |
virtual bool | can_wrap () const override |
See widget::can_wrap. More... | |
virtual void | place (const point &origin, const point &size) override |
See widget::place. More... | |
virtual bool | has_widget (const widget &widget) const override |
See widget::has_widget. More... | |
virtual void | set_origin (const point &origin) override |
See widget::set_origin. More... | |
virtual void | set_visible_rectangle (const SDL_Rect &rectangle) override |
See widget::set_visible_rectangle. More... | |
virtual void | impl_draw_children () override |
See widget::impl_draw_children. More... | |
virtual void | set_active (const bool active) override |
See styled_widget::set_active. More... | |
bool | disable_click_dismiss () const override |
See widget::disable_click_dismiss. More... | |
virtual iteration::walker_ptr | create_walker () override |
See widget::create_walker. More... | |
void | init_grid (const builder_grid &grid_builder) |
Initializes and builds the grid. More... | |
grid::iterator | begin () |
grid::iterator | end () |
unsigned | add_row (const unsigned count=1) |
void | set_rows (const unsigned rows) |
unsigned int | get_rows () const |
void | set_cols (const unsigned cols) |
unsigned int | get_cols () const |
void | set_rows_cols (const unsigned rows, const unsigned cols) |
void | set_child (std::unique_ptr< widget > widget, const unsigned row, const unsigned col, const unsigned flags, const unsigned border_size) |
void | set_row_grow_factor (const unsigned row, const unsigned factor) |
void | set_column_grow_factor (const unsigned column, const unsigned factor) |
const grid & | get_grid () const |
grid & | get_grid () |
Public Member Functions inherited from gui2::styled_widget | |
styled_widget (const implementation::builder_styled_widget &builder, const std::string &control_type) | |
Constructor. More... | |
virtual void | set_members (const widget_item &data) |
Sets the members of the styled_widget. More... | |
bool | disable_click_dismiss () const override |
See widget::disable_click_dismiss. More... | |
point | get_config_minimum_size () const |
Gets the minimum size as defined in the config. More... | |
point | get_config_default_size () const |
Gets the default size as defined in the config. More... | |
point | get_config_maximum_size () const |
Gets the best size as defined in the config. More... | |
virtual unsigned | get_characters_per_line () const |
Returns the number of characters per line. More... | |
virtual bool | get_link_aware () const |
Returns whether the label should be link_aware, in in rendering and in searching for links with get_link. More... | |
virtual color_t | get_link_color () const |
Returns the color string to be used with links. More... | |
bool | get_use_tooltip_on_label_overflow () const |
void | set_use_tooltip_on_label_overflow (const bool use_tooltip=true) |
const t_string & | get_label () const |
virtual void | set_label (const t_string &text) |
virtual void | set_use_markup (bool use_markup) |
bool | get_use_markup () const |
const t_string & | tooltip () const |
void | set_tooltip (const t_string &tooltip) |
const t_string & | help_message () const |
void | set_help_message (const t_string &help_message) |
std::vector< canvas > & | get_canvases () |
canvas & | get_canvas (const unsigned index) |
virtual void | set_text_alignment (const PangoAlignment text_alignment) |
PangoAlignment | get_text_alignment () const |
void | set_text_ellipse_mode (const PangoEllipsizeMode ellipse_mode) |
PangoEllipsizeMode | get_text_ellipse_mode () const |
Get the text's ellipsize mode. More... | |
void | set_text_maximum_width (int max_width) |
Set how wide the text can become. More... | |
Public Member Functions inherited from gui2::widget | |
widget (const widget &)=delete | |
widget & | operator= (const widget &)=delete |
widget () | |
widget (const builder_widget &builder) | |
Constructor. More... | |
virtual | ~widget () override |
void | set_id (const std::string &id) |
const std::string & | id () const |
window * | get_window () |
Get the parent window. More... | |
const window * | get_window () const |
The constant version of get_window. More... | |
grid * | get_parent_grid () |
Get the parent grid. More... | |
const grid * | get_parent_grid () const |
void | set_parent (widget *parent) |
widget * | parent () |
point | get_best_size () const |
Gets the best size for the widget. More... | |
virtual bool | can_mouse_focus () const |
Whether the mouse move/click event go 'through' this widget. More... | |
virtual void | set_size (const point &size) |
Sets the size of the widget. More... | |
virtual void | move (const int x_offset, const int y_offset) |
Moves a widget. More... | |
virtual void | set_horizontal_alignment (const std::string &alignment) |
Sets the horizontal alignment of the widget within its parent grid. More... | |
virtual void | set_vertical_alignment (const std::string &alignment) |
Sets the horizontal alignment of the widget within its parent grid. More... | |
point | get_origin () const |
Returns the screen origin of the widget. More... | |
point | get_size () const |
Returns the size of the widget. More... | |
rect | get_rectangle () const |
Gets the bounding rectangle of the widget on the screen. More... | |
int | get_x () const |
int | get_y () const |
unsigned | get_width () const |
unsigned | get_height () const |
void | set_linked_group (const std::string &linked_group) |
SDL_Rect | calculate_blitting_rectangle () const |
Calculates the blitting rectangle of the widget. More... | |
SDL_Rect | calculate_clipping_rectangle () const |
Calculates the clipping rectangle of the widget. More... | |
bool | draw_background () |
Draws the background of a widget. More... | |
void | draw_children () |
Draws the children of a widget. More... | |
bool | draw_foreground () |
Draws the foreground of the widget. More... | |
SDL_Rect | get_dirty_rectangle () const |
Gets the dirty rectangle of the widget. More... | |
void | queue_redraw () |
Indicates that this widget should be redrawn. More... | |
void | queue_redraw (const rect ®ion) |
Indicate that specific region of the screen should be redrawn. More... | |
void | set_visible (const visibility visible) |
visibility | get_visible () const |
redraw_action | get_drawing_action () const |
void | set_debug_border_mode (const debug_border debug_border_mode) |
void | set_debug_border_color (const color_t debug_border_color) |
template<class T > | |
NOT_DANGLING T * | find_widget (const std::string &id, const bool must_be_active, const bool must_exist) |
Gets a widget with the wanted id. More... | |
template<class T > | |
NOT_DANGLING const T * | find_widget (const std::string &id, const bool must_be_active, const bool must_exist) const |
template<class T > | |
NOT_DANGLING T & | find_widget (const std::string &id, const bool must_be_active=false) |
Gets a widget with the wanted id. More... | |
template<class T > | |
NOT_DANGLING const T & | find_widget (const std::string &id, const bool must_be_active=false) const |
Public Member Functions inherited from gui2::event_executor | |
event_executor () | |
virtual | ~event_executor () |
void | set_wants_mouse_hover (const bool hover=true) |
bool | wants_mouse_hover () const |
void | set_wants_mouse_left_double_click (const bool click=true) |
bool | wants_mouse_left_double_click () const |
void | set_wants_mouse_middle_double_click (const bool click=true) |
bool | wants_mouse_middle_double_click () const |
event_executor & | set_wants_mouse_right_double_click (const bool click=true) |
bool | wants_mouse_right_double_click () const |
Public Member Functions inherited from gui2::event::dispatcher | |
dispatcher () | |
virtual | ~dispatcher () |
void | connect () |
Connects the dispatcher to the event handler. More... | |
void | disconnect () |
Disconnects the dispatcher from the event handler. More... | |
bool | is_connected () const |
Return whether the dispatcher is currently connected. More... | |
bool | has_event (const ui_event event, const event_queue_type event_type) |
bool | fire (const ui_event event, widget &target) |
Fires an event which has no extra parameters. More... | |
bool | fire (const ui_event event, widget &target, const point &coordinate) |
Fires an event which takes a coordinate parameter. More... | |
bool | fire (const ui_event event, widget &target, const SDL_Keycode key, const SDL_Keymod modifier, const std::string &unicode) |
Fires an event which takes keyboard parameters. More... | |
bool | fire (const ui_event event, widget &target, const point &pos, const point &distance) |
Fires an event which takes touch-motion parameters. More... | |
bool | fire (const ui_event event, widget &target, const point ¢er, float dTheta, float dDist, uint8_t numFingers) |
Fires an event which takes touch-gesture parameters. More... | |
bool | fire (const ui_event event, widget &target, void *) |
Fires an event which takes notification parameters. More... | |
bool | fire (const ui_event event, widget &target, const message &msg) |
Fires an event which takes message parameters. More... | |
bool | fire (const ui_event event, widget &target, const SDL_Event &sdlevent) |
Fires an event that's a raw SDL event. More... | |
bool | fire (const ui_event event, widget &target, const std::string &text, int32_t start, int32_t len) |
Fires an event which takes text input parameters. More... | |
template<ui_event E, typename F > | |
void | connect_signal (const F &func, const queue_position position=back_child) |
Adds a callback to the appropriate queue based on event type. More... | |
template<ui_event E, typename F > | |
void | disconnect_signal (const F &func, const queue_position position=back_child) |
Removes a callback from the appropriate queue based on event type. More... | |
void | capture_mouse () |
Captures the mouse. More... | |
void | release_mouse () |
Releases the mouse capture. More... | |
void | set_mouse_behavior (const mouse_behavior mouse_behavior) |
mouse_behavior | get_mouse_behavior () const |
void | set_want_keyboard_input (const bool want_keyboard_input) |
bool | get_want_keyboard_input () const |
void | register_hotkey (const hotkey::HOTKEY_COMMAND id, const hotkey_function &function) |
Registers a hotkey. More... | |
bool | execute_hotkey (const hotkey::HOTKEY_COMMAND id) |
Executes a hotkey. More... | |
Public Member Functions inherited from enable_lua_ptr< widget > | |
enable_lua_ptr (widget *tp) | |
Public Member Functions inherited from gui2::top_level_drawable | |
virtual void | update () |
Update state and any parameters that may effect layout, or any of the later stages. More... | |
Private Member Functions | |
virtual void | pre_show () override |
Actions to be taken before showing the window. More... | |
virtual const std::string & | window_id () const override |
The ID of the window to build. More... | |
void | load_unit_type () |
Load Unit Type data from cfg. More... | |
void | save_unit_type () |
Save Unit Type data to cfg. More... | |
void | write_macro (std::ostream &out, unsigned level, const std::string macro_name) |
Write macro to a stream at specified tab level. More... | |
void | update_wml_view () |
Update wml preview. More... | |
void | load_movetype () |
Callback for loading movetype data in UI. More... | |
void | update_resistances () |
Callback for resistance list. More... | |
void | store_resistances () |
void | enable_resistances_slider () |
void | update_defenses () |
Callbacks for defense list. More... | |
void | store_defenses () |
void | enable_defense_slider () |
void | update_movement_costs () |
Callbacks for movement list. More... | |
void | store_movement_costs () |
void | enable_movement_slider () |
void | store_attack () |
Callbacks for attack page. More... | |
void | update_attacks () |
void | add_attack () |
void | delete_attack () |
void | update_index () |
void | next_attack () |
void | prev_attack () |
void | select_attack () |
void | on_page_select () |
Callback when an tab item in the "page" listbox is selected. More... | |
void | select_file (const std::string &default_dir, const std::string &id_stem) |
Callback for file select button. More... | |
void | update_image (const std::string &id_stem) |
Callback for image update. More... | |
void | button_state_change () |
Callback to enable/disable OK button if ID/Name is invalid. More... | |
void | quit_confirmation () |
Quit confirmation. More... | |
bool | check_id (std::string id) |
Utility method to check if ID contains any invalid characters. More... | |
void | set_selected_from_string (menu_button &list, std::vector< config > values, std::string item) |
void | set_selected_from_string (combobox &list, std::vector< config > values, std::string item) |
void | signal_handler_sdl_key_down (const event::ui_event, bool &handled, const SDL_Keycode key, SDL_Keymod modifier) |
Additional Inherited Members | |
Public Types inherited from gui2::window | |
enum class | status { NEW , SHOWING , REQUEST_CLOSE , CLOSED } |
The status of the window. More... | |
enum class | exit_hook { on_all , on_ok } |
enum class | show_mode { none , modal , modeless , tooltip } |
Public Types inherited from gui2::widget | |
enum class | visibility { visible , hidden , invisible } |
Visibility settings done by the user. More... | |
enum class | redraw_action { full , partly , none } |
Visibility set by the engine. More... | |
enum class | debug_border { none , outline , fill } |
Public Types inherited from gui2::event::dispatcher | |
enum | event_queue_type { pre = 1 , child = 2 , post = 4 } |
enum | queue_position { front_pre_child , back_pre_child , front_child , back_child , front_post_child , back_post_child } |
The position where to add a new callback in the signal handler. More... | |
enum class | mouse_behavior { all , hit , none } |
The behavior of the mouse events. More... | |
Static Public Member Functions inherited from gui2::window | |
static window * | window_instance (const unsigned handle) |
Returns the instance of a window. More... | |
static retval | get_retval_by_id (const std::string &id) |
Gets the retval for the default buttons. More... | |
static const std::string & | type () |
Static type getter that does not rely on the widget being constructed. More... | |
Static Public Member Functions inherited from gui2::panel | |
static const std::string & | type () |
Static type getter that does not rely on the widget being constructed. More... | |
Protected Member Functions inherited from gui2::dialogs::modal_dialog | |
template<typename T , typename... Args> | |
T * | register_field (Args &&... args) |
Creates a new field of given type with given arguments. More... | |
field_bool * | register_bool (const std::string &id, const bool mandatory, const std::function< bool()> callback_load_value=nullptr, const std::function< void(bool)> callback_save_value=nullptr, const std::function< void(widget &)> callback_change=nullptr, const bool initial_fire=false) |
Creates a new boolean field. More... | |
field_bool * | register_bool (const std::string &id, const bool mandatory, bool &linked_variable, const std::function< void(widget &)> callback_change=nullptr, const bool initial_fire=false) |
Creates a new boolean field. More... | |
field_integer * | register_integer (const std::string &id, const bool mandatory, const std::function< int()> callback_load_value=nullptr, const std::function< void(int)> callback_save_value=nullptr) |
Creates a new integer field. More... | |
field_integer * | register_integer (const std::string &id, const bool mandatory, int &linked_variable) |
Creates a new integer field. More... | |
field_text * | register_text (const std::string &id, const bool mandatory, const std::function< std::string()> callback_load_value=nullptr, const std::function< void(const std::string &)> callback_save_value=nullptr, const bool capture_focus=false) |
Creates a new text field. More... | |
field_text * | register_text (const std::string &id, const bool mandatory, std::string &linked_variable, const bool capture_focus=false) |
Creates a new text field. More... | |
field_label * | register_label (const std::string &id, const bool mandatory, const std::string &text, const bool use_markup=false) |
Registers a new styled_widget as a label. More... | |
field_label * | register_image (const std::string &id, const bool mandatory, const std::string &filename) |
Registers a new styled_widget as image. More... | |
Protected Member Functions inherited from gui2::container_base | |
virtual point | calculate_best_size () const override |
See widget::calculate_best_size. More... | |
virtual void | layout_children () override |
See widget::layout_children. More... | |
Protected Member Functions inherited from gui2::styled_widget | |
resolution_definition_ptr | get_config () |
resolution_definition_const_ptr | get_config () const |
template<typename T > | |
std::shared_ptr< const typename T::resolution > | cast_config_to () const |
Casts the current resolution definition config to the respective type of a derived widget. More... | |
void | set_config (resolution_definition_ptr config) |
virtual void | update_canvas () |
Updates the canvas(ses). More... | |
unsigned int | get_text_font_size () const |
Resolves and returns the text_font_size. More... | |
int | get_text_maximum_width () const |
Returns the maximum width available for the text. More... | |
int | get_text_maximum_height () const |
Returns the maximum height available for the text. More... | |
std::string | get_label_token (const point &position, const char *delimiters=" \n\r\t") const |
Exposes font::pango_text::get_token, for the text label of this styled_widget. More... | |
std::string | get_label_link (const point &position) const |
Protected Member Functions inherited from gui2::widget | |
void | set_layout_size (const point &size) |
const point & | layout_size () const |
void | clear_layout_size () |
Throws away layout_size_. More... | |
Protected Member Functions inherited from gui2::top_level_drawable | |
top_level_drawable () | |
virtual | ~top_level_drawable () |
top_level_drawable (const top_level_drawable &) | |
top_level_drawable & | operator= (const top_level_drawable &) |
top_level_drawable (top_level_drawable &&) | |
top_level_drawable & | operator= (top_level_drawable &&) |
Dialog that allows user to create custom unit types.
Definition at line 36 of file edit_unit.hpp.
gui2::dialogs::editor_edit_unit::editor_edit_unit | ( | const game_config_view & | game_config, |
const std::string & | addon_id | ||
) |
Definition at line 59 of file edit_unit.cpp.
References abilities_list_, abilities_map_, game_config::path, preprocess_file(), read(), signal_handler_sdl_key_down(), specials_list_, and specials_map_.
|
private |
Definition at line 735 of file edit_unit.cpp.
References addon_id_, attacks_, gui2::tab_container::get_active_tab_index(), gui2::tab_container::select_tab(), selected_attack_, and update_index().
Referenced by pre_show().
|
private |
Callback to enable/disable OK button if ID/Name is invalid.
Definition at line 1019 of file edit_unit.cpp.
References check_id(), gui2::widget::find_widget(), and gui2::widget::queue_redraw().
Referenced by load_unit_type(), and pre_show().
|
private |
Utility method to check if ID contains any invalid characters.
Definition at line 1009 of file edit_unit.cpp.
References c.
Referenced by button_state_change().
gui2::dialogs::editor_edit_unit::DEFINE_SIMPLE_EXECUTE_WRAPPER | ( | editor_edit_unit | ) |
The execute function.
See modal_dialog for more information.
|
private |
Definition at line 764 of file edit_unit.cpp.
References attacks_, gui2::tab_container::get_active_tab_index(), next_attack(), prev_attack(), gui2::tab_container::select_tab(), selected_attack_, and update_index().
Referenced by pre_show().
|
private |
|
private |
|
private |
|
private |
Callback for loading movetype data in UI.
Definition at line 823 of file edit_unit.cpp.
References defenses_, game_config_, gui2::tab_container::get_active_tab_index(), movement_, resistances_, gui2::tab_container::select_tab(), update_defenses(), update_movement_costs(), and update_resistances().
Referenced by pre_show().
|
private |
Load Unit Type data from cfg.
Definition at line 353 of file edit_unit.cpp.
References _(), align_list_, attacks_, button_state_change(), gui2::dialogs::unit_create::choice(), def_toggles_, defense_list_, defenses_, unit_type_data::find(), string_enums::enum_base< Definition >::get_string(), i, gui2::window::invalidate_layout(), utils::join(), config::mandatory_child(), move_toggles_, movement_, movetype_list_, race_list_, res_toggles_, resistances_, resistances_list_, gui2::tab_container::select_tab(), selected_attack_, set_selected_from_string(), gui2::dialogs::modal_dialog::show(), specials_list_, gui2::window::type(), unit_types, update_attacks(), update_defenses(), update_image(), update_index(), update_resistances(), and usage_type_list_.
Referenced by pre_show(), and signal_handler_sdl_key_down().
|
private |
Definition at line 791 of file edit_unit.cpp.
References attacks_, selected_attack_, store_attack(), update_attacks(), and update_index().
Referenced by delete_attack(), and pre_show().
|
private |
Callback when an tab item in the "page" listbox is selected.
Definition at line 298 of file edit_unit.cpp.
References gui2::tab_container::get_active_tab_index(), save_unit_type(), and update_wml_view().
Referenced by pre_show().
|
overrideprivatevirtual |
Actions to be taken before showing the window.
At this point the registered fields are registered and initialized with their initial values.
Reimplemented from gui2::dialogs::modal_dialog.
Definition at line 84 of file edit_unit.cpp.
References _(), abilities_list_, add_attack(), align_list_, config::attribute_range(), button_state_change(), gui2::event::connect_signal_mouse_left_click(), gui2::event::connect_signal_notify_modified(), def_toggles_, defense_list_, delete_attack(), enable_defense_slider(), enable_movement_slider(), enable_resistances_slider(), game_config_, i, gui2::tip_of_the_day::load(), load_movetype(), load_unit_type(), game_config_view::mandatory_child(), config::mandatory_child(), move_toggles_, unit_type_data::movement_types(), movetype_list_, next_attack(), on_page_select(), prev_attack(), quit_confirmation(), race_list_, unit_type_data::races(), res_toggles_, resistances_list_, select_attack(), select_file(), gui2::tab_container::select_tab(), gui2::multimenu_button::set_values(), gui2::combobox::set_values(), gui2::menu_button::set_values(), specials_list_, store_defenses(), store_movement_costs(), store_resistances(), gui2::styled_widget::tooltip(), unit_types, update_defenses(), update_image(), update_index(), update_movement_costs(), update_resistances(), and usage_type_list_.
|
private |
Definition at line 802 of file edit_unit.cpp.
References attacks_, selected_attack_, store_attack(), update_attacks(), and update_index().
Referenced by delete_attack(), and pre_show().
|
private |
Quit confirmation.
Definition at line 1030 of file edit_unit.cpp.
References _(), gui2::CANCEL, gui2::OK, gui2::window::set_retval(), gui2::show_message(), and gui2::dialogs::message::yes_no_buttons.
Referenced by pre_show().
|
private |
Save Unit Type data to cfg.
Definition at line 482 of file edit_unit.cpp.
References _(), abilities_map_, config::add_child(), addon_id_, config::attribute_range(), config::clear(), def_toggles_, defenses_, gui2::widget::find_widget(), gui2::tab_container::get_tab_grid(), gui2::scroll_text::get_value(), gui2::text_box_base::get_value(), gui2::toggle_button::get_value(), i, move_toggles_, movement_, res_toggles_, resistances_, sel_abilities_, and type_cfg_.
Referenced by on_page_select(), and update_wml_view().
|
private |
Definition at line 816 of file edit_unit.cpp.
References selected_attack_, update_attacks(), and update_index().
Referenced by pre_show().
|
private |
Callback for file select button.
Definition at line 308 of file edit_unit.cpp.
References _(), addon_id_, filesystem::copy_file(), gui2::OK, gui2::dialogs::file_dialog::path(), gui2::dialogs::file_dialog::set_ok_label(), gui2::dialogs::file_dialog::set_path(), gui2::dialogs::file_dialog::set_read_only(), gui2::dialogs::file_dialog::set_title(), gui2::dialogs::modal_dialog::show(), gui2::show_message(), filesystem::to_asset_path(), update_image(), and gui2::dialogs::message::yes_no_buttons.
Referenced by pre_show().
|
inlineprivate |
Definition at line 146 of file edit_unit.hpp.
References i, gui2::combobox::set_selected(), and gui2::text_box_base::set_value().
|
inlineprivate |
Definition at line 137 of file edit_unit.hpp.
References i, and gui2::menu_button::set_selected().
Referenced by load_unit_type(), and update_attacks().
|
private |
Definition at line 1057 of file edit_unit.cpp.
References load_unit_type().
Referenced by editor_edit_unit().
|
private |
Callbacks for attack page.
Definition at line 652 of file edit_unit.cpp.
References addon_id_, attacks_, gui2::tab_container::get_active_tab_index(), gui2::tab_container::select_tab(), and selected_attack_.
Referenced by next_attack(), prev_attack(), and update_wml_view().
|
private |
|
private |
|
private |
|
private |
Definition at line 680 of file edit_unit.cpp.
References attacks_, gui2::tab_container::get_active_tab_index(), resistances_list_, gui2::tab_container::select_tab(), selected_attack_, set_selected_from_string(), and update_image().
Referenced by load_unit_type(), next_attack(), prev_attack(), and select_attack().
|
private |
Callbacks for defense list.
Definition at line 606 of file edit_unit.cpp.
References def_toggles_, and defenses_.
Referenced by load_movetype(), load_unit_type(), and pre_show().
|
private |
Callback for image update.
Definition at line 979 of file edit_unit.cpp.
References image::get_size(), gui2::window::invalidate_layout(), and gui2::widget::queue_redraw().
Referenced by load_unit_type(), pre_show(), select_file(), and update_attacks().
|
private |
Definition at line 709 of file edit_unit.cpp.
References attacks_, gui2::tab_container::get_active_tab_index(), gui2::tab_container::select_tab(), selected_attack_, gui2::menu_button::set_selected(), and gui2::menu_button::set_values().
Referenced by add_attack(), delete_attack(), load_unit_type(), next_attack(), pre_show(), prev_attack(), and select_attack().
|
private |
Callbacks for movement list.
Definition at line 629 of file edit_unit.cpp.
References move_toggles_, and movement_.
Referenced by load_movetype(), and pre_show().
|
private |
Callback for resistance list.
Definition at line 583 of file edit_unit.cpp.
References res_toggles_, and resistances_.
Referenced by load_movetype(), load_unit_type(), and pre_show().
|
private |
Update wml preview.
Definition at line 856 of file edit_unit.cpp.
References addon_id_, attacks_, config::attribute_count(), config::attribute_range(), config_writer::close_child(), def_toggles_, defenses_, config::empty(), generated_wml, i, game_config::images::level, config::mandatory_child(), move_toggles_, movement_, config_writer::open_child(), res_toggles_, resistances_, save_unit_type(), sel_abilities_, gui2::tab_container::select_tab(), specials_map_, store_attack(), type_cfg_, write_key_val(), and write_macro().
Referenced by on_page_select(), and write().
|
overrideprivatevirtual |
The ID of the window to build.
Usually set by REGISTER_DIALOG.
Implements gui2::dialogs::modal_dialog.
void gui2::dialogs::editor_edit_unit::write | ( | ) |
Write the cfg file.
Definition at line 1038 of file edit_unit.cpp.
References _(), addon_id_, e, generated_wml, filesystem::get_current_editor_dir(), config::mandatory_child(), gui2::show_transient_message(), type_cfg_, unit_name(), update_wml_view(), filesystem::wml_extension, and filesystem::write_file().
Referenced by editor::editor_controller::unit_editor_dialog().
|
private |
Write macro to a stream at specified tab level.
Definition at line 847 of file edit_unit.cpp.
References i, and game_config::images::level.
Referenced by update_wml_view().
|
private |
Definition at line 62 of file edit_unit.hpp.
Referenced by editor_edit_unit(), and pre_show().
|
private |
Definition at line 53 of file edit_unit.hpp.
Referenced by editor_edit_unit(), and save_unit_type().
|
private |
Definition at line 49 of file edit_unit.hpp.
Referenced by add_attack(), save_unit_type(), select_file(), store_attack(), update_wml_view(), and write().
|
private |
Definition at line 61 of file edit_unit.hpp.
Referenced by load_unit_type(), and pre_show().
|
private |
Definition at line 64 of file edit_unit.hpp.
Referenced by add_attack(), delete_attack(), load_unit_type(), next_attack(), prev_attack(), store_attack(), update_attacks(), update_index(), and update_wml_view().
|
private |
Definition at line 59 of file edit_unit.hpp.
Referenced by enable_defense_slider(), load_unit_type(), pre_show(), save_unit_type(), update_defenses(), and update_wml_view().
|
private |
Definition at line 61 of file edit_unit.hpp.
Referenced by load_unit_type(), and pre_show().
|
private |
Definition at line 52 of file edit_unit.hpp.
Referenced by load_movetype(), load_unit_type(), save_unit_type(), store_defenses(), update_defenses(), and update_wml_view().
|
private |
Definition at line 48 of file edit_unit.hpp.
Referenced by load_movetype(), and pre_show().
|
private |
Generated WML.
Definition at line 70 of file edit_unit.hpp.
Referenced by update_wml_view(), and write().
|
private |
Definition at line 59 of file edit_unit.hpp.
Referenced by enable_movement_slider(), load_unit_type(), pre_show(), save_unit_type(), update_movement_costs(), and update_wml_view().
|
private |
Definition at line 52 of file edit_unit.hpp.
Referenced by load_movetype(), load_unit_type(), save_unit_type(), store_movement_costs(), update_movement_costs(), and update_wml_view().
|
private |
Definition at line 61 of file edit_unit.hpp.
Referenced by load_unit_type(), and pre_show().
|
private |
Definition at line 61 of file edit_unit.hpp.
Referenced by load_unit_type(), and pre_show().
|
private |
Used to control checkboxes for various resistances, defences, etc.
so that only specific values are overridden.
Definition at line 59 of file edit_unit.hpp.
Referenced by enable_resistances_slider(), load_unit_type(), pre_show(), save_unit_type(), update_resistances(), and update_wml_view().
|
private |
Definition at line 52 of file edit_unit.hpp.
Referenced by load_movetype(), load_unit_type(), save_unit_type(), store_resistances(), update_resistances(), and update_wml_view().
|
private |
Definition at line 61 of file edit_unit.hpp.
Referenced by load_unit_type(), pre_show(), and update_attacks().
|
private |
Need this because can't store macros in config.
Definition at line 67 of file edit_unit.hpp.
Referenced by save_unit_type(), and update_wml_view().
|
private |
Definition at line 67 of file edit_unit.hpp.
|
private |
0 means there are no attacks.
1 is the first attack, and so on.
Definition at line 73 of file edit_unit.hpp.
Referenced by add_attack(), delete_attack(), load_unit_type(), next_attack(), prev_attack(), select_attack(), store_attack(), update_attacks(), and update_index().
|
private |
Definition at line 62 of file edit_unit.hpp.
Referenced by editor_edit_unit(), load_unit_type(), and pre_show().
|
private |
Definition at line 53 of file edit_unit.hpp.
Referenced by editor_edit_unit(), and update_wml_view().
|
private |
Definition at line 51 of file edit_unit.hpp.
Referenced by save_unit_type(), update_wml_view(), and write().
|
private |
Definition at line 61 of file edit_unit.hpp.
Referenced by load_unit_type(), and pre_show().