#include <context_manager.hpp>
Public Types | |
using | context_ptr = std::unique_ptr< map_context > |
Public Member Functions | |
context_manager (editor_display &gui, const game_config_view &game_config) | |
~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_all_maps (bool auto_save_windows=false) |
Save all maps, open dialog if not named yet, except when using auto_save_windows which will name unnamed maps "windows_N". More... | |
void | save_map () |
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, int i) |
Menu expanding for open maps list. More... | |
void | expand_load_mru_menu (std::vector< config > &items, int i) |
Menu expanding for most recent loaded list. More... | |
void | expand_sides_menu (std::vector< config > &items, int i) |
Menu expanding for the map's player sides. More... | |
void | expand_areas_menu (std::vector< config > &items, int i) |
Menu expanding for the map's defined areas. More... | |
void | expand_time_menu (std::vector< config > &items, int i) |
Menu expanding for the map's defined areas. More... | |
void | expand_local_time_menu (std::vector< config > &items, int i) |
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 (int side_index) |
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 () |
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_default_dir (const std::string &str) |
Set the default dir (where the filebrowser is pointing at when there is no map file opened) More... | |
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 | 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... | |
![]() | |
virtual | ~filter_context () |
Public Attributes | |
class location_palette * | locs_ |
Private Member Functions | |
void | init_map_generators (const game_config_view &game_config) |
init available random map generators More... | |
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 (const T &... args) |
Add a map context. More... | |
int | add_map_context_of (context_ptr &&mc) |
template<typename... T> | |
void | replace_map_context (const T &... args) |
Replace the current map context and refresh accordingly. More... | |
void | replace_map_context_with (context_ptr &&mc) |
void | create_default_context () |
Creates a default map context object, used to ensure there is always at least one. More... | |
void | refresh_on_context_change () |
Performs the necessary housekeeping necessary when switching contexts. More... | |
bool | save_map_as (const std::string &filename) |
Save the map under a given filename. More... | |
bool | save_scenario_as (const std::string &filename) |
bool | write_map (bool display_confirmation=false) |
Save the map under a given filename. More... | |
bool | write_scenario (bool display_confirmation=false) |
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_ |
const game_config_view & | game_config_ |
std::string | default_dir_ |
Default directory for map load/save as dialogs. More... | |
std::vector< std::unique_ptr< map_generator > > | map_generators_ |
Available random map generators. More... | |
map_generator * | last_map_generator_ |
int | current_context_index_ |
int | auto_update_transitions_ |
Flag to rebuild terrain on every terrain change. More... | |
std::vector< context_ptr > | map_contexts_ |
The currently opened map context object. More... | |
map_fragment | clipboard_ |
Clipboard map_fragment – used for copy-paste. More... | |
Definition at line 28 of file context_manager.hpp.
using editor::context_manager::context_ptr = std::unique_ptr<map_context> |
Definition at line 31 of file context_manager.hpp.
editor::context_manager::context_manager | ( | editor_display & | gui, |
const game_config_view & | game_config | ||
) |
Definition at line 67 of file context_manager.cpp.
References create_default_context(), default_dir_, resources::filter_con, filesystem::get_dir(), filesystem::get_user_data_dir(), and init_map_generators().
editor::context_manager::~context_manager | ( | ) |
Definition at line 89 of file context_manager.cpp.
References resources::filter_con, game_config::get_default_title_string(), CVideo::get_singleton(), and CVideo::set_window_title().
|
private |
Add a map context.
The controller assumes ownership.
Definition at line 988 of file context_manager.cpp.
References map_contexts_.
Referenced by create_default_context(), get_map_context(), new_map(), and new_scenario().
|
private |
Definition at line 994 of file context_manager.cpp.
References map_contexts_.
Referenced by get_map_context(), and load_map().
void editor::context_manager::apply_mask_dialog | ( | ) |
Display an apply mask dialog and process user input.
Definition at line 461 of file context_manager.cpp.
References _(), a, default_dir_, e, game_config_, editor::map_context::get_filename(), get_map_context(), 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(), gui2::show_transient_message(), and game::error::what().
Referenced by gui().
|
private |
Check if a map is already open.
Definition at line 863 of file context_manager.cpp.
References i, and map_contexts_.
Referenced by check_switch_open_map(), get_map_context(), save_map_as(), and save_scenario_as().
|
private |
Check if a map is already open.
If yes, switch to it and return true, return false otherwise.
Definition at line 873 of file context_manager.cpp.
References _(), check_open_map(), i, map_contexts_, gui2::show_transient_message(), and switch_context().
Referenced by get_map_context(), and load_map().
|
inline |
Definition at line 48 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 1030 of file context_manager.cpp.
References confirm_discard(), create_default_context(), current_context_index_, map_contexts_, and refresh_on_context_change().
Referenced by get_map_context().
|
private |
Shows an are-you-sure dialog if the map was modified.
Definition at line 731 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 |
Creates a default map context object, used to ensure there is always at least one.
Except when we saved windows, in which case reopen them
Definition at line 1013 of file context_manager.cpp.
References add_map_context(), game_config::default_terrain, game_config_view::find_child(), game_config_, and t_translation::read_terrain_code().
Referenced by close_current_context(), context_manager(), and get_map_context().
void editor::context_manager::create_mask_to_dialog | ( | ) |
Display an apply mask dialog and process user input.
Definition at line 504 of file context_manager.cpp.
References _(), a, default_dir_, e, game_config_, editor::map_context::get_filename(), get_map_context(), 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(), gui2::show_transient_message(), and game::error::what().
Referenced by gui().
|
inline |
Index into the map_contexts_ array.
Definition at line 62 of file context_manager.hpp.
References current_context_index_.
void editor::context_manager::edit_scenario_dialog | ( | ) |
Display a scenario edit dialog and process user input.
Definition at line 237 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(), preferences::turns(), and editor::map_context::victory_defeated().
Referenced by gui().
void editor::context_manager::edit_side_dialog | ( | int | side_index | ) |
Display a side edit dialog and process user input.
Definition at line 226 of file context_manager.cpp.
References get_map_context(), editor::map_context::set_side_setup(), t, and editor::map_context::teams().
Referenced by gui().
void editor::context_manager::expand_areas_menu | ( | std::vector< config > & | items, |
int | i | ||
) |
Menu expanding for the map's defined areas.
Definition at line 364 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::get_menu_marker(), editor::map_context::get_time_manager(), i, editor::map_context::map(), and editor::editor_map::selection().
Referenced by gui().
void editor::context_manager::expand_load_mru_menu | ( | std::vector< config > & | items, |
int | i | ||
) |
Menu expanding for most recent loaded list.
Definition at line 338 of file context_manager.cpp.
References _(), filesystem::base_name(), i, game_config::path, and preferences::editor::recent_files().
Referenced by gui().
void editor::context_manager::expand_local_time_menu | ( | std::vector< config > & | items, |
int | i | ||
) |
Menu expanding for the map's defined areas.
Definition at line 444 of file context_manager.cpp.
References get_map_context(), editor::map_context::get_time_manager(), i, and tod_manager::times().
Referenced by gui().
void editor::context_manager::expand_open_maps_menu | ( | std::vector< config > & | items, |
int | i | ||
) |
Menu expanding for open maps list.
Definition at line 295 of file context_manager.cpp.
References filesystem::base_name(), editor::map_context::get_default_context_name(), editor::map_context::get_filename(), editor::get_menu_marker(), editor::map_context::get_name(), i, editor::map_context::is_embedded(), editor::map_context::is_pure_map(), map_contexts_, and editor::map_context::modified().
Referenced by gui().
void editor::context_manager::expand_sides_menu | ( | std::vector< config > & | items, |
int | i | ||
) |
Menu expanding for the map's player sides.
Definition at line 401 of file context_manager.cpp.
References _(), get_map_context(), i, t, editor::map_context::teams(), and team::user_team_name().
Referenced by gui().
void editor::context_manager::expand_time_menu | ( | std::vector< config > & | items, |
int | i | ||
) |
Menu expanding for the map's defined areas.
Definition at line 425 of file context_manager.cpp.
References get_map_context(), editor::map_context::get_time_manager(), i, and tod_manager::times().
Referenced by gui().
void editor::context_manager::fill_selection | ( | ) |
Fill the selection with the foreground terrain.
Definition at line 742 of file context_manager.cpp.
References get_map_context(), editor::get_selected_bg_terrain(), and perform_refresh().
Referenced by get_clipboard().
void editor::context_manager::generate_map_dialog | ( | ) |
Display a generate random map dialog and process user input.
Definition at line 698 of file context_manager.cpp.
References _(), a, map_generator::create_map(), e, get_map_context(), gui2::dialogs::editor_generate_map::get_seed(), gui2::dialogs::editor_generate_map::get_selected_map_generator(), last_map_generator_, map_generators_, new_map(), perform_refresh(), gui2::dialogs::editor_generate_map::select_map_generator(), editor::map_context::set_needs_labels_reset(), gui2::dialogs::modal_dialog::show(), gui2::show_error_message(), gui2::show_transient_message(), and game::error::what().
Referenced by gui().
|
inline |
Definition at line 53 of file context_manager.hpp.
References clipboard_, and fill_selection().
Referenced by editor::editor_toolkit::init_mouse_actions().
|
inlineoverridevirtual |
Inherited from filter_context.
Implements filter_context.
Definition at line 172 of file context_manager.hpp.
References get_map_context().
|
inlineoverridevirtual |
Inherited from filter_context.
Implements filter_context.
Definition at line 184 of file context_manager.hpp.
|
inlineoverridevirtual |
Inherited from filter_context.
Implements filter_context.
Definition at line 190 of file context_manager.hpp.
|
inline |
Get the current map context object.
Definition at line 160 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(), 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_all_maps(), save_map(), save_map_as(), save_map_as_dialog(), save_scenario_as(), 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 208 of file context_manager.hpp.
References add_map_context(), add_map_context_of(), check_open_map(), check_switch_open_map(), close_current_context(), create_default_context(), current_context_index_, load_map(), map_contexts_, new_map(), new_scenario(), refresh_after_action(), refresh_on_context_change(), reload_map(), replace_map_context(), replace_map_context_with(), revert_map(), save_map_as(), save_scenario_as(), set_window_title(), switch_context(), write_map(), and write_scenario().
|
inlineoverridevirtual |
Inherited from filter_context.
Implements filter_context.
Definition at line 178 of file context_manager.hpp.
References get_map_context(), and editor::map_context::get_time_manager().
|
inline |
Definition at line 87 of file context_manager.hpp.
References apply_mask_dialog(), create_mask_to_dialog(), edit_scenario_dialog(), edit_side_dialog(), expand_areas_menu(), expand_load_mru_menu(), expand_local_time_menu(), expand_open_maps_menu(), expand_sides_menu(), expand_time_menu(), generate_map_dialog(), gui_, i, utf8::index(), mp_ui_alerts::items, load_map_dialog(), load_mru_item(), new_map_dialog(), new_scenario_dialog(), refresh_all(), rename_area_dialog(), resize_map_dialog(), save_map_as_dialog(), and save_scenario_as_dialog().
Referenced by new_scenario(), and refresh_on_context_change().
|
private |
init available random map generators
Definition at line 681 of file context_manager.cpp.
References game_config_view::child_range(), create_map_generator(), ERR_ED, i, and map_generators_.
Referenced by context_manager().
bool editor::context_manager::is_active_transitions_hotkey | ( | const std::string & | item | ) |
Definition at line 151 of file context_manager.cpp.
References auto_update_transitions_, preferences::editor::TRANSITION_UPDATE_OFF, preferences::editor::TRANSITION_UPDATE_ON, and preferences::editor::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 885 of file context_manager.cpp.
References _(), add_map_context_of(), check_switch_open_map(), e, ERR_ED, game_config_, get_filename(), editor::map_context::get_filename(), get_map_context(), editor::map_context::get_map_data_key(), LOG_ED, wfl::msg(), replace_map_context_with(), gui2::show_transient_message(), switch_context(), VGETTEXT, and game::error::what().
Referenced by get_map_context(), 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 199 of file context_manager.cpp.
References _(), default_dir_, filesystem::directory_name(), get_filename(), 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().
Referenced by gui().
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 216 of file context_manager.cpp.
References load_map(), and preferences::editor::recent_files().
Referenced by gui().
std::size_t editor::context_manager::modified_maps | ( | std::string & | modified | ) |
Definition at line 177 of file context_manager.cpp.
References map_contexts_, and font::unicode_bullet.
|
private |
Create a new map.
Definition at line 951 of file context_manager.cpp.
References add_map_context(), game_config_view::find_child(), game_config_, replace_map_context(), and switch_context().
Referenced by generate_map_dialog(), get_map_context(), and new_map_dialog().
void editor::context_manager::new_map_dialog | ( | ) |
Display a new map dialog and process user input.
Definition at line 269 of file context_manager.cpp.
References _(), get_map_context(), editor::get_selected_bg_terrain(), gamemap_base::h(), h, editor::map_context::map(), new_map(), gamemap_base::w(), and w.
Referenced by gui().
|
private |
Create a new scenario.
Definition at line 964 of file context_manager.cpp.
References add_map_context(), game_config_view::find_child(), game_config_, get_map_context(), gui(), gui_, display::init_flags(), editor::map_context::new_side(), replace_map_context(), display::set_playing_team(), display::set_team(), and switch_context().
Referenced by get_map_context(), and new_scenario_dialog().
void editor::context_manager::new_scenario_dialog | ( | ) |
Display a new map dialog and process user input.
Definition at line 282 of file context_manager.cpp.
References _(), get_map_context(), editor::get_selected_bg_terrain(), gamemap_base::h(), h, editor::map_context::map(), new_scenario(), gamemap_base::w(), and w.
Referenced by gui().
|
inline |
Definition at line 67 of file context_manager.hpp.
References map_contexts_, perform_refresh(), save_all_maps(), and save_map().
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 488 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(), open_maps(), 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 531 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(), 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(), preferences::editor::TRANSITION_UPDATE_ON, and preferences::editor::TRANSITION_UPDATE_PARTIAL.
Referenced by get_map_context(), and 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 120 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(), left, locs_, display::rebuild_all(), display::recalculate_minimap(), editor::map_context::set_needs_terrain_rebuild(), and editor::map_context::teams().
Referenced by gui(), and reload_map().
|
private |
Performs the necessary housekeeping necessary when switching contexts.
Definition at line 97 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(), display::set_team(), set_window_title(), size(), and resources::tod_manager.
Referenced by close_current_context(), get_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 143 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 get_map_context(), 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 494 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().
Referenced by gui().
|
private |
Replace the current map context and refresh accordingly.
Definition at line 1001 of file context_manager.cpp.
References replace_map_context_with().
Referenced by get_map_context(), new_map(), and new_scenario().
|
private |
Definition at line 1007 of file context_manager.cpp.
References current_context_index_, map_contexts_, and refresh_on_context_change().
Referenced by get_map_context(), load_map(), and replace_map_context().
void editor::context_manager::resize_map_dialog | ( | ) |
Display a load map dialog and process user input.
Definition at line 570 of file context_manager.cpp.
References a, 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, get_map_context(), editor::get_selected_bg_terrain(), gamemap_base::h(), h, editor::map_context::map(), t_translation::NONE_TERRAIN, perform_refresh(), gamemap_base::w(), w, and WRN_ED.
Referenced by gui().
void editor::context_manager::revert_map | ( | ) |
Revert the map by reloading it from disk.
Definition at line 936 of file context_manager.cpp.
References confirm_discard(), ERR_ED, editor::map_context::get_filename(), get_map_context(), and load_map().
Referenced by get_map_context().
void editor::context_manager::save_all_maps | ( | bool | auto_save_windows = false | ) |
Save all maps, open dialog if not named yet, except when using auto_save_windows which will name unnamed maps "windows_N".
Also record all filenames for future reopening.
Definition at line 747 of file context_manager.cpp.
References current_context_index_, default_dir_, editor::map_context::get_filename(), get_map_context(), i, filesystem::is_directory(), map_contexts_, s, save_map(), editor::map_context::set_filename(), and switch_context().
Referenced by open_maps().
void editor::context_manager::save_map | ( | ) |
Save the map, open dialog if not named yet.
Definition at line 769 of file context_manager.cpp.
References editor::map_context::get_filename(), get_map_context(), filesystem::is_directory(), editor::map_context::is_pure_map(), save_map_as_dialog(), save_scenario_as_dialog(), write_map(), and write_scenario().
Referenced by open_maps(), and save_all_maps().
|
private |
Save the map under a given filename.
Definition at line 810 of file context_manager.cpp.
References _(), check_open_map(), current_context_index_, editor::map_context::get_filename(), get_map_context(), editor::map_context::is_embedded(), map_contexts_, editor::map_context::set_embedded(), editor::map_context::set_filename(), gui2::show_transient_message(), and write_map().
Referenced by get_map_context(), and save_map_as_dialog().
void editor::context_manager::save_map_as_dialog | ( | ) |
Display a save map as dialog and process user input.
Definition at line 639 of file context_manager.cpp.
References _(), default_dir_, filesystem::get_dir(), editor::map_context::get_filename(), get_map_context(), gui2::dialogs::file_dialog::path(), save_map_as(), gui2::dialogs::file_dialog::set_extension(), gui2::dialogs::file_dialog::set_path(), gui2::dialogs::file_dialog::set_save_mode(), gui2::dialogs::file_dialog::set_title(), and gui2::dialogs::modal_dialog::show().
Referenced by gui(), and save_map().
|
private |
Definition at line 787 of file context_manager.cpp.
References _(), check_open_map(), current_context_index_, editor::map_context::get_filename(), get_map_context(), editor::map_context::is_embedded(), map_contexts_, editor::map_context::set_embedded(), editor::map_context::set_filename(), gui2::show_transient_message(), and write_scenario().
Referenced by get_map_context(), and save_scenario_as_dialog().
void editor::context_manager::save_scenario_as_dialog | ( | ) |
Display a save map as dialog and process user input.
Definition at line 660 of file context_manager.cpp.
References _(), default_dir_, filesystem::get_dir(), editor::map_context::get_filename(), get_map_context(), gui2::dialogs::file_dialog::path(), save_scenario_as(), gui2::dialogs::file_dialog::set_extension(), gui2::dialogs::file_dialog::set_path(), gui2::dialogs::file_dialog::set_save_mode(), gui2::dialogs::file_dialog::set_title(), and gui2::dialogs::modal_dialog::show().
Referenced by gui(), and save_map().
|
inline |
Set the default dir (where the filebrowser is pointing at when there is no map file opened)
Definition at line 166 of file context_manager.hpp.
References default_dir_.
|
inline |
Definition at line 40 of file context_manager.hpp.
References auto_update_transitions_, preferences::editor::set_auto_update_transitions(), and toggle_update_transitions().
|
private |
Displays the specified map name in the window titlebar.
Definition at line 1067 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(), CVideo::get_singleton(), and CVideo::set_window_title().
Referenced by edit_scenario_dialog(), get_map_context(), and refresh_on_context_change().
|
inline |
Definition at line 154 of file context_manager.hpp.
References map_contexts_.
Referenced by refresh_on_context_change().
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 1047 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(), get_map_context(), load_map(), new_map(), new_scenario(), and save_all_maps().
bool editor::context_manager::toggle_update_transitions | ( | ) |
Definition at line 165 of file context_manager.cpp.
References auto_update_transitions_, preferences::editor::set_auto_update_transitions(), preferences::editor::TRANSITION_UPDATE_COUNT, and preferences::editor::TRANSITION_UPDATE_ON.
Referenced by set_update_transitions_mode().
|
private |
Save the map under a given filename.
Displays an error message on failure.
Definition at line 848 of file context_manager.cpp.
References _(), e, get_map_context(), editor::map_context::save_map(), gui2::show_transient_message(), and game::error::what().
Referenced by get_map_context(), save_map(), and save_map_as().
|
private |
Definition at line 833 of file context_manager.cpp.
References _(), e, get_map_context(), editor::map_context::save_scenario(), gui2::show_transient_message(), and game::error::what().
Referenced by get_map_context(), save_map(), and save_scenario_as().
|
private |
Flag to rebuild terrain on every terrain change.
Definition at line 328 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 334 of file context_manager.hpp.
Referenced by clipboard_empty(), and get_clipboard().
|
private |
Definition at line 325 of file context_manager.hpp.
Referenced by close_current_context(), current_context_index(), get_map_context(), replace_map_context_with(), save_all_maps(), save_map_as(), save_scenario_as(), and switch_context().
|
private |
Default directory for map load/save as dialogs.
Definition at line 319 of file context_manager.hpp.
Referenced by apply_mask_dialog(), context_manager(), create_mask_to_dialog(), load_map_dialog(), save_all_maps(), save_map_as_dialog(), save_scenario_as_dialog(), and set_default_dir().
|
private |
Definition at line 316 of file context_manager.hpp.
Referenced by apply_mask_dialog(), create_default_context(), create_mask_to_dialog(), load_map(), new_map(), and new_scenario().
|
private |
Definition at line 314 of file context_manager.hpp.
Referenced by gui(), new_scenario(), refresh_after_action(), refresh_all(), and reload_map().
|
private |
Definition at line 323 of file context_manager.hpp.
Referenced by generate_map_dialog().
class location_palette* editor::context_manager::locs_ |
Definition at line 196 of file context_manager.hpp.
Referenced by refresh_all().
|
private |
The currently opened map context object.
Definition at line 331 of file context_manager.hpp.
Referenced by add_map_context(), add_map_context_of(), check_open_map(), check_switch_open_map(), close_current_context(), expand_open_maps_menu(), get_map_context(), modified_maps(), open_maps(), replace_map_context_with(), save_all_maps(), save_map_as(), save_scenario_as(), size(), and switch_context().
|
private |
Available random map generators.
Definition at line 322 of file context_manager.hpp.
Referenced by generate_map_dialog(), and init_map_generators().