#include <context_manager.hpp>
Public Member Functions | |
| context_manager (editor_display &gui, const std::string &addon_id) | |
| ~context_manager () | |
| bool | is_active_transitions_hotkey (const std::string &item) |
| std::size_t | modified_maps (std::string &modified) |
| void | set_update_transitions_mode (int mode) |
| bool | toggle_update_transitions () |
| bool | clipboard_empty () |
| map_fragment & | get_clipboard () |
| void | fill_selection () |
| Fill the selection with the foreground terrain. More... | |
| int | current_context_index () |
| Index into the map_contexts_ array. More... | |
| std::size_t | open_maps (void) |
| void | perform_refresh (const editor_action &action, bool drag_part=false) |
| Perform an action on the current map_context, then refresh the display. More... | |
| void | save_contexts () |
| Save all open map_contexts to memory. More... | |
| void | save_all_maps () |
| Save all maps, show save dialogs for unsaved ones. More... | |
| void | save_map (bool show_confirmation=true) |
| Save the map, open dialog if not named yet. More... | |
| editor_display & | gui () |
| void | refresh_all () |
| Refresh everything, i.e. More... | |
| void | apply_mask_dialog () |
| Display an apply mask dialog and process user input. More... | |
| void | create_mask_to_dialog () |
| Display an apply mask dialog and process user input. More... | |
| void | rename_area_dialog () |
| Display an dialog to querry a new id for an [time_area]. More... | |
| void | expand_open_maps_menu (std::vector< config > &items) const |
| Menu expanding for open maps list. More... | |
| void | expand_load_mru_menu (std::vector< config > &items) const |
| Menu expanding for most recent loaded list. More... | |
| void | expand_sides_menu (std::vector< config > &items) const |
| Menu expanding for the map's player sides. More... | |
| void | expand_areas_menu (std::vector< config > &items) const |
| Menu expanding for the map's defined areas. More... | |
| void | expand_time_menu (std::vector< config > &items) const |
| Menu expanding for the map's defined areas. More... | |
| void | expand_local_time_menu (std::vector< config > &items) const |
| Menu expanding for the map's defined areas. More... | |
| void | load_map_dialog (bool force_same_context=false) |
| Display a load map dialog and process user input. More... | |
| void | load_mru_item (unsigned index, bool force_same_context=false) |
| Open the specified entry from the recent files list. More... | |
| void | edit_scenario_dialog () |
| Display a scenario edit dialog and process user input. More... | |
| void | edit_side_dialog (const team &t) |
| Display a side edit dialog and process user input. More... | |
| void | new_map_dialog () |
| Display a new map dialog and process user input. More... | |
| void | new_scenario_dialog () |
| Display a new map dialog and process user input. More... | |
| void | save_map_as_dialog () |
| Display a save map as dialog and process user input. More... | |
| void | save_scenario_as_dialog () |
| Display a save map as dialog and process user input. More... | |
| void | generate_map_dialog (const std::vector< std::unique_ptr< map_generator >> &map_generators) |
| Display a generate random map dialog and process user input. More... | |
| void | resize_map_dialog () |
| Display a load map dialog and process user input. More... | |
| std::size_t | size () |
| map_context & | get_map_context () |
| Get the current map context object. More... | |
| void | set_addon_id (const std::string &id) |
| void | set_default_dir (const std::string &str) |
| Set the default dir (where the filebrowser is pointing at when there is no map file opened) More... | |
| void | edit_pbl () |
| void | change_addon_id () |
| virtual const display_context & | get_disp_context () const override |
| Inherited from filter_context. More... | |
| virtual const tod_manager & | get_tod_man () const override |
| Inherited from filter_context. More... | |
| virtual const game_data * | get_game_data () const override |
| Inherited from filter_context. More... | |
| virtual game_lua_kernel * | get_lua_kernel () const override |
| Inherited from filter_context. More... | |
| void | refresh_after_action (bool drag_part=false) |
| Refresh the display after an action has been performed. More... | |
| void | close_current_context () |
| Closes the active map context. More... | |
| void | switch_context (const int index, const bool force=false) |
| Switches the context to the one under the specified index. More... | |
| void | map_to_scenario () |
| Convert existing map to scenario. More... | |
| void | load_map (const std::string &filename, bool new_context) |
| Load a map given the filename. More... | |
| void | revert_map () |
| Revert the map by reloading it from disk. More... | |
| void | reload_map () |
| Reload the map after it has significantly changed (when e.g. More... | |
Public Member Functions inherited from filter_context | |
| virtual | ~filter_context () |
Public Attributes | |
| class location_palette * | locs_ |
Private Member Functions | |
| bool | confirm_discard () |
| Shows an are-you-sure dialog if the map was modified. More... | |
| const map_context & | get_map_context () const |
| Get the current map context object - const version. More... | |
| template<typename... T> | |
| int | add_map_context (T &&... args) |
| Add a map context. More... | |
| int | add_map_context_of (std::unique_ptr< map_context > &&mc) |
| template<typename... T> | |
| void | replace_map_context (T &&... args) |
| Replace the current map context and refresh accordingly. More... | |
| void | replace_map_context_with (std::unique_ptr< map_context > &&mc) |
| void | create_default_context () |
| Creates a default map context object, used to ensure there is always at least one. More... | |
| void | create_blank_context () |
| void | refresh_on_context_change () |
| Performs the necessary housekeeping necessary when switching contexts. More... | |
| bool | write_map (bool display_confirmation=true) |
| Save the map under a given filename. More... | |
| bool | write_scenario (bool display_confirmation=true) |
| void | init_context (int width, int height, const t_translation::terrain_code &fill, bool new_context, bool is_pure_map=true) |
| void | new_map (int width, int height, const t_translation::terrain_code &fill, bool new_context) |
| Create a new map. More... | |
| void | new_scenario (int width, int height, const t_translation::terrain_code &fill, bool new_context) |
| Create a new scenario. More... | |
| std::size_t | check_open_map (const std::string &fn) const |
| Check if a map is already open. More... | |
| bool | check_switch_open_map (const std::string &fn) |
| Check if a map is already open. More... | |
| void | set_window_title () |
| Displays the specified map name in the window titlebar. More... | |
Private Attributes | |
| editor_display & | gui_ |
| std::string | default_dir_ |
| Default directory for map load/save as dialogs. More... | |
| std::string | current_addon_ |
| The currently selected add-on. More... | |
| int | current_context_index_ |
| int | auto_update_transitions_ |
| Flag to rebuild terrain on every terrain change. More... | |
| std::vector< std::unique_ptr< map_context > > | map_contexts_ |
| The currently opened map context object. More... | |
| map_fragment | clipboard_ |
| Clipboard map_fragment – used for copy-paste. More... | |
Definition at line 26 of file context_manager.hpp.
| editor::context_manager::context_manager | ( | editor_display & | gui, |
| const std::string & | addon_id | ||
| ) |
Definition at line 80 of file context_manager.cpp.
References create_default_context(), and resources::filter_con.
| editor::context_manager::~context_manager | ( | ) |
Definition at line 94 of file context_manager.cpp.
References resources::filter_con, game_config::get_default_title_string(), and video::set_window_title().
|
private |
Add a map context.
The controller assumes ownership.
Definition at line 1034 of file context_manager.cpp.
References map_contexts_.
Referenced by create_blank_context(), and init_context().
|
private |
Definition at line 1040 of file context_manager.cpp.
References map_contexts_.
Referenced by load_map().
| void editor::context_manager::apply_mask_dialog | ( | ) |
Display an apply mask dialog and process user input.
Definition at line 452 of file context_manager.cpp.
References _(), current_addon_, e, filesystem::get_current_editor_dir(), filesystem::get_dir(), editor::map_context::get_filename(), get_map_context(), editor::map_context::map(), gui2::dialogs::file_dialog::path(), perform_refresh(), gui2::dialogs::file_dialog::set_path(), gui2::dialogs::file_dialog::set_title(), gui2::dialogs::modal_dialog::show(), gui2::show_error_message(), and gui2::show_transient_message().
| void editor::context_manager::change_addon_id | ( | ) |
Definition at line 252 of file context_manager.cpp.
References addon_filename_legal(), current_addon_, filesystem::get_current_editor_dir(), main(), map_contexts_, filesystem::read_file(), filesystem::rename_dir(), and filesystem::write_file().
|
private |
Check if a map is already open.
Definition at line 891 of file context_manager.cpp.
References i, and map_contexts_.
Referenced by check_switch_open_map(), save_map_as_dialog(), and save_scenario_as_dialog().
|
private |
Check if a map is already open.
If yes, switch to it and return true, return false otherwise.
Definition at line 901 of file context_manager.cpp.
References _(), check_open_map(), i, map_contexts_, gui2::show_transient_message(), and switch_context().
Referenced by load_map().
|
inline |
Definition at line 44 of file context_manager.hpp.
References clipboard_, and editor::map_fragment::empty().
| void editor::context_manager::close_current_context | ( | ) |
Closes the active map context.
Switches to a valid context afterward or creates a dummy one.
Definition at line 1079 of file context_manager.cpp.
References confirm_discard(), create_default_context(), current_context_index_, map_contexts_, and refresh_on_context_change().
|
private |
Shows an are-you-sure dialog if the map was modified.
Definition at line 809 of file context_manager.cpp.
References _(), gui2::CANCEL, get_map_context(), gui2::show_message(), and gui2::dialogs::message::yes_no_buttons.
Referenced by close_current_context(), and revert_map().
|
private |
Definition at line 1071 of file context_manager.cpp.
References add_map_context(), current_addon_, game_config::default_terrain, and t_translation::read_terrain_code().
Referenced by create_default_context(), and save_contexts().
|
private |
Creates a default map context object, used to ensure there is always at least one.
When we have saved contexts, reopen them instead.
Definition at line 1059 of file context_manager.cpp.
References create_blank_context(), map_contexts_, and switch_context().
Referenced by close_current_context(), and context_manager().
| void editor::context_manager::create_mask_to_dialog | ( | ) |
Display an apply mask dialog and process user input.
Definition at line 495 of file context_manager.cpp.
References _(), current_addon_, e, filesystem::get_current_editor_dir(), filesystem::get_dir(), editor::map_context::get_filename(), get_map_context(), editor::map_context::map(), gui2::dialogs::file_dialog::path(), perform_refresh(), gui2::dialogs::file_dialog::set_path(), gui2::dialogs::file_dialog::set_title(), gui2::dialogs::modal_dialog::show(), gui2::show_error_message(), and gui2::show_transient_message().
|
inline |
Index into the map_contexts_ array.
Definition at line 58 of file context_manager.hpp.
References current_context_index_.
| void editor::context_manager::edit_pbl | ( | ) |
Definition at line 244 of file context_manager.cpp.
References current_addon_, and filesystem::get_current_editor_dir().
| void editor::context_manager::edit_scenario_dialog | ( | ) |
Display a scenario edit dialog and process user input.
Definition at line 277 of file context_manager.cpp.
References editor::map_context::get_description(), editor::map_context::get_id(), get_map_context(), editor::map_context::get_name(), editor::map_context::get_time_manager(), editor::map_context::get_xp_mod(), tod_manager::number_of_turns(), editor::map_context::random_start_time(), editor::map_context::set_scenario_setup(), set_window_title(), and editor::map_context::victory_defeated().
| void editor::context_manager::edit_side_dialog | ( | const team & | t | ) |
Display a side edit dialog and process user input.
Definition at line 235 of file context_manager.cpp.
References get_map_context(), editor::map_context::set_side_setup(), and t.
| void editor::context_manager::expand_areas_menu | ( | std::vector< config > & | items | ) | const |
Menu expanding for the map's defined areas.
Definition at line 383 of file context_manager.cpp.
References _(), editor::map_context::get_active_area(), tod_manager::get_area_by_index(), tod_manager::get_area_ids(), get_map_context(), editor::map_context::get_time_manager(), markup::italic(), editor::map_context::map(), and editor::editor_map::selection().
| void editor::context_manager::expand_load_mru_menu | ( | std::vector< config > & | items | ) | const |
Menu expanding for most recent loaded list.
Definition at line 367 of file context_manager.cpp.
References _(), filesystem::base_name(), prefs::get(), game_config::path, and prefs::recent_files().
| void editor::context_manager::expand_local_time_menu | ( | std::vector< config > & | items | ) | const |
Menu expanding for the map's defined areas.
Definition at line 442 of file context_manager.cpp.
References get_map_context(), editor::map_context::get_time_manager(), and tod_manager::times().
| void editor::context_manager::expand_open_maps_menu | ( | std::vector< config > & | items | ) | const |
Menu expanding for open maps list.
Definition at line 332 of file context_manager.cpp.
References filesystem::base_name(), filename, editor::map_context::get_default_context_name(), editor::map_context::get_filename(), editor::map_context::get_name(), editor::map_context::is_embedded(), editor::map_context::is_pure_map(), markup::italic(), map_contexts_, and editor::map_context::modified().
| void editor::context_manager::expand_sides_menu | ( | std::vector< config > & | items | ) | const |
Menu expanding for the map's player sides.
Definition at line 412 of file context_manager.cpp.
References _(), get_map_context(), markup::italic(), label, t, and editor::map_context::teams().
| void editor::context_manager::expand_time_menu | ( | std::vector< config > & | items | ) | const |
Menu expanding for the map's defined areas.
Definition at line 431 of file context_manager.cpp.
References get_map_context(), editor::map_context::get_time_manager(), and tod_manager::times().
| void editor::context_manager::fill_selection | ( | ) |
Fill the selection with the foreground terrain.
Definition at line 820 of file context_manager.cpp.
References get_map_context(), editor::get_selected_bg_terrain(), and perform_refresh().
| void editor::context_manager::generate_map_dialog | ( | const std::vector< std::unique_ptr< map_generator >> & | map_generators | ) |
Display a generate random map dialog and process user input.
Definition at line 776 of file context_manager.cpp.
References _(), map_generator::create_map(), e, get_map_context(), gui2::dialogs::editor_generate_map::get_seed(), gui2::dialogs::editor_generate_map::get_selected_map_generator(), new_map(), perform_refresh(), gui2::dialogs::editor_generate_map::select_map_generator(), editor::map_context::set_last_used_generator(), editor::map_context::set_needs_labels_reset(), gui2::dialogs::modal_dialog::show(), gui2::show_error_message(), and gui2::show_transient_message().
|
inline |
Definition at line 49 of file context_manager.hpp.
References clipboard_.
Referenced by editor::editor_toolkit::init_mouse_actions().
|
inlineoverridevirtual |
Inherited from filter_context.
Implements filter_context.
Definition at line 179 of file context_manager.hpp.
References get_map_context().
|
inlineoverridevirtual |
Inherited from filter_context.
Implements filter_context.
Definition at line 191 of file context_manager.hpp.
|
inlineoverridevirtual |
Inherited from filter_context.
Implements filter_context.
Definition at line 197 of file context_manager.hpp.
|
inline |
Get the current map context object.
Definition at line 156 of file context_manager.hpp.
References current_context_index_, and map_contexts_.
Referenced by apply_mask_dialog(), confirm_discard(), create_mask_to_dialog(), edit_scenario_dialog(), edit_side_dialog(), expand_areas_menu(), expand_local_time_menu(), expand_sides_menu(), expand_time_menu(), fill_selection(), generate_map_dialog(), get_disp_context(), get_tod_man(), load_map(), load_map_dialog(), map_to_scenario(), new_map_dialog(), new_scenario(), new_scenario_dialog(), perform_refresh(), refresh_after_action(), refresh_all(), refresh_on_context_change(), reload_map(), rename_area_dialog(), resize_map_dialog(), revert_map(), save_map(), save_map_as_dialog(), save_scenario_as_dialog(), set_window_title(), switch_context(), write_map(), and write_scenario().
|
inlineprivate |
Get the current map context object - const version.
Definition at line 213 of file context_manager.hpp.
References current_context_index_, and map_contexts_.
|
inlineoverridevirtual |
Inherited from filter_context.
Implements filter_context.
Definition at line 185 of file context_manager.hpp.
References get_map_context(), and editor::map_context::get_time_manager().
|
inline |
Definition at line 83 of file context_manager.hpp.
References gui_.
Referenced by map_to_scenario(), new_scenario(), and refresh_on_context_change().
|
private |
Definition at line 984 of file context_manager.cpp.
References add_map_context(), current_addon_, draw::fill(), replace_map_context(), and switch_context().
Referenced by new_map(), and new_scenario().
| bool editor::context_manager::is_active_transitions_hotkey | ( | const std::string & | item | ) |
Definition at line 156 of file context_manager.cpp.
References auto_update_transitions_, pref_constants::TRANSITION_UPDATE_OFF, pref_constants::TRANSITION_UPDATE_ON, and pref_constants::TRANSITION_UPDATE_PARTIAL.
| void editor::context_manager::load_map | ( | const std::string & | filename, |
| bool | new_context | ||
| ) |
Load a map given the filename.
Definition at line 913 of file context_manager.cpp.
References _(), add_map_context_of(), check_switch_open_map(), current_addon_, editor::editor_controller::current_addon_id_, e, filename, filesystem::get_addon_id_from_path(), get_filename(), get_map_context(), editor::initialize_addon(), filesystem::is_cfg(), LOG_ED, wfl::msg(), replace_map_context_with(), set_addon_id(), gui2::show_transient_message(), and switch_context().
Referenced by load_map_dialog(), load_mru_item(), and revert_map().
| void editor::context_manager::load_map_dialog | ( | bool | force_same_context = false | ) |
Display a load map dialog and process user input.
Definition at line 204 of file context_manager.cpp.
References _(), editor::editor_controller::current_addon_id_, filesystem::get_current_editor_dir(), editor::map_context::get_filename(), filesystem::get_legacy_editor_dir(), get_map_context(), load_map(), gui2::dialogs::file_dialog::path(), gui2::dialogs::file_dialog::set_path(), gui2::dialogs::file_dialog::set_title(), and gui2::dialogs::modal_dialog::show().
| void editor::context_manager::load_mru_item | ( | unsigned | index, |
| bool | force_same_context = false |
||
| ) |
Open the specified entry from the recent files list.
Definition at line 225 of file context_manager.cpp.
References prefs::get(), utf8::index(), load_map(), and prefs::recent_files().
| void editor::context_manager::map_to_scenario | ( | ) |
Convert existing map to scenario.
Definition at line 1011 of file context_manager.cpp.
References current_addon_, get_map_context(), gui(), gui_, i, display::init_flags(), editor::map_context::map(), editor::map_context::new_side(), gamemap_base::num_valid_starting_positions(), replace_map_context(), display::set_playing_team_index(), and display::set_viewing_team_index().
| std::size_t editor::context_manager::modified_maps | ( | std::string & | modified | ) |
Definition at line 182 of file context_manager.cpp.
References map_contexts_, and font::unicode_bullet.
|
private |
Create a new map.
Definition at line 995 of file context_manager.cpp.
References draw::fill(), and init_context().
Referenced by generate_map_dialog(), and new_map_dialog().
| void editor::context_manager::new_map_dialog | ( | ) |
Display a new map dialog and process user input.
Definition at line 306 of file context_manager.cpp.
References _(), draw::fill(), get_map_context(), editor::get_selected_bg_terrain(), gamemap_base::h(), h, editor::map_context::map(), new_map(), gamemap_base::w(), and w.
|
private |
Create a new scenario.
Definition at line 1000 of file context_manager.cpp.
References draw::fill(), get_map_context(), gui(), gui_, init_context(), display::init_flags(), editor::map_context::new_side(), display::set_playing_team_index(), and display::set_viewing_team_index().
Referenced by new_scenario_dialog().
| void editor::context_manager::new_scenario_dialog | ( | ) |
Display a new map dialog and process user input.
Definition at line 319 of file context_manager.cpp.
References _(), draw::fill(), get_map_context(), editor::get_selected_bg_terrain(), gamemap_base::h(), h, editor::map_context::map(), new_scenario(), gamemap_base::w(), and w.
|
inline |
Definition at line 63 of file context_manager.hpp.
References map_contexts_.
| void editor::context_manager::perform_refresh | ( | const editor_action & | action, |
| bool | drag_part = false |
||
| ) |
Perform an action on the current map_context, then refresh the display.
Definition at line 479 of file context_manager.cpp.
References get_map_context(), editor::map_context::perform_action(), and refresh_after_action().
Referenced by apply_mask_dialog(), create_mask_to_dialog(), fill_selection(), generate_map_dialog(), and resize_map_dialog().
| void editor::context_manager::refresh_after_action | ( | bool | drag_part = false | ) |
Refresh the display after an action has been performed.
The map context contains details of what needs to be refreshed.
Definition at line 522 of file context_manager.cpp.
References auto_update_transitions_, editor::map_context::changed_locations(), editor::map_context::clear_changed_locations(), get_map_context(), gui_, display::invalidate(), display::invalidate_all(), loc, display::rebuild_all(), editor::editor_display::rebuild_terrain(), display::recalculate_minimap(), reload_map(), editor::map_context::reset_starting_position_labels(), editor::map_context::set_needs_terrain_rebuild(), pref_constants::TRANSITION_UPDATE_ON, and pref_constants::TRANSITION_UPDATE_PARTIAL.
Referenced by perform_refresh().
| void editor::context_manager::refresh_all | ( | ) |
Refresh everything, i.e.
invalidate all hexes and redraw them. Does not reload the map.
Definition at line 125 of file context_manager.cpp.
References editor::location_palette::add_item(), editor::map_context::clear_changed_locations(), display::create_buttons(), get_map_context(), gui_, i, display::invalidate_all(), loc, locs_, display::rebuild_all(), display::recalculate_minimap(), editor::map_context::set_needs_terrain_rebuild(), and editor::map_context::teams().
Referenced by reload_map().
|
private |
Performs the necessary housekeeping necessary when switching contexts.
Definition at line 102 of file context_manager.cpp.
References display::change_display_context(), resources::classification, map_labels::enable(), editor::map_context::get_classification(), editor::map_context::get_labels(), get_map_context(), editor::map_context::get_time_manager(), gui(), display::init_flags(), reload_map(), display::set_playing_team_index(), display::set_viewing_team_index(), set_window_title(), and resources::tod_manager.
Referenced by close_current_context(), replace_map_context(), replace_map_context_with(), and switch_context().
| void editor::context_manager::reload_map | ( | ) |
Reload the map after it has significantly changed (when e.g.
the dimensions changed). This is necessary to avoid issues with parts of the map being cached in the display class.
Definition at line 148 of file context_manager.cpp.
References get_map_context(), gui_, refresh_all(), display::reload_map(), editor::map_context::reset_starting_position_labels(), and editor::map_context::set_needs_reload().
Referenced by refresh_after_action(), and refresh_on_context_change().
| void editor::context_manager::rename_area_dialog | ( | ) |
Display an dialog to querry a new id for an [time_area].
Definition at line 485 of file context_manager.cpp.
References editor::map_context::get_active_area(), tod_manager::get_area_ids(), get_map_context(), editor::map_context::get_time_manager(), N_, and tod_manager::set_area_id().
|
private |
Replace the current map context and refresh accordingly.
Definition at line 1047 of file context_manager.cpp.
References current_context_index_, map_contexts_, and refresh_on_context_change().
Referenced by init_context(), and map_to_scenario().
|
private |
Definition at line 1053 of file context_manager.cpp.
References current_context_index_, map_contexts_, and refresh_on_context_change().
Referenced by load_map().
| void editor::context_manager::resize_map_dialog | ( | ) |
Display a load map dialog and process user input.
Definition at line 561 of file context_manager.cpp.
References terrain_label::category(), terrain_label::color(), gui2::dialogs::editor_resize_map::EXPAND_BOTTOM, gui2::dialogs::editor_resize_map::EXPAND_BOTTOM_LEFT, gui2::dialogs::editor_resize_map::EXPAND_BOTTOM_RIGHT, gui2::dialogs::editor_resize_map::EXPAND_CENTER, gui2::dialogs::editor_resize_map::EXPAND_LEFT, gui2::dialogs::editor_resize_map::EXPAND_RIGHT, gui2::dialogs::editor_resize_map::EXPAND_TOP, gui2::dialogs::editor_resize_map::EXPAND_TOP_LEFT, gui2::dialogs::editor_resize_map::EXPAND_TOP_RIGHT, draw::fill(), gamemap_base::for_each_loc(), map_labels::get_label(), editor::map_context::get_labels(), get_map_context(), editor::get_selected_bg_terrain(), gamemap_base::h(), h, terrain_label::immutable(), loc, editor::map_context::map(), t_translation::NONE_TERRAIN, perform_refresh(), terrain_label::team_name(), terrain_label::text(), editor::map_context::units(), terrain_label::visible_in_fog(), terrain_label::visible_in_shroud(), gamemap_base::w(), w, WRN_ED, map_location::x, and map_location::y.
| void editor::context_manager::revert_map | ( | ) |
Revert the map by reloading it from disk.
Definition at line 969 of file context_manager.cpp.
References confirm_discard(), ERR_ED, filename, editor::map_context::get_filename(), get_map_context(), and load_map().
| void editor::context_manager::save_all_maps | ( | ) |
Save all maps, show save dialogs for unsaved ones.
Definition at line 825 of file context_manager.cpp.
References current_context_index_, i, map_contexts_, save_map(), and switch_context().
| void editor::context_manager::save_contexts | ( | ) |
Save all open map_contexts to memory.
Definition at line 835 of file context_manager.cpp.
References create_blank_context(), current_context_index_, map_contexts_, swap(), and switch_context().
| void editor::context_manager::save_map | ( | bool | show_confirmation = true | ) |
Save the map, open dialog if not named yet.
Definition at line 843 of file context_manager.cpp.
References editor::map_context::get_filename(), get_map_context(), filesystem::is_directory(), save_map_as_dialog(), save_scenario_as_dialog(), write_map(), and write_scenario().
Referenced by save_all_maps().
| void editor::context_manager::save_map_as_dialog | ( | ) |
Display a save map as dialog and process user input.
Definition at line 672 of file context_manager.cpp.
References _(), check_open_map(), editor::editor_controller::current_addon_id_, current_context_index_, filesystem::get_current_editor_dir(), editor::map_context::get_filename(), filesystem::get_legacy_editor_dir(), get_map_context(), map_contexts_, filesystem::map_extension, filesystem::mask_extension, gui2::OK, game_config::path, gui2::dialogs::file_dialog::path(), gui2::dialogs::file_dialog::set_extension(), editor::map_context::set_filename(), gui2::dialogs::file_dialog::set_path(), gui2::dialogs::file_dialog::set_save_mode(), gui2::dialogs::file_dialog::set_title(), gui2::dialogs::modal_dialog::show(), gui2::show_message(), gui2::show_transient_message(), write_map(), and gui2::dialogs::message::yes_no_buttons.
Referenced by save_map().
| void editor::context_manager::save_scenario_as_dialog | ( | ) |
Display a save map as dialog and process user input.
Definition at line 725 of file context_manager.cpp.
References _(), gui2::dialogs::file_dialog::add_extra_path(), check_open_map(), editor::editor_controller::current_addon_id_, current_context_index_, desktop::GAME_EDITOR_MAP_DIR, filesystem::get_current_editor_dir(), editor::map_context::get_filename(), get_map_context(), map_contexts_, gui2::OK, game_config::path, gui2::dialogs::file_dialog::path(), gui2::dialogs::file_dialog::set_extension(), editor::map_context::set_filename(), gui2::dialogs::file_dialog::set_path(), gui2::dialogs::file_dialog::set_save_mode(), gui2::dialogs::file_dialog::set_title(), gui2::dialogs::modal_dialog::show(), gui2::show_message(), gui2::show_transient_message(), filesystem::wml_extension, write_scenario(), and gui2::dialogs::message::yes_no_buttons.
Referenced by save_map().
|
inline |
Definition at line 161 of file context_manager.hpp.
References current_addon_, id, and map_contexts_.
Referenced by load_map().
|
inline |
Set the default dir (where the filebrowser is pointing at when there is no map file opened)
Definition at line 170 of file context_manager.hpp.
References default_dir_.
|
inline |
Definition at line 36 of file context_manager.hpp.
References auto_update_transitions_, and prefs::get().
|
private |
Displays the specified map name in the window titlebar.
Definition at line 1116 of file context_manager.cpp.
References filesystem::base_name(), editor::map_context::get_default_context_name(), game_config::get_default_title_string(), get_filename(), get_map_context(), editor::map_context::get_name(), and video::set_window_title().
Referenced by edit_scenario_dialog(), and refresh_on_context_change().
|
inline |
Definition at line 150 of file context_manager.hpp.
References map_contexts_.
| void editor::context_manager::switch_context | ( | const int | index, |
| const bool | force = false |
||
| ) |
Switches the context to the one under the specified index.
Definition at line 1096 of file context_manager.cpp.
References current_context_index_, map_labels::enable(), editor::map_context::get_labels(), get_map_context(), utf8::index(), map_contexts_, refresh_on_context_change(), and WRN_ED.
Referenced by check_switch_open_map(), create_default_context(), init_context(), load_map(), save_all_maps(), and save_contexts().
| bool editor::context_manager::toggle_update_transitions | ( | ) |
Definition at line 170 of file context_manager.cpp.
References auto_update_transitions_, prefs::get(), pref_constants::TRANSITION_UPDATE_COUNT, and pref_constants::TRANSITION_UPDATE_ON.
|
private |
Save the map under a given filename.
Displays an error message on failure.
Definition at line 876 of file context_manager.cpp.
References _(), e, get_map_context(), gui_, editor::map_context::save_map(), and editor::editor_display::set_status().
Referenced by save_map(), and save_map_as_dialog().
|
private |
Definition at line 861 of file context_manager.cpp.
References _(), e, get_map_context(), gui_, editor::map_context::save_scenario(), and editor::editor_display::set_status().
Referenced by save_map(), and save_scenario_as_dialog().
|
private |
Flag to rebuild terrain on every terrain change.
Definition at line 331 of file context_manager.hpp.
Referenced by is_active_transitions_hotkey(), refresh_after_action(), set_update_transitions_mode(), and toggle_update_transitions().
|
private |
Clipboard map_fragment – used for copy-paste.
Definition at line 337 of file context_manager.hpp.
Referenced by clipboard_empty(), and get_clipboard().
|
private |
The currently selected add-on.
Definition at line 326 of file context_manager.hpp.
Referenced by apply_mask_dialog(), change_addon_id(), create_blank_context(), create_mask_to_dialog(), edit_pbl(), init_context(), load_map(), map_to_scenario(), and set_addon_id().
|
private |
Definition at line 328 of file context_manager.hpp.
Referenced by close_current_context(), current_context_index(), get_map_context(), replace_map_context(), replace_map_context_with(), save_all_maps(), save_contexts(), save_map_as_dialog(), save_scenario_as_dialog(), and switch_context().
|
private |
Default directory for map load/save as dialogs.
Definition at line 323 of file context_manager.hpp.
Referenced by set_default_dir().
|
private |
Definition at line 320 of file context_manager.hpp.
Referenced by gui(), map_to_scenario(), new_scenario(), refresh_after_action(), refresh_all(), reload_map(), write_map(), and write_scenario().
| class location_palette* editor::context_manager::locs_ |
Definition at line 203 of file context_manager.hpp.
Referenced by refresh_all().
|
private |
The currently opened map context object.
Definition at line 334 of file context_manager.hpp.
Referenced by add_map_context(), add_map_context_of(), change_addon_id(), check_open_map(), check_switch_open_map(), close_current_context(), create_default_context(), expand_open_maps_menu(), get_map_context(), modified_maps(), open_maps(), replace_map_context(), replace_map_context_with(), save_all_maps(), save_contexts(), save_map_as_dialog(), save_scenario_as_dialog(), set_addon_id(), size(), and switch_context().