Game Load: revamped design

This commit is contained in:
Charles Dang 2022-04-08 03:02:21 -04:00
parent 6b329a020a
commit a3b6f57e4d
4 changed files with 272 additions and 246 deletions

View file

@ -272,6 +272,14 @@
[/button_definition]
[button_definition]
id = "action_browse_experimental"
description = "Button for go/browse actions."
{_GUI_RESOLUTION_ICON_ONLY () 30 30 30 13 4 ({_GUI_BUTTON_FONT_SIZE}) () 255 ("icons/action/browse_25")}
[/button_definition]
#undef _GUI_BUTTON_FONT_SIZE
#undef _GUI_BUTTON_TEXT
#undef _GUI_STATE

View file

@ -115,6 +115,7 @@
{_GUI_DEFINITION "default_tiny" "default, small font size" () TINY () DEFAULT }
{_GUI_DEFINITION "gold" "regular gold label" () DEFAULT () TITLE }
{_GUI_DEFINITION "gold_small" "small gold label" () SMALL () TITLE }
{_GUI_DEFINITION "gold_large" "small gold label" () LARGE () TITLE }
{_GUI_DEFINITION "bad" "regular red label" () DEFAULT () BAD }
{_GUI_DEFINITION "bad_small" "small red label" () SMALL () BAD }

View file

