15 #define GETTEXT_DOMAIN "wesnoth-lib" 24 #define LOG_SCOPE_HEADER \ 25 "tcontainer(" + get_control_type() + ") [" + id() + "] " + __func__ 26 #define LOG_HEADER LOG_SCOPE_HEADER + ':' 36 connect_signal<event::REQUEST_PLACEMENT>(
60 if(static_cast<int>(maximum_width) -
border_space().x < grid_size.
x) {
66 size.
x = maximum_width;
76 if(static_cast<int>(maximum_width) -
border_space().x < grid_size.
x) {
82 size.
x = maximum_width;
97 if(static_cast<int>(maximum_height) -
border_space().y < grid_size.
y) {
102 size.
y = maximum_height;
112 if(static_cast<int>(maximum_height) -
border_space().y < grid_size.
y) {
117 size.
y = maximum_height;
138 const point client_size(rect.w, rect.h);
139 const point client_position(rect.x, rect.y);
159 result.x += border_size.x;
161 if(default_size.
x != 0 && result.x < default_size.
x) {
162 result.x = default_size.
x;
166 result.y += border_size.y;
168 if(default_size.
y != 0 && result.y < default_size.
y) {
169 result.y = default_size.
y;
185 const point client_position(rect.x, rect.y);
216 std::vector<widget*> child_call_stack =
call_stack;
221 const bool must_be_active)
227 const bool must_be_active)
const 235 return result ? result :
grid_.
find(
id, must_be_active);
239 const bool must_be_active)
const 242 return result ? result :
grid_.
find(
id, must_be_active);
281 for(
const auto&
lg :
config()->linked_groups) {
Define the common log macros for the gui toolkit.
virtual void set_visible_rectangle(const SDL_Rect &rectangle) override
See widget::set_visible_rectangle.
virtual grid * build() const override
void reduce_width(const unsigned maximum_width)
Tries to reduce the width of a container.
virtual void child_populate_dirty_list(window &caller, const std::vector< widget *> &call_stack) override
See widget::child_populate_dirty_list.
widget * find(const std::string &id, const bool must_be_active) override
See widget::find.
virtual void demand_reduce_width(const unsigned maximum_width) override
See widget::demand_reduce_width.
virtual void place(const point &origin, const point &size) override
See widget::place.
virtual bool can_wrap() const override
See widget::can_wrap.
bool disable_click_dismiss() const override
See widget::disable_click_dismiss.
unsigned int get_rows() const
virtual bool has_widget(const widget &widget) const override
See widget::has_widget.
lg::log_domain log_gui_layout("gui/layout")
virtual void impl_draw_children(surface &frame_buffer, int x_offset, int y_offset) override
See widget::impl_draw_children.
virtual void request_reduce_width(const unsigned maximum_width) override
See widget::request_reduce_width.
virtual point calculate_best_size() const override
See widget::calculate_best_size.
virtual void request_reduce_width(const unsigned maximum_width) override
See widget::request_reduce_width.
virtual void layout_initialize(const bool full_initialization) override
See widget::layout_initialize.
void reduce_height(const unsigned maximum_height)
Tries to reduce the height of a container.
std::size_t size(const std::string &str)
Length in characters of a UTF-8 string.
grid grid_
The grid which holds the child objects.
virtual bool has_widget(const widget &widget) const override
See widget::has_widget.
virtual void set_self_active(const bool active)=0
Helper for set_active.
void init_grid(const builder_grid &grid_builder)
Initializes and builds the grid.
virtual void set_visible_rectangle(const SDL_Rect &rectangle) override
See widget::set_visible_rectangle.
widget * find(const std::string &id, const bool must_be_active) override
See widget::find.
unsigned int get_cols() const
#define log_scope2(domain, description)
void init_linked_size_group(const std::string &id, const bool fixed_width, const bool fixed_height)
Initializes a linked size group.
virtual bool can_wrap() const override
See widget::can_wrap.
container_base(const implementation::builder_styled_widget &builder, const std::string &control_type)
virtual void place(const point &origin, const point &size) override
See widget::place.
void inject_linked_groups()
virtual void layout_initialize(const bool full_initialization) override
See widget::layout_initialize.
void reduce_width(const unsigned maximum_width)
Tries to reduce the width of a container.
virtual void demand_reduce_width(const unsigned maximum_width) override
See widget::demand_reduce_width.
void set_active(const bool active)
Activates all children.
virtual void set_origin(const point &origin) override
See widget::set_origin.
virtual void request_reduce_height(const unsigned maximum_height) override
See widget::request_reduce_height.
virtual void set_active(const bool active) override
See styled_widget::set_active.
lg::log_domain log_gui_general("gui/general")
virtual widget * find_at(const point &coordinate, const bool must_be_active) override
See widget::find_at.
virtual void set_origin(const point &origin) override
See widget::set_origin.
virtual void demand_reduce_height(const unsigned maximum_height) override
See widget::demand_reduce_height.
virtual void layout_children() override
See widget::layout_children.
bool disable_click_dismiss() const override
See widget::disable_click_dismiss.
virtual void request_reduce_height(const unsigned maximum_height) override
See widget::request_reduce_height.
virtual void layout_children() override
See widget::layout_children.
virtual void demand_reduce_height(const unsigned maximum_height) override
See widget::demand_reduce_height.
virtual widget * find_at(const point &coordinate, const bool must_be_active) override
See widget::find_at.
map_location coordinate
Contains an x and y coordinate used for starting positions in maps.
virtual SDL_Rect get_client_rect() const
Returns the client rect.
virtual point border_space() const
Returns the space used by the border.
base class of top level items, the only item which needs to store the final canvases to draw on...
void reduce_height(const unsigned maximum_height)
Tries to reduce the height of a container.
static std::deque< std::string > call_stack