GUI2: passed builder_grid reference directly to container_base::init_grid and window::finalize

This commit is contained in:
Charles Dang 2020-12-03 17:21:18 +11:00
parent e8b72f2d2d
commit cb4979ac0c
17 changed files with 23 additions and 24 deletions

View file

@ -69,10 +69,10 @@ window* build(const builder_window::window_resolution* definition)
assert(conf);
if(conf->grid) {
win->init_grid(conf->grid);
win->finalize(definition->grid);
win->init_grid(*conf->grid);
win->finalize(*definition->grid);
} else {
win->init_grid(definition->grid);
win->init_grid(*definition->grid);
}
win->add_to_keyboard_chain(win);

View file

@ -472,7 +472,7 @@ widget* builder_addon_list::build() const
const auto conf = widget->cast_config_to<addon_list_definition>();
assert(conf != nullptr);
widget->init_grid(conf->grid);
widget->init_grid(*conf->grid);
widget->set_install_status_visibility(install_status_visibility_);
widget->set_install_buttons_visibility(install_buttons_visibility_);

View file

@ -836,7 +836,7 @@ widget* builder_chatbox::build() const
const auto conf = widget->cast_config_to<chatbox_definition>();
assert(conf);
widget->init_grid(conf->grid);
widget->init_grid(*conf->grid);
widget->finalize_setup();
return widget;

View file

@ -262,14 +262,13 @@ bool container_base::disable_click_dismiss() const
return styled_widget::disable_click_dismiss() && grid_.disable_click_dismiss();
}
void
container_base::init_grid(const std::shared_ptr<builder_grid>& grid_builder)
void container_base::init_grid(const builder_grid& grid_builder)
{
log_scope2(log_gui_general, LOG_SCOPE_HEADER);
assert(grid_.get_rows() == 0 && grid_.get_cols() == 0);
grid_builder->build(&grid_);
grid_builder.build(&grid_);
}
point container_base::border_space() const

View file

@ -159,7 +159,7 @@ public:
*
* @param grid_builder The builder for the grid.
*/
void init_grid(const std::shared_ptr<builder_grid>& grid_builder);
void init_grid(const builder_grid& grid_builder);
/***** **** ***** ***** wrappers to the grid **** ********* *****/

View file

@ -985,7 +985,7 @@ widget* builder_listbox::build() const
const auto conf = widget->cast_config_to<listbox_definition>();
assert(conf);
widget->init_grid(conf->grid);
widget->init_grid(*conf->grid);
widget->finalize(header, footer, list_data);
@ -1090,7 +1090,7 @@ widget* builder_horizontal_listbox::build() const
const auto conf = widget->cast_config_to<listbox_definition>();
assert(conf);
widget->init_grid(conf->grid);
widget->init_grid(*conf->grid);
widget->finalize(nullptr, nullptr, list_data);
@ -1195,7 +1195,7 @@ widget* builder_grid_listbox::build() const
const auto conf = widget->cast_config_to<listbox_definition>();
assert(conf);
widget->init_grid(conf->grid);
widget->init_grid(*conf->grid);
widget->finalize(nullptr, nullptr, list_data);

View file

@ -299,7 +299,7 @@ widget* builder_multi_page::build() const
const auto conf = widget->cast_config_to<multi_page_definition>();
assert(conf);
widget->init_grid(conf->grid);
widget->init_grid(*conf->grid);
widget->finalize(data);

View file

@ -203,7 +203,7 @@ widget* builder_panel::build() const
DBG_GUI_G << "Window builder: placed panel '" << id << "' with definition '"
<< definition << "'.\n";
widget->init_grid(grid);
widget->init_grid(*grid);
return widget;
}

View file

@ -279,7 +279,7 @@ widget* builder_scroll_label::build() const
const auto conf = widget->cast_config_to<scroll_label_definition>();
assert(conf);
widget->init_grid(conf->grid);
widget->init_grid(*conf->grid);
widget->finalize_setup();
DBG_GUI_G << "Window builder: placed scroll label '" << id

View file

@ -162,7 +162,7 @@ widget* builder_scrollbar_panel::build() const
const auto conf = panel->cast_config_to<scrollbar_panel_definition>();
assert(conf);
panel->init_grid(conf->grid);
panel->init_grid(*conf->grid);
panel->finalize_setup();
/*** Fill the content grid. ***/

View file

@ -172,7 +172,7 @@ widget* builder_size_lock::build() const
const auto conf = widget->cast_config_to<size_lock_definition>();
assert(conf != nullptr);
widget->init_grid(conf->grid);
widget->init_grid(*conf->grid);
widget->finalize(content_);
return widget;

View file

@ -292,7 +292,7 @@ widget* builder_stacked_widget::build() const
const auto conf = widget->cast_config_to<stacked_widget_definition>();
assert(conf);
widget->init_grid(conf->grid);
widget->init_grid(*conf->grid);
widget->finalize(stack);

View file

@ -413,7 +413,7 @@ widget* builder_toggle_panel::build() const
DBG_GUI_G << "Window builder: placed toggle panel '" << id
<< "' with definition '" << definition << "'.\n";
widget->init_grid(grid);
widget->init_grid(*grid);
return widget;
}

View file

@ -395,7 +395,7 @@ widget* builder_tree_view::build() const
const auto conf = widget->cast_config_to<tree_view_definition>();
assert(conf);
widget->init_grid(conf->grid);
widget->init_grid(*conf->grid);
widget->finalize_setup();
return widget;

View file

@ -630,7 +630,7 @@ widget* builder_unit_preview_pane::build() const
const auto conf = widget->cast_config_to<unit_preview_pane_definition>();
assert(conf);
widget->init_grid(conf->grid);
widget->init_grid(*conf->grid);
widget->finalize_setup();
widget->set_image_mods(image_mods_);

View file

@ -1186,9 +1186,9 @@ void window::redraw_windows_on_top() const
}
}
void window::finalize(const std::shared_ptr<builder_grid>& content_grid)
void window::finalize(const builder_grid& content_grid)
{
window_swap_grid(nullptr, &get_grid(), content_grid->build(), "_window_content_grid");
window_swap_grid(nullptr, &get_grid(), content_grid.build(), "_window_content_grid");
}
#ifdef DEBUG_WINDOW_LAYOUT_GRAPHS

View file

@ -665,7 +665,7 @@ private:
*
* @param content_grid The new contents for the content grid.
*/
void finalize(const std::shared_ptr<builder_grid>& content_grid);
void finalize(const builder_grid& content_grid);
#ifdef DEBUG_WINDOW_LAYOUT_GRAPHS
debug_layout_graph* debug_layout_;