@ -3,7 +3,7 @@
### Definition of the window to ask for the savegame filename
###
#define _GUI_LEADER_STAT_ROW _ID _TEXT
#define _GUI_LEADER_STAT_ROW _ID _TEXT _BORDERS
[row]
[column]
@ -15,25 +15,25 @@
[column]
grow_factor = 0
border = "bottom,left,right"
border = {_BORDERS}
border_size = 5
horizontal_grow = true
[label]
definition = "gold_small"
label = "• " + {_TEXT}
[/label]
[image]
definition = "default"
label = {_TEXT}
[/image]
[/column]
[column]
grow_factor = 1
border = "bottom,right"
border = {_BORDERS}
border_size = 5
horizontal_grow = true
[label]
id = {_ID}
definition = "default_small"
definition = "gold_small"
[/label]
[/column]
@ -51,13 +51,13 @@
id = "leader_list"
has_minimum = false
horizontal_scrollbar_mode = "never"
vertical_scrollbar_mode = "auto"
#vertical_scrollbar_mode = "auto"
[list_definition]
[row]
[column]
[column]
grow_factor = 1
horizontal_grow = true
@ -67,10 +67,31 @@
[grid]
[row]
[column]
grow_factor = 0
border = "all"
border_size = 5
horizontal_grow = true
vertical_grow = true
[image]
id = "imgLeader"
definition = "centered"
linked_group = "leader_image"
[/image]
[/column]
[column]
grow_factor = 1
horizontal_grow = true
# Deliberate border for extra padding
border = "all"
border_size = 5
[grid]
[row]
@ -89,36 +110,14 @@
[/row]
{_GUI_LEADER_STAT_ROW "leader_gold" ( _ "Gold Left:")}
{_GUI_LEADER_STAT_ROW "leader_gold" "themes/gold.png" "all"}
# po: Refers to units on the map
{_GUI_LEADER_STAT_ROW "leader_troops" ( _ "Active Troops:")}
#po: Refers to units on the recall list
{_GUI_LEADER_STAT_ROW "leader_reserves" ( _ "Reserve Troops:")}
{_GUI_LEADER_STAT_ROW "leader_troops" "themes/units.png" "bottom,left,right"}
[/grid]
[/column]
[column]
grow_factor = 0
border = "all"
border_size = 5
horizontal_grow = true
vertical_grow = true
[image]
id = "imgLeader"
definition = "centered"
linked_group = "leader_image"
[/image]
[/column]
[/row]
[/grid]
@ -147,8 +146,9 @@
[column]
grow_factor = 1
horizontal_grow = true
border = "left,right"
border_size = 5
# No border by design
[toggle_button]
id = "sort_0"
definition = "listbox_header"
@ -161,8 +161,9 @@
[column]
grow_factor = 1
horizontal_grow = true
border = "left,right"
border_size = 5
# No border by design
[toggle_button]
id = "sort_1"
definition = "listbox_header"
@ -185,8 +186,8 @@
[toggle_panel]
definition = "default"
return_value_id = "ok"
[grid]
[row]
@ -196,7 +197,7 @@
horizontal_grow = true
border = "all"
border_size = 5
border_size = 10
[label]
id = "filename"
@ -211,7 +212,7 @@
horizontal_grow = true
border = "all"
border_size = 5
border_size = 10
[label]
id = "date"
@ -270,75 +271,6 @@
[grid]
[row]
grow_factor = 0
[column]
horizontal_grow = true
[grid]
[row]
[column]
border = "all"
border_size = 5
horizontal_alignment = "left"
vertical_alignment = "top"
[label]
id = "lblTitle"
definition = "title"
label = _ "Load Game"
[/label]
[/column]
[column]
horizontal_alignment = "right"
[grid]
[row]
[column]
border = "all"
border_size = 5
[menu_button]
id = "dirList"
definition = "default"
tooltip = _ "Show saves from a different version of Wesnoth"
[/menu_button]
[/column]
[column]
border = "all"
border_size = 5
[text_box]
id = "txtFilter"
definition = "default"
{FILTER_TEXT_BOX_HINT}
[/text_box]
[/column]
[/row]
[/grid]
[/column]
[/row]
[/grid]
[/column]
[/row]
[row]
grow_factor = 1
@ -353,6 +285,196 @@
[row]
grow_factor = 1
[column]
grow_factor = 1
#border = "all"
#border_size = 5
horizontal_grow = true
vertical_grow = true
[grid]
[row]
[column]
horizontal_grow = true
[grid]
[row]
[column]
grow_factor = 1
border = "all"
border_size = 5
horizontal_alignment = "left"
#vertical_alignment = "top"
[label]
id = "lblTitle"
definition = "title"
label = _ "Load Game"
[/label]
[/column]
[column]
#grow_factor = 0
border = "all"
border_size = 5
#horizontal_alignment = "right"
[button]
id = "browse_saves_folder"
definition = "action_browse_experimental"
tooltip = _ "Open saves folder"
[/button]
[/column]
[column]
#grow_factor = 1
border = "all"
border_size = 5
#horizontal_alignment = "right"
[menu_button]
id = "dirList"
definition = "default"
tooltip = _ "Show saves from a different version of Wesnoth"
[/menu_button]
[/column]
[/row]
[/grid]
[/column]
[/row]
[row]
grow_factor = 1
[column]
grow_factor = 1
horizontal_grow = true
vertical_grow = true
#border = "bottom"
#border_size = 10
border = "all"
border_size = 5
{_GUI_GAME_LIST}
[/column]
[/row]
[row]
grow_factor = 0
[column]
horizontal_grow = true
[grid]
[row]
[column]
horizontal_grow = true
[grid]
[row]
[column]
#grow_factor = 1
horizontal_alignment = "left"
#border = "bottom"
#border_size = 10
border = "all"
border_size = 5
[toggle_button]
id = "change_difficulty"
definition = "default"
label = _ "Change difficulty"
tooltip = _ "Change campaign difficulty before loading"
[/toggle_button]
[/column]
#[/row]
#[row]
# grow_factor = 0
[column]
horizontal_alignment = "left"
#border = "bottom"
#border_size = 10
border = "all"
border_size = 5
[toggle_button]
id = "show_replay"
definition = "default"
label = _ "Show replay"
tooltip = _ "Play the embedded replay from the saved game if applicable"
[/toggle_button]
[/column]
#[/row]
#[row]
# grow_factor = 0
[column]
horizontal_alignment = "left"
#border = "bottom"
#border_size = 10
border = "all"
border_size = 5
[toggle_button]
id = "cancel_orders"
definition = "default"
label = _ "Cancel orders"
tooltip = _ "Cancel any pending unit movements in the saved game"
[/toggle_button]
[/column]
[/row]
[/grid]
[/column]
[/row]
[/grid]
[/column]
[/row]
[/grid]
[/column]
[column]
grow_factor = 0
vertical_grow = true
@ -360,6 +482,24 @@
[grid]
[row]
[column]
border = "all"
border_size = 5
#horizontal_alignment = "left"
horizontal_grow = true
[text_box]
id = "txtFilter"
definition = "default"
{FILTER_TEXT_BOX_HINT}
[/text_box]
[/column]
[/row]
[row]
grow_factor = 0
@ -371,7 +511,7 @@
vertical_grow = true
horizontal_grow = true
{GUI_FORCE_WIDGET_MINIMUM_SIZE 260 200 (
{GUI_FORCE_WIDGET_MINIMUM_SIZE 260 260 (
[minimap]
id = "minimap"
definition = "no_size"
@ -395,7 +535,7 @@
[label]
id = "lblScenario"
definition = "default"
definition = "gold_large"
can_shrink = true
[/label]
@ -447,126 +587,6 @@
[/column]
[column]
grow_factor = 1
border = "all"
border_size = 5
horizontal_grow = true
vertical_grow = true
[grid]
[row]
grow_factor = 1
[column]
grow_factor = 1
horizontal_grow = true
vertical_grow = true
border = "bottom"
border_size = 10
{_GUI_GAME_LIST}
[/column]
[/row]
[row]
grow_factor = 0
[column]
horizontal_grow = true
[grid]
[row]
[column]
grow_factor = 1
horizontal_alignment = "left"
border = "bottom"
border_size = 10
[toggle_button]
id = "change_difficulty"
definition = "default"
label = _ "Change difficulty"
tooltip = _ "Change campaign difficulty before loading"
[/toggle_button]
[/column]
[column]
grow_factor = 0
horizontal_alignment = "right"
border = "bottom"
border_size = 10
[button]
id = "delete"
definition = "default"
label = _ "Delete"
[/button]
[/column]
[/row]
[/grid]
[/column]
[/row]
[row]
grow_factor = 0
[column]
horizontal_alignment = "left"
border = "bottom"
border_size = 10
[toggle_button]
id = "show_replay"
definition = "default"
label = _ "Show replay"
tooltip = _ "Play the embedded replay from the saved game if applicable"
[/toggle_button]
[/column]
[/row]
[row]
grow_factor = 0
[column]
horizontal_alignment = "left"
border = "bottom"
border_size = 10
[toggle_button]
id = "cancel_orders"
definition = "default"
label = _ "Cancel orders"
tooltip = _ "Cancel any pending unit movements in the saved game"
[/toggle_button]
[/column]
[/row]
[/grid]
[/column]
[/row]
[/grid]
@ -588,15 +608,19 @@
[column]
grow_factor = 1
border = "all"
border_size = 5
horizontal_alignment = "left"
[button]
id = "browse_saves_folder"
definition = "action_browse"
#border = "bottom"
#border_size = 10
tooltip = _ "Open saves folder"
border = "all"
border_size = 5
[button]
id = "delete"
definition = "default"
label = _ "Delete"
[/button]
[/column]

View file

@ -230,12 +230,10 @@ void game_load::display_savegame_internal(const savegame::save_info& game)
item["label"] = leader["gold"];
data.emplace("leader_gold", item);
item["label"] = leader["units"];
// TRANSLATORS: "reserve" refers to units on the recall list
item["label"] = VGETTEXT("$active active, $reserve reserve", {{"active", leader["units"]}, {"reserve", leader["recall_units"]}});
data.emplace("leader_troops", item);
item["label"] = leader["recall_units"];
data.emplace("leader_reserves", item);
leader_list.add_row(data);
}
@ -416,7 +414,6 @@ void game_load::evaluate_summary_string(std::stringstream& str, const config& cf
str << _("Scenario start");
}
str << "\n" << _("Difficulty: ");
if(campaign_type_enum) {
switch (*campaign_type_enum) {
case campaign_type::type::scenario:
@ -433,6 +430,7 @@ void game_load::evaluate_summary_string(std::stringstream& str, const config& cf
// For the latter do not show the difficulty - even though it will be listed as
// NORMAL -> Medium in the save file it should not be considered valid (GitHub Issue #5321)
if (campaign != nullptr) {
str << "\n" << _("Difficulty: ");
try {
const config& difficulty = campaign->find_child("difficulty", "define", cfg_summary["difficulty"]);
std::ostringstream ss;
@ -444,19 +442,14 @@ void game_load::evaluate_summary_string(std::stringstream& str, const config& cf
str << string_table[cfg_summary["difficulty"]];
}
}
else {
str << "";
}
break;
}
case campaign_type::type::tutorial:
case campaign_type::type::test:
str << "";
break;
}
} else {
str << "";
}
if(!cfg_summary["version"].empty()) {