tcore_selection: cleaned up cruft left over from the campaign dialog
This commit is contained in:
parent
7fe17353f1
commit
bce7c9c329
2 changed files with 51 additions and 262 deletions
|
@ -15,21 +15,11 @@
|
|||
horizontal_placement = "center"
|
||||
maximum_height = 600
|
||||
|
||||
[linked_group]
|
||||
id = "icon_area"
|
||||
fixed_width = "true"
|
||||
[/linked_group]
|
||||
|
||||
[linked_group]
|
||||
id = "name"
|
||||
fixed_width = "true"
|
||||
[/linked_group]
|
||||
|
||||
[linked_group]
|
||||
id = "tree_name"
|
||||
fixed_width = "true"
|
||||
[/linked_group]
|
||||
|
||||
[tooltip]
|
||||
id = "tooltip_large"
|
||||
[/tooltip]
|
||||
|
@ -45,13 +35,12 @@
|
|||
|
||||
[column]
|
||||
grow_factor = 1
|
||||
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_alignment = "left"
|
||||
|
||||
[label]
|
||||
definition = "title"
|
||||
|
||||
label = _ "Load Core"
|
||||
[/label]
|
||||
|
||||
|
@ -64,7 +53,6 @@
|
|||
|
||||
[column]
|
||||
grow_factor = 1
|
||||
|
||||
horizontal_grow = "true"
|
||||
|
||||
[grid]
|
||||
|
@ -83,8 +71,8 @@
|
|||
[listbox]
|
||||
id = "core_list"
|
||||
definition = "default"
|
||||
|
||||
horizontal_scrollbar_mode = "never"
|
||||
|
||||
[list_definition]
|
||||
|
||||
[row]
|
||||
|
@ -96,8 +84,8 @@
|
|||
[toggle_panel]
|
||||
id = "_toggle"
|
||||
definition = "default"
|
||||
|
||||
return_value_id = "ok"
|
||||
|
||||
[grid]
|
||||
|
||||
[row]
|
||||
|
@ -111,9 +99,9 @@
|
|||
vertical_alignment = "top"
|
||||
|
||||
[image]
|
||||
id = "icon"
|
||||
definition = "default"
|
||||
label = "misc/laurel.png"
|
||||
id = "icon"
|
||||
definition = "default"
|
||||
label = "wesnoth-icon.png"
|
||||
[/image]
|
||||
[/column]
|
||||
|
||||
|
@ -148,119 +136,6 @@
|
|||
|
||||
[/column]
|
||||
|
||||
[column]
|
||||
grow_factor = 0
|
||||
|
||||
border = "all"
|
||||
border_size = 5
|
||||
horizontal_alignment = "left"
|
||||
|
||||
[tree_view]
|
||||
id = "core_tree"
|
||||
definition = "default"
|
||||
|
||||
horizontal_scrollbar_mode = "never"
|
||||
vertical_scrollbar_mode = "always"
|
||||
|
||||
indention_step_size = "40"
|
||||
|
||||
[node]
|
||||
id = "core_group"
|
||||
[node_definition]
|
||||
|
||||
[row]
|
||||
|
||||
[column]
|
||||
|
||||
[toggle_button]
|
||||
id = "tree_view_node_icon"
|
||||
definition = "tree_view_node"
|
||||
[/toggle_button]
|
||||
|
||||
[/column]
|
||||
|
||||
[column]
|
||||
grow_factor = 1
|
||||
horizontal_grow = "true"
|
||||
|
||||
[label]
|
||||
id = "tree_view_node_label"
|
||||
label = "group"
|
||||
[/label]
|
||||
|
||||
[/column]
|
||||
|
||||
[/row]
|
||||
|
||||
[/node_definition]
|
||||
|
||||
[/node]
|
||||
|
||||
[node]
|
||||
id = "core"
|
||||
|
||||
[node_definition]
|
||||
|
||||
[row]
|
||||
|
||||
[column]
|
||||
horizontal_grow = "true"
|
||||
|
||||
[toggle_panel]
|
||||
id = "tree_view_node_label"
|
||||
definition = "default"
|
||||
|
||||
# horizontal_grow = "true"
|
||||
return_value_id = "ok"
|
||||
[grid]
|
||||
|
||||
[row]
|
||||
|
||||
[column]
|
||||
border = "all"
|
||||
border_size = 5
|
||||
vertical_alignment = "top"
|
||||
|
||||
[image]
|
||||
id = "icon"
|
||||
definition = "default"
|
||||
[/image]
|
||||
|
||||
[/column]
|
||||
|
||||
[column]
|
||||
grow_factor = 1
|
||||
horizontal_grow = "true"
|
||||
|
||||
border = "right"
|
||||
border_size = 8
|
||||
|
||||
[label]
|
||||
id = "name"
|
||||
definition = "default"
|
||||
linked_group = "tree_name"
|
||||
[/label]
|
||||
|
||||
[/column]
|
||||
|
||||
[/row]
|
||||
|
||||
[/grid]
|
||||
|
||||
[/toggle_panel]
|
||||
|
||||
[/column]
|
||||
|
||||
[/row]
|
||||
|
||||
[/node_definition]
|
||||
|
||||
[/node]
|
||||
|
||||
[/tree_view]
|
||||
|
||||
[/column]
|
||||
|
||||
[column]
|
||||
grow_factor = 1
|
||||
horizontal_grow = "true"
|
||||
|
@ -272,7 +147,6 @@
|
|||
[multi_page]
|
||||
id = "core_details"
|
||||
definition = "default"
|
||||
|
||||
horizontal_scrollbar_mode = "never"
|
||||
|
||||
[page_definition]
|
||||
|
@ -299,7 +173,6 @@
|
|||
[label]
|
||||
id = "description"
|
||||
definition = "default"
|
||||
|
||||
characters_per_line = 66
|
||||
[/label]
|
||||
|
||||
|
@ -369,7 +242,6 @@
|
|||
[button]
|
||||
id = "ok"
|
||||
definition = "default"
|
||||
|
||||
label = _ "OK"
|
||||
[/button]
|
||||
|
||||
|
@ -383,7 +255,6 @@
|
|||
[button]
|
||||
id = "cancel"
|
||||
definition = "default"
|
||||
|
||||
label = _ "Cancel"
|
||||
[/button]
|
||||
|
||||
|
|
|
@ -27,8 +27,6 @@
|
|||
#include "gui/widgets/multi_page.hpp"
|
||||
#include "gui/widgets/scroll_label.hpp"
|
||||
#include "gui/widgets/settings.hpp"
|
||||
#include "gui/widgets/tree_view.hpp"
|
||||
#include "gui/widgets/tree_view_node.hpp"
|
||||
#include "gui/widgets/window.hpp"
|
||||
#include "utils/foreach.tpp"
|
||||
#include "serialization/string_utils.hpp"
|
||||
|
@ -75,156 +73,76 @@ REGISTER_DIALOG(core_selection)
|
|||
|
||||
void tcore_selection::core_selected(twindow& window)
|
||||
{
|
||||
if(new_widgets && false) {
|
||||
ttree_view& tree = find_widget<ttree_view>(&window, "core_tree", false);
|
||||
const int selected_row
|
||||
= find_widget<tlistbox>(&window, "core_list", false)
|
||||
.get_selected_row();
|
||||
|
||||
if(tree.empty()) {
|
||||
return;
|
||||
}
|
||||
tmulti_page& multi_page
|
||||
= find_widget<tmulti_page>(&window, "core_details", false);
|
||||
|
||||
assert(tree.selected_item());
|
||||
const unsigned choice
|
||||
= lexical_cast<unsigned>(tree.selected_item()->id());
|
||||
|
||||
tmulti_page& multi_page
|
||||
= find_widget<tmulti_page>(&window, "core_details", false);
|
||||
multi_page.select_page(choice);
|
||||
} else {
|
||||
const int selected_row
|
||||
= find_widget<tlistbox>(&window, "core_list", false)
|
||||
.get_selected_row();
|
||||
|
||||
tmulti_page& multi_page
|
||||
= find_widget<tmulti_page>(&window, "core_details", false);
|
||||
|
||||
multi_page.select_page(selected_row);
|
||||
}
|
||||
multi_page.select_page(selected_row);
|
||||
}
|
||||
|
||||
void tcore_selection::pre_show(CVideo& /*video*/, twindow& window)
|
||||
{
|
||||
if(new_widgets && false) {
|
||||
/***** Setup core tree. *****/
|
||||
ttree_view& tree = find_widget<ttree_view>(&window, "core_tree", false);
|
||||
|
||||
tree.set_selection_change_callback(boost::bind(
|
||||
&tcore_selection::core_selected, this, boost::ref(window)));
|
||||
|
||||
window.keyboard_capture(&tree);
|
||||
|
||||
string_map tree_group_field;
|
||||
std::map<std::string, string_map> tree_group_item;
|
||||
|
||||
tree_group_item["tree_view_node_label"] = tree_group_field;
|
||||
|
||||
/***** Setup core details. *****/
|
||||
tmulti_page& multi_page
|
||||
= find_widget<tmulti_page>(&window, "core_details", false);
|
||||
|
||||
// unsigned id = 0;
|
||||
FOREACH(const AUTO & core, cores_)
|
||||
{
|
||||
|
||||
/*** Add tree item ***/
|
||||
tree_group_field["label"] = core["icon"];
|
||||
tree_group_item["icon"] = tree_group_field;
|
||||
|
||||
tree_group_field["label"] = core["name"];
|
||||
tree_group_item["name"] = tree_group_field;
|
||||
|
||||
/*** Add detail item ***/
|
||||
string_map detail_item;
|
||||
std::map<std::string, string_map> detail_page;
|
||||
|
||||
detail_item["label"] = core["description"];
|
||||
detail_item["use_markup"] = "true";
|
||||
detail_page.insert(std::make_pair("description", detail_item));
|
||||
|
||||
detail_item["label"] = core["image"];
|
||||
detail_page.insert(std::make_pair("image", detail_item));
|
||||
|
||||
multi_page.add_page(detail_page);
|
||||
}
|
||||
|
||||
} else {
|
||||
/***** Hide the tree view. *****/
|
||||
if(ttree_view* tree
|
||||
= find_widget<ttree_view>(&window, "core_tree", false, false)) {
|
||||
|
||||
tree->set_visible(twidget::tvisible::invisible);
|
||||
}
|
||||
|
||||
/***** Setup core list. *****/
|
||||
tlistbox& list = find_widget<tlistbox>(&window, "core_list", false);
|
||||
/***** Setup core list. *****/
|
||||
tlistbox& list = find_widget<tlistbox>(&window, "core_list", false);
|
||||
#ifdef GUI2_EXPERIMENTAL_LISTBOX
|
||||
connect_signal_notify_modified(
|
||||
list,
|
||||
boost::bind(&tcore_selection::core_selected,
|
||||
this,
|
||||
boost::ref(window)));
|
||||
connect_signal_notify_modified(
|
||||
list,
|
||||
boost::bind(&tcore_selection::core_selected,
|
||||
this,
|
||||
boost::ref(window)));
|
||||
#else
|
||||
list.set_callback_value_change(
|
||||
dialog_callback<tcore_selection,
|
||||
&tcore_selection::core_selected>);
|
||||
list.set_callback_value_change(
|
||||
dialog_callback<tcore_selection,
|
||||
&tcore_selection::core_selected>);
|
||||
#endif
|
||||
window.keyboard_capture(&list);
|
||||
window.keyboard_capture(&list);
|
||||
|
||||
/***** Setup core details. *****/
|
||||
tmulti_page& multi_page
|
||||
= find_widget<tmulti_page>(&window, "core_details", false);
|
||||
/***** Setup core details. *****/
|
||||
tmulti_page& multi_page
|
||||
= find_widget<tmulti_page>(&window, "core_details", false);
|
||||
|
||||
FOREACH(const AUTO & core, cores_)
|
||||
{
|
||||
FOREACH(const AUTO & core, cores_)
|
||||
{
|
||||
/*** Add list item ***/
|
||||
string_map list_item;
|
||||
std::map<std::string, string_map> list_item_item;
|
||||
|
||||
/*** Add list item ***/
|
||||
string_map list_item;
|
||||
std::map<std::string, string_map> list_item_item;
|
||||
list_item["label"] = core["icon"];
|
||||
list_item_item.insert(std::make_pair("icon", list_item));
|
||||
|
||||
list_item["label"] = core["icon"];
|
||||
list_item_item.insert(std::make_pair("icon", list_item));
|
||||
list_item["label"] = core["name"];
|
||||
list_item_item.insert(std::make_pair("name", list_item));
|
||||
|
||||
list_item["label"] = core["name"];
|
||||
list_item_item.insert(std::make_pair("name", list_item));
|
||||
list.add_row(list_item_item);
|
||||
|
||||
list.add_row(list_item_item);
|
||||
tgrid* grid = list.get_row_grid(list.get_item_count() - 1);
|
||||
assert(grid);
|
||||
|
||||
tgrid* grid = list.get_row_grid(list.get_item_count() - 1);
|
||||
assert(grid);
|
||||
/*** Add detail item ***/
|
||||
string_map detail_item;
|
||||
std::map<std::string, string_map> detail_page;
|
||||
|
||||
/*** Add detail item ***/
|
||||
string_map detail_item;
|
||||
std::map<std::string, string_map> detail_page;
|
||||
detail_item["label"] = core["description"];
|
||||
detail_item["use_markup"] = "true";
|
||||
detail_page.insert(std::make_pair("description", detail_item));
|
||||
|
||||
detail_item["label"] = core["description"];
|
||||
detail_item["use_markup"] = "true";
|
||||
detail_page.insert(std::make_pair("description", detail_item));
|
||||
detail_item["label"] = core["image"];
|
||||
detail_page.insert(std::make_pair("image", detail_item));
|
||||
|
||||
detail_item["label"] = core["image"];
|
||||
detail_page.insert(std::make_pair("image", detail_item));
|
||||
|
||||
multi_page.add_page(detail_page);
|
||||
}
|
||||
list.select_row(choice_, true);
|
||||
multi_page.add_page(detail_page);
|
||||
}
|
||||
list.select_row(choice_, true);
|
||||
|
||||
core_selected(window);
|
||||
}
|
||||
|
||||
void tcore_selection::post_show(twindow& window)
|
||||
{
|
||||
if(new_widgets && false) {
|
||||
ttree_view& tree = find_widget<ttree_view>(&window, "core_tree", false);
|
||||
|
||||
if(tree.empty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
assert(tree.selected_item());
|
||||
choice_ = lexical_cast<unsigned>(tree.selected_item()->id());
|
||||
|
||||
} else {
|
||||
choice_ = find_widget<tlistbox>(&window, "core_list", false)
|
||||
.get_selected_row();
|
||||
}
|
||||
choice_ = find_widget<tlistbox>(&window, "core_list", false)
|
||||
.get_selected_row();
|
||||
}
|
||||
|
||||
} // namespace gui2
|
||||
|
|
Loading…
Add table
Reference in a new issue