diff --git a/data/gui/default/window/campaign_dialog.cfg b/data/gui/default/window/campaign_dialog.cfg index ed67e54e5e2..1c0ff12a009 100644 --- a/data/gui/default/window/campaign_dialog.cfg +++ b/data/gui/default/window/campaign_dialog.cfg @@ -73,15 +73,50 @@ grow_factor = 1 horizontal_grow = "true" - [toggle_button] - definition = "listbox_text_with_icon" + [toggle_panel] + definition = "default" return_value_id = "ok" - [/toggle_button] + [grid] + + [row] + + [column] + grow_factor = 1 + horizontal_grow = "true" + + border = "left" + border_size = 3 + + [image] + id = "icon" + definition = "default" + [/image] + + [/column] + + [column] + grow_factor = 1 + horizontal_grow = "true" + + border = "right" + border_size = 8 + + [label] + id = "name" + definition = "default" + [/label] + + [/column] + + [/row] + + [/grid] + + [/toggle_panel] [/column] - [/row] [/list_definition] diff --git a/src/gui/dialogs/campaign_selection.cpp b/src/gui/dialogs/campaign_selection.cpp index feb4b6b5284..ca8e89de1f2 100644 --- a/src/gui/dialogs/campaign_selection.cpp +++ b/src/gui/dialogs/campaign_selection.cpp @@ -77,11 +77,15 @@ void tcampaign_selection::pre_show(CVideo& /*video*/, twindow& window) /*** Add list item ***/ string_map list_item; + std::map list_item_item; - list_item.insert(std::make_pair("icon", c["icon"])); - list_item.insert(std::make_pair("label", c["name"])); + list_item["label"] = c["icon"]; + list_item_item.insert(std::make_pair("icon", list_item)); - list->add_row(list_item); + list_item["label"] = c["name"]; + list_item_item.insert(std::make_pair("name", list_item)); + + list->add_row(list_item_item); /*** Add detail item ***/ string_map detail_item;