MP/Lobby: some more player list-related cleanup

- Improved display
- Removed unused pointer member in helper
- Removed unnecessary extra tree clear step
This commit is contained in:
Charles Dang 2021-07-30 23:27:45 -04:00
parent d661187a8f
commit ceafd6faa3
3 changed files with 9 additions and 28 deletions

View file

@ -213,27 +213,27 @@
[/column]
[column]
grow_factor = 1
horizontal_grow = true
border = "top,bottom,right"
grow_factor = 0
border = "all"
border_size = 5
[label]
id = "tree_view_node_label"
definition = "default_small"
definition = "gold_small"
[/label]
[/column]
[column]
grow_factor = 0
grow_factor = 1
horizontal_grow = true
border = "top,bottom,right"
border = "all"
border_size = 5
[label]
id = "player_count"
definition = "default_small"
definition = "gold_small"
text_alignment = "right"
[/label]
[/column]

View file

@ -41,26 +41,13 @@ player_list_helper::sub_list::sub_list(tree_view* parent_tree, const std::string
root->unfold();
}
tree_label = find_widget<label>(root, "tree_view_node_label", false, true);
label_player_count = find_widget<label>(root, "player_count", false, true);
assert(tree_label);
assert(label_player_count);
}
void player_list_helper::sub_list::update_player_count_label()
{
assert(root);
assert(label_player_count);
/**
* @todo Make sure setting visible resizes the widget.
*
* It doesn't work here since invalidate_layout is blocked, but the
* widget should also be able to handle it itself. Once done the
* setting of the label text can also be removed.
*/
label_player_count->set_label((formatter() << "(" << root->count_children() << ")").str());
label_player_count->set_label(std::to_string(root->count_children()));
}
namespace
@ -77,12 +64,7 @@ struct update_pod
void player_list_helper::update(std::vector<mp::user_info>& user_info)
{
unsigned scrollbar_position = tree->get_vertical_scrollbar_item_position();
for(auto& list : player_lists) {
list.root->clear();
}
const unsigned scrollbar_position = tree->get_vertical_scrollbar_item_position();
std::array<update_pod, std::tuple_size<decltype(player_lists)>::value> inputs{};
for(auto& user : user_info) {

View file

@ -49,7 +49,6 @@ private:
tree_view_node* root;
label* tree_label;
label* label_player_count;
};