mirror of
https://github.com/wesnoth/wesnoth
synced 2025-05-20 01:01:10 +00:00
implement allow_era_choice wml for sp settings
This commit is contained in:
parent
7ca092dc21
commit
049ae13a5a
@ -1,318 +1,337 @@
|
||||
#textdomain wesnoth-lib
|
||||
|
||||
[window]
|
||||
id = "campaign_settings"
|
||||
description = "Singleplayer advanced settings dialog."
|
||||
id = "campaign_settings"
|
||||
description = "Singleplayer advanced settings dialog."
|
||||
|
||||
[resolution]
|
||||
definition = "default"
|
||||
[resolution]
|
||||
definition = "default"
|
||||
|
||||
maximum_width = 800
|
||||
maximum_width = 800
|
||||
|
||||
automatic_placement = "true"
|
||||
vertical_placement = "center"
|
||||
horizontal_placement = "center"
|
||||
automatic_placement = "true"
|
||||
vertical_placement = "center"
|
||||
horizontal_placement = "center"
|
||||
|
||||
[linked_group]
|
||||
id = "era"
|
||||
fixed_width = "true"
|
||||
[/linked_group]
|
||||
[linked_group]
|
||||
id = "era"
|
||||
fixed_width = "true"
|
||||
[/linked_group]
|
||||
|
||||
[linked_group]
|
||||
id = "mod"
|
||||
fixed_width = "true"
|
||||
[/linked_group]
|
||||
[linked_group]
|
||||
id = "mod"
|
||||
fixed_width = "true"
|
||||
[/linked_group]
|
||||
|
||||
[tooltip]
|
||||
id = "tooltip_large"
|
||||
[/tooltip]
|
||||
[tooltip]
|
||||
id = "tooltip_large"
|
||||
[/tooltip]
|
||||
|
||||
[helptip]
|
||||
id = "tooltip_large"
|
||||
[/helptip]
|
||||
[helptip]
|
||||
id = "tooltip_large"
|
||||
[/helptip]
|
||||
|
||||
[grid]
|
||||
[grid]
|
||||
|
||||
[row]
|
||||
grow_factor = 0
|
||||
[row]
|
||||
grow_factor = 0
|
||||
|
||||
[column]
|
||||
grow_factor = 1
|
||||
[column]
|
||||
grow_factor = 1
|
||||
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_alignment = "left"
|
||||
[label]
|
||||
definition = "title"
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_alignment = "left"
|
||||
[label]
|
||||
definition = "title"
|
||||
|
||||
label = _ "Advanced Settings"
|
||||
[/label]
|
||||
label = _ "Advanced Settings"
|
||||
[/label]
|
||||
|
||||
[/column]
|
||||
[/column]
|
||||
|
||||
[column]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
[column]
|
||||
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
|
||||
[spacer]
|
||||
[/spacer]
|
||||
[/column]
|
||||
[spacer]
|
||||
[/spacer]
|
||||
|
||||
[/row]
|
||||
[/column]
|
||||
|
||||
[row]
|
||||
[/row]
|
||||
|
||||
[column]
|
||||
grow_factor = 1
|
||||
[row]
|
||||
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_alignment = "left"
|
||||
[column]
|
||||
grow_factor = 1
|
||||
|
||||
[label]
|
||||
definition = "default"
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_alignment = "left"
|
||||
|
||||
label = _ "Additional Dialogs:"
|
||||
[/label]
|
||||
[label]
|
||||
definition = "default"
|
||||
|
||||
[/column]
|
||||
|
||||
[column]
|
||||
|
||||
[spacer]
|
||||
[/spacer]
|
||||
label = _ "Additional Dialogs:"
|
||||
[/label]
|
||||
|
||||
[/column]
|
||||
[/column]
|
||||
|
||||
[/row]
|
||||
[column]
|
||||
|
||||
[row]
|
||||
[spacer]
|
||||
[/spacer]
|
||||
|
||||
[column]
|
||||
grow_factor = 1
|
||||
[/column]
|
||||
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_alignment = "left"
|
||||
[/row]
|
||||
|
||||
[toggle_button]
|
||||
definition = "default"
|
||||
id = "mp_configure"
|
||||
[row]
|
||||
|
||||
label = _ "Multiplayer Configure"
|
||||
[/toggle_button]
|
||||
[column]
|
||||
grow_factor = 1
|
||||
|
||||
[/column]
|
||||
|
||||
#[column]
|
||||
|
||||
#[spacer]
|
||||
#[/spacer]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_alignment = "left"
|
||||
|
||||
#[/column]
|
||||
[toggle_button]
|
||||
definition = "default"
|
||||
id = "mp_configure"
|
||||
|
||||
[column]
|
||||
grow_factor = 1
|
||||
label = _ "Multiplayer Configure"
|
||||
[/toggle_button]
|
||||
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_alignment = "left"
|
||||
[/column]
|
||||
|
||||
[toggle_button]
|
||||
definition = "default"
|
||||
id = "mp_connect"
|
||||
[column]
|
||||
grow_factor = 1
|
||||
|
||||
label = _ "Multiplayer Connect"
|
||||
[/toggle_button]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_alignment = "left"
|
||||
|
||||
[/column]
|
||||
|
||||
#[column]
|
||||
|
||||
# [spacer]
|
||||
# [/spacer]
|
||||
#[/column]
|
||||
[toggle_button]
|
||||
definition = "default"
|
||||
id = "mp_connect"
|
||||
|
||||
[/row]
|
||||
label = _ "Multiplayer Connect"
|
||||
[/toggle_button]
|
||||
|
||||
[row]
|
||||
[column]
|
||||
[spacer]
|
||||
height = 5
|
||||
[/spacer]
|
||||
[/column]
|
||||
[column]
|
||||
[spacer]
|
||||
height = 5
|
||||
[/spacer]
|
||||
[/column]
|
||||
[/row]
|
||||
[/column]
|
||||
|
||||
[row]
|
||||
grow_factor = 0
|
||||
[/row]
|
||||
|
||||
[column]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_grow = "true"
|
||||
[row]
|
||||
[column]
|
||||
[spacer]
|
||||
height = 5
|
||||
[/spacer]
|
||||
[/column]
|
||||
[column]
|
||||
[spacer]
|
||||
height = 5
|
||||
[/spacer]
|
||||
[/column]
|
||||
[/row]
|
||||
|
||||
[label]
|
||||
definition = "default"
|
||||
[row]
|
||||
|
||||
label = _ "Era:"
|
||||
[/label]
|
||||
[column]
|
||||
|
||||
[/column]
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
|
||||
[column]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_grow = "true"
|
||||
[grid]
|
||||
|
||||
[label]
|
||||
definition = "default"
|
||||
[row]
|
||||
grow_factor = 0
|
||||
|
||||
label = _ "Modifications:"
|
||||
[/label]
|
||||
[column]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_grow = "true"
|
||||
|
||||
[/column]
|
||||
[label]
|
||||
definition = "default"
|
||||
id = "era_label"
|
||||
|
||||
label = _ "Era:"
|
||||
[/label]
|
||||
|
||||
[/row]
|
||||
[/column]
|
||||
|
||||
[row]
|
||||
grow_factor = 1
|
||||
[/row]
|
||||
|
||||
[column]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
[row]
|
||||
grow_factor = 1
|
||||
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
[column]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
|
||||
[listbox]
|
||||
id = "era_list"
|
||||
definition = "default"
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
|
||||
[list_definition]
|
||||
[listbox]
|
||||
id = "era_list"
|
||||
definition = "default"
|
||||
|
||||
[row]
|
||||
[list_definition]
|
||||
|
||||
[column]
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
[row]
|
||||
|
||||
[toggle_panel]
|
||||
definition = "default"
|
||||
return_value_id = "ok"
|
||||
[column]
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
|
||||
[grid]
|
||||
[toggle_panel]
|
||||
definition = "default"
|
||||
|
||||
[row]
|
||||
[grid]
|
||||
|
||||
[column]
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
border = "all"
|
||||
border_size = 5
|
||||
[row]
|
||||
|
||||
[label]
|
||||
id = "era"
|
||||
linked_group = "era"
|
||||
definition = "default"
|
||||
[/label]
|
||||
[column]
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
border = "all"
|
||||
border_size = 5
|
||||
|
||||
[/column]
|
||||
[label]
|
||||
id = "era"
|
||||
linked_group = "era"
|
||||
definition = "default"
|
||||
[/label]
|
||||
|
||||
[/row]
|
||||
[/column]
|
||||
|
||||
[/grid]
|
||||
[/row]
|
||||
|
||||
[/toggle_panel]
|
||||
[/grid]
|
||||
|
||||
[/column]
|
||||
[/toggle_panel]
|
||||
|
||||
[/row]
|
||||
[/column]
|
||||
|
||||
[/list_definition]
|
||||
[/row]
|
||||
|
||||
[/listbox]
|
||||
[/list_definition]
|
||||
|
||||
[/column]
|
||||
[/listbox]
|
||||
|
||||
[column]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
[/column]
|
||||
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
[/row]
|
||||
|
||||
[listbox]
|
||||
id = "modification_list"
|
||||
definition = "default"
|
||||
has_minimum = false
|
||||
has_maximum = false
|
||||
[/grid]
|
||||
|
||||
[list_definition]
|
||||
[/column]
|
||||
|
||||
[row]
|
||||
[column]
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
|
||||
[column]
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
border = "all"
|
||||
border_size = 5
|
||||
[grid]
|
||||
|
||||
[toggle_button]
|
||||
id = "mod"
|
||||
linked_group = "mod"
|
||||
definition = "default"
|
||||
[/toggle_button]
|
||||
[row]
|
||||
|
||||
[/column]
|
||||
[column]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_grow = "true"
|
||||
|
||||
[/row]
|
||||
[label]
|
||||
definition = "default"
|
||||
id = "mod_label"
|
||||
|
||||
[/list_definition]
|
||||
label = _ "Modifications:"
|
||||
[/label]
|
||||
|
||||
[/listbox]
|
||||
[/column]
|
||||
|
||||
[/column]
|
||||
[/row]
|
||||
|
||||
[/row]
|
||||
[row]
|
||||
|
||||
[row]
|
||||
grow_factor = 0
|
||||
[column]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
|
||||
[column]
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
|
||||
[spacer]
|
||||
[/spacer]
|
||||
[listbox]
|
||||
id = "modification_list"
|
||||
definition = "default"
|
||||
has_minimum = false
|
||||
has_maximum = false
|
||||
|
||||
[/column]
|
||||
[list_definition]
|
||||
|
||||
[column]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
[row]
|
||||
|
||||
horizontal_alignment = "right"
|
||||
[column]
|
||||
horizontal_grow = "true"
|
||||
vertical_grow = "true"
|
||||
border = "all"
|
||||
border_size = 5
|
||||
|
||||
[button]
|
||||
id = "ok"
|
||||
definition = "default"
|
||||
[toggle_button]
|
||||
id = "mod"
|
||||
linked_group = "mod"
|
||||
definition = "default"
|
||||
[/toggle_button]
|
||||
|
||||
label = _ "OK"
|
||||
[/button]
|
||||
[/column]
|
||||
|
||||
[/column]
|
||||
[/row]
|
||||
|
||||
[/row]
|
||||
[/list_definition]
|
||||
|
||||
[/grid]
|
||||
[/listbox]
|
||||
|
||||
[/resolution]
|
||||
[/column]
|
||||
|
||||
[/row]
|
||||
|
||||
[/grid]
|
||||
|
||||
[/column]
|
||||
|
||||
[/row]
|
||||
|
||||
[row]
|
||||
grow_factor = 0
|
||||
|
||||
[column]
|
||||
|
||||
[spacer]
|
||||
[/spacer]
|
||||
|
||||
[/column]
|
||||
|
||||
[column]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
|
||||
horizontal_alignment = "right"
|
||||
|
||||
[button]
|
||||
id = "ok"
|
||||
definition = "default"
|
||||
|
||||
label = _ "OK"
|
||||
[/button]
|
||||
|
||||
[/column]
|
||||
|
||||
[/row]
|
||||
|
||||
[/grid]
|
||||
|
||||
[/resolution]
|
||||
|
||||
[/window]
|
||||
|
@ -107,6 +107,7 @@ void tcampaign_selection::campaign_selected(twindow& window)
|
||||
= find_widget<tmulti_page>(&window, "campaign_details", false);
|
||||
|
||||
multi_page.select_page(selected_row);
|
||||
engine_.set_current_level(selected_row);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -15,9 +15,11 @@
|
||||
#define GETTEXT_DOMAIN "wesnoth-lib"
|
||||
|
||||
#include "saved_game.hpp"
|
||||
#include "gettext.hpp"
|
||||
#include "gui/auxiliary/find_widget.tpp"
|
||||
#include "gui/dialogs/campaign_settings.hpp"
|
||||
#include "gui/widgets/button.hpp"
|
||||
#include "gui/widgets/label.hpp"
|
||||
#include "gui/widgets/listbox.hpp"
|
||||
#include "gui/widgets/settings.hpp"
|
||||
#include "gui/widgets/toggle_button.hpp"
|
||||
@ -41,9 +43,8 @@ void tcampaign_settings::change_era(twindow& window)
|
||||
engine_.set_current_era_index(list.get_selected_row());
|
||||
}
|
||||
|
||||
void tcampaign_settings::change_mod(size_t index, twindow& window)
|
||||
void tcampaign_settings::change_mod(size_t index, twindow&)
|
||||
{
|
||||
tlistbox& mod_list = find_widget<tlistbox>(&window, "modification_list", false);
|
||||
engine_.set_current_mod_index(index);
|
||||
// force toggle mod.
|
||||
engine_.toggle_current_mod(true);
|
||||
@ -53,19 +54,26 @@ void tcampaign_settings::update_lists(twindow& window)
|
||||
{
|
||||
tlistbox& era_list = find_widget<tlistbox>(&window, "era_list", false);
|
||||
tlistbox& mod_list = find_widget<tlistbox>(&window, "modification_list", false);
|
||||
tlabel& era_label = find_widget<tlabel>(&window, "era_label", false);
|
||||
|
||||
era_list.clear();
|
||||
|
||||
BOOST_FOREACH(std::string era, engine_.extras_menu_item_names(ng::create_engine::ERA)) {
|
||||
std::map<std::string, string_map> row;
|
||||
string_map column;
|
||||
if (engine_.current_level().allow_era_choice()) {
|
||||
BOOST_FOREACH(std::string era, engine_.extras_menu_item_names(ng::create_engine::ERA)) {
|
||||
std::map<std::string, string_map> row;
|
||||
string_map column;
|
||||
|
||||
column["label"] = era;
|
||||
row.insert(std::make_pair("era", column));
|
||||
column["label"] = era;
|
||||
row.insert(std::make_pair("era", column));
|
||||
|
||||
era_list.add_row(row);
|
||||
era_list.add_row(row);
|
||||
}
|
||||
era_list.select_row(engine_.current_era_index());
|
||||
}
|
||||
else {
|
||||
era_label.set_label(_("Era:\nNot allowed"));
|
||||
era_list.set_active(false);
|
||||
}
|
||||
era_list.select_row(engine_.current_era_index());
|
||||
|
||||
mod_list.clear();
|
||||
|
||||
|
@ -85,9 +85,6 @@ bool enter_create_mode(game_display& disp, const config& game_config,
|
||||
}
|
||||
}
|
||||
|
||||
create_eng.set_current_level(campaign_num);
|
||||
create_eng.set_current_era_index(0);
|
||||
|
||||
std::string random_mode = use_deterministic_mode ? "deterministic" : "";
|
||||
state.classification().random_mode = random_mode;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user