diff --git a/src/gui/widgets/container_base.cpp b/src/gui/widgets/container_base.cpp index d14a2ee04676..d092f9c86a69 100644 --- a/src/gui/widgets/container_base.cpp +++ b/src/gui/widgets/container_base.cpp @@ -193,14 +193,12 @@ void container_base::set_visible_rectangle(const SDL_Rect& rectangle) grid_.set_visible_rectangle(rectangle); } -void container_base::impl_draw_children(surface& frame_buffer, - int x_offset, - int y_offset) +void container_base::impl_draw_children(int x_offset, int y_offset) { assert(get_visible() == widget::visibility::visible && grid_.get_visible() == widget::visibility::visible); - grid_.draw_children(frame_buffer, x_offset, y_offset); + grid_.draw_children(x_offset, y_offset); } void container_base::layout_children() diff --git a/src/gui/widgets/container_base.hpp b/src/gui/widgets/container_base.hpp index 67276dc72b1b..a890fb371525 100644 --- a/src/gui/widgets/container_base.hpp +++ b/src/gui/widgets/container_base.hpp @@ -103,9 +103,7 @@ class container_base : public styled_widget virtual void set_visible_rectangle(const SDL_Rect& rectangle) override; /** See @ref widget::impl_draw_children. */ - virtual void impl_draw_children(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_children(int x_offset, int y_offset) override; protected: /** See @ref widget::layout_children. */ diff --git a/src/gui/widgets/generator.hpp b/src/gui/widgets/generator.hpp index b02f8a522c6b..f5b3dc52eadd 100644 --- a/src/gui/widgets/generator.hpp +++ b/src/gui/widgets/generator.hpp @@ -282,9 +282,7 @@ class generator_base : public widget virtual void set_visible_rectangle(const SDL_Rect& rectangle) override = 0; /** See @ref widget::impl_draw_children. */ - virtual void impl_draw_children(surface& frame_buffer, - int x_offset, - int y_offset) override = 0; + virtual void impl_draw_children(int x_offset, int y_offset) override = 0; /** See @ref widget::find_at. */ virtual widget* find_at(const point& coordinate, diff --git a/src/gui/widgets/generator_private.hpp b/src/gui/widgets/generator_private.hpp index f02aef9f588c..82cdc1e13789 100644 --- a/src/gui/widgets/generator_private.hpp +++ b/src/gui/widgets/generator_private.hpp @@ -842,9 +842,7 @@ class generator : public minimum_selection, } /** See @ref widget::impl_draw_children. */ - virtual void impl_draw_children(surface& frame_buffer, - int x_offset, - int y_offset) override + virtual void impl_draw_children(int x_offset, int y_offset) override { assert(this->get_visible() == widget::visibility::visible); calculate_order(); @@ -854,7 +852,7 @@ class generator : public minimum_selection, if(item->child_grid.get_visible() == widget::visibility::visible && item->shown) { - item->child_grid.draw_children(frame_buffer, x_offset, y_offset); + item->child_grid.draw_children(x_offset, y_offset); } } } diff --git a/src/gui/widgets/grid.cpp b/src/gui/widgets/grid.cpp index 59b6fa8a016c..346b14bbc2c8 100644 --- a/src/gui/widgets/grid.cpp +++ b/src/gui/widgets/grid.cpp @@ -987,7 +987,7 @@ void grid::layout(const point& origin) } } -void grid::impl_draw_children(surface& frame_buffer, int x_offset, int y_offset) +void grid::impl_draw_children(int x_offset, int y_offset) { /* * The call to SDL_PumpEvents seems a bit like black magic. @@ -1015,9 +1015,9 @@ void grid::impl_draw_children(surface& frame_buffer, int x_offset, int y_offset) continue; } - widget->draw_background(frame_buffer, x_offset, y_offset); - widget->draw_children(frame_buffer, x_offset, y_offset); - widget->draw_foreground(frame_buffer, x_offset, y_offset); + widget->draw_background(x_offset, y_offset); + widget->draw_children(x_offset, y_offset); + widget->draw_foreground(x_offset, y_offset); } } diff --git a/src/gui/widgets/grid.hpp b/src/gui/widgets/grid.hpp index 93b90413e73e..8c8d18d56bac 100644 --- a/src/gui/widgets/grid.hpp +++ b/src/gui/widgets/grid.hpp @@ -519,9 +519,7 @@ class grid : public widget void layout(const point& origin); /** See @ref widget::impl_draw_children. */ - virtual void impl_draw_children(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_children(int x_offset, int y_offset) override; }; /** diff --git a/src/gui/widgets/matrix.cpp b/src/gui/widgets/matrix.cpp index 201aac56d8fb..ff688422c4ed 100644 --- a/src/gui/widgets/matrix.cpp +++ b/src/gui/widgets/matrix.cpp @@ -114,9 +114,9 @@ void matrix::layout_initialize(const bool full_initialization) } void -matrix::impl_draw_children(surface& frame_buffer, int x_offset, int y_offset) +matrix::impl_draw_children(int x_offset, int y_offset) { - content_.draw_children(frame_buffer, x_offset, y_offset); + content_.draw_children(x_offset, y_offset); } void matrix::layout_children() diff --git a/src/gui/widgets/matrix.hpp b/src/gui/widgets/matrix.hpp index d1e4680744d0..1e8e0bfc26d3 100644 --- a/src/gui/widgets/matrix.hpp +++ b/src/gui/widgets/matrix.hpp @@ -121,9 +121,7 @@ class matrix : public tbase virtual void layout_initialize(const bool full_initialization) override; /** See @ref widget::impl_draw_children. */ - virtual void impl_draw_children(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_children(int x_offset, int y_offset) override; /** See @ref widget::layout_children. */ virtual void layout_children() override; diff --git a/src/gui/widgets/minimap.cpp b/src/gui/widgets/minimap.cpp index f1b736bc51c8..a2e1e27553c8 100644 --- a/src/gui/widgets/minimap.cpp +++ b/src/gui/widgets/minimap.cpp @@ -26,6 +26,7 @@ #include "sdl/rect.hpp" #include "terrain/type_data.hpp" #include "../../minimap.hpp" // We want the file in src/ +#include "video.hpp" #include "utils/functional.hpp" @@ -224,9 +225,7 @@ const surface minimap::get_image(const int w, const int h) const return nullptr; } -void minimap::impl_draw_background(surface& frame_buffer, - int x_offset, - int y_offset) +void minimap::impl_draw_background(int x_offset, int y_offset) { if(!terrain_) return; @@ -244,7 +243,7 @@ void minimap::impl_draw_background(surface& frame_buffer, const ::surface surf = get_image(rect.w, rect.h); if(surf) { - sdl_blit(surf, nullptr, frame_buffer, &rect); + sdl_blit(surf, nullptr, CVideo::get_singleton().getSurface(), &rect); } } diff --git a/src/gui/widgets/minimap.hpp b/src/gui/widgets/minimap.hpp index 81c97b622b43..77d3fe194ae2 100644 --- a/src/gui/widgets/minimap.hpp +++ b/src/gui/widgets/minimap.hpp @@ -99,9 +99,7 @@ class minimap : public styled_widget const surface get_image(const int w, const int h) const; /** See @ref widget::impl_draw_background. */ - virtual void impl_draw_background(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_background(int x_offset, int y_offset) override; /** See @ref styled_widget::get_control_type. */ virtual const std::string& get_control_type() const override; diff --git a/src/gui/widgets/multi_page.cpp b/src/gui/widgets/multi_page.cpp index ad07e4f5084c..c360b2468041 100644 --- a/src/gui/widgets/multi_page.cpp +++ b/src/gui/widgets/multi_page.cpp @@ -144,11 +144,7 @@ void multi_page::finalize(const std::vector& page_data) swap_grid(nullptr, &get_grid(), generator_, "_content_grid"); } -void multi_page::impl_draw_background(surface& /*frame_buffer*/ - , - int /*x_offset*/ - , - int /*y_offset*/) +void multi_page::impl_draw_background(int /*x_offset*/, int /*y_offset*/) { /* DO NOTHING */ } diff --git a/src/gui/widgets/multi_page.hpp b/src/gui/widgets/multi_page.hpp index 2e39b11fd0c7..fd18c99d7b3d 100644 --- a/src/gui/widgets/multi_page.hpp +++ b/src/gui/widgets/multi_page.hpp @@ -201,9 +201,7 @@ class multi_page : public container_base std::map page_builders_; /** See @ref widget::impl_draw_background. */ - virtual void impl_draw_background(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_background(int x_offset, int y_offset) override; /** See @ref styled_widget::get_control_type. */ virtual const std::string& get_control_type() const override; diff --git a/src/gui/widgets/pane.cpp b/src/gui/widgets/pane.cpp index f9b03daa52b2..19e41190376c 100644 --- a/src/gui/widgets/pane.cpp +++ b/src/gui/widgets/pane.cpp @@ -189,14 +189,14 @@ void pane::layout_initialize(const bool full_initialization) } void -pane::impl_draw_children(surface& frame_buffer, int x_offset, int y_offset) +pane::impl_draw_children(int x_offset, int y_offset) { DBG_GUI_D << LOG_HEADER << '\n'; for(auto & item : items_) { if(item.item_grid->get_visible() != widget::visibility::invisible) { - item.item_grid->draw_children(frame_buffer, x_offset, y_offset); + item.item_grid->draw_children(x_offset, y_offset); } } } diff --git a/src/gui/widgets/pane.hpp b/src/gui/widgets/pane.hpp index 071d71a16693..070202361c83 100644 --- a/src/gui/widgets/pane.hpp +++ b/src/gui/widgets/pane.hpp @@ -76,9 +76,7 @@ class pane : public widget virtual void layout_initialize(const bool full_initialization) override; /** See @ref widget::impl_draw_children. */ - virtual void impl_draw_children(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_children(int x_offset, int y_offset) override; /** See @ref widget::request_reduce_width. */ virtual void request_reduce_width(const unsigned maximum_width) override; diff --git a/src/gui/widgets/panel.cpp b/src/gui/widgets/panel.cpp index 6e65989da5e0..5bb85b2a4b22 100644 --- a/src/gui/widgets/panel.cpp +++ b/src/gui/widgets/panel.cpp @@ -61,14 +61,14 @@ unsigned panel::get_state() const return 0; } -void panel::impl_draw_background(surface& /*frame_buffer*/, int x_offset, int y_offset) +void panel::impl_draw_background(int x_offset, int y_offset) { DBG_GUI_D << LOG_HEADER << " size " << get_rectangle() << ".\n"; get_canvas(0).render(calculate_blitting_rectangle(x_offset, y_offset)); } -void panel::impl_draw_foreground(surface& /*frame_buffer*/, int x_offset, int y_offset) +void panel::impl_draw_foreground(int x_offset, int y_offset) { DBG_GUI_D << LOG_HEADER << " size " << get_rectangle() << ".\n"; diff --git a/src/gui/widgets/panel.hpp b/src/gui/widgets/panel.hpp index bf94aed116b2..df10c2d56cc3 100644 --- a/src/gui/widgets/panel.hpp +++ b/src/gui/widgets/panel.hpp @@ -52,14 +52,10 @@ class panel : public container_base private: /** See @ref widget::impl_draw_background. */ - virtual void impl_draw_background(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_background(int x_offset, int y_offset) override; /** See @ref widget::impl_draw_foreground. */ - virtual void impl_draw_foreground(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_foreground(int x_offset, int y_offset) override; /** See @ref styled_widget::get_control_type. */ virtual const std::string& get_control_type() const override; diff --git a/src/gui/widgets/scrollbar_container.cpp b/src/gui/widgets/scrollbar_container.cpp index 87fba4e08077..0229e6d1c9d5 100644 --- a/src/gui/widgets/scrollbar_container.cpp +++ b/src/gui/widgets/scrollbar_container.cpp @@ -854,17 +854,15 @@ void scrollbar_container::set_horizontal_scrollbar_mode( } } -void scrollbar_container::impl_draw_children(surface& frame_buffer, - int x_offset, - int y_offset) +void scrollbar_container::impl_draw_children(int x_offset, int y_offset) { assert(get_visible() == widget::visibility::visible && content_grid_->get_visible() == widget::visibility::visible); // Inherited. - container_base::impl_draw_children(frame_buffer, x_offset, y_offset); + container_base::impl_draw_children(x_offset, y_offset); - content_grid_->draw_children(frame_buffer, x_offset, y_offset); + content_grid_->draw_children(x_offset, y_offset); } void scrollbar_container::layout_children() diff --git a/src/gui/widgets/scrollbar_container.hpp b/src/gui/widgets/scrollbar_container.hpp index 95cad5d67430..c9d1650b76d1 100644 --- a/src/gui/widgets/scrollbar_container.hpp +++ b/src/gui/widgets/scrollbar_container.hpp @@ -508,9 +508,7 @@ class scrollbar_container : public container_base virtual void layout_children() override; /** See @ref widget::impl_draw_children. */ - virtual void impl_draw_children(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_children(int x_offset, int y_offset) override; /** * Sets the size of the content grid. * diff --git a/src/gui/widgets/spacer.cpp b/src/gui/widgets/spacer.cpp index 788b9ba3abda..131b379bb109 100644 --- a/src/gui/widgets/spacer.cpp +++ b/src/gui/widgets/spacer.cpp @@ -89,11 +89,7 @@ bool spacer::disable_click_dismiss() const return false; } -void spacer::impl_draw_background(surface& /*frame_buffer*/ - , - int /*x_offset*/ - , - int /*y_offset*/) +void spacer::impl_draw_background(int /*x_offset*/, int /*y_offset*/) { /* DO NOTHING */ } diff --git a/src/gui/widgets/spacer.hpp b/src/gui/widgets/spacer.hpp index 4039a4de0659..5165b935888f 100644 --- a/src/gui/widgets/spacer.hpp +++ b/src/gui/widgets/spacer.hpp @@ -80,9 +80,7 @@ class spacer : public styled_widget bool fills_available_space(); /** See @ref widget::impl_draw_background. */ - virtual void impl_draw_background(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_background(int x_offset, int y_offset) override; /** See @ref styled_widget::get_control_type. */ virtual const std::string& get_control_type() const override; diff --git a/src/gui/widgets/styled_widget.cpp b/src/gui/widgets/styled_widget.cpp index 4aaff48dbcb9..79f1ae4c580b 100644 --- a/src/gui/widgets/styled_widget.cpp +++ b/src/gui/widgets/styled_widget.cpp @@ -431,9 +431,7 @@ int styled_widget::get_text_maximum_height() const return get_height() - config_->text_extra_height; } -void styled_widget::impl_draw_background(surface& /*frame_buffer*/, - int x_offset, - int y_offset) +void styled_widget::impl_draw_background(int x_offset, int y_offset) { DBG_GUI_D << LOG_HEADER << " label '" << debug_truncate(label_) << "' size " << get_rectangle() << ".\n"; @@ -441,11 +439,7 @@ void styled_widget::impl_draw_background(surface& /*frame_buffer*/, get_canvas(get_state()).render(calculate_blitting_rectangle(x_offset, y_offset)); } -void styled_widget::impl_draw_foreground(surface& /*frame_buffer*/ - , - int /*x_offset*/ - , - int /*y_offset*/) +void styled_widget::impl_draw_foreground(int /*x_offset*/, int /*y_offset*/) { /* DO NOTHING */ } diff --git a/src/gui/widgets/styled_widget.hpp b/src/gui/widgets/styled_widget.hpp index 6986c22326c1..e9bb5f2aab15 100644 --- a/src/gui/widgets/styled_widget.hpp +++ b/src/gui/widgets/styled_widget.hpp @@ -446,14 +446,10 @@ class styled_widget : public widget protected: /** See @ref widget::impl_draw_background. */ - virtual void impl_draw_background(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_background(int x_offset, int y_offset) override; /** See @ref widget::impl_draw_foreground. */ - virtual void impl_draw_foreground(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_foreground(int x_offset, int y_offset) override; /** Exposes font::pango_text::get_token, for the text label of this styled_widget */ std::string get_label_token(const gui2::point & position, const char * delimiters = " \n\r\t") const; diff --git a/src/gui/widgets/toggle_panel.cpp b/src/gui/widgets/toggle_panel.cpp index 59ee3eca56a8..f805911cb06e 100644 --- a/src/gui/widgets/toggle_panel.cpp +++ b/src/gui/widgets/toggle_panel.cpp @@ -192,22 +192,18 @@ void toggle_panel::set_state(const state_t state) assert(conf); } -void toggle_panel::impl_draw_background(surface& frame_buffer, - int x_offset, - int y_offset) +void toggle_panel::impl_draw_background(int x_offset, int y_offset) { // We don't have a fore and background and need to draw depending on // our state, like a styled_widget. So we use the styled_widget's drawing method. - styled_widget::impl_draw_background(frame_buffer, x_offset, y_offset); + styled_widget::impl_draw_background(x_offset, y_offset); } -void toggle_panel::impl_draw_foreground(surface& frame_buffer, - int x_offset, - int y_offset) +void toggle_panel::impl_draw_foreground(int x_offset, int y_offset) { // We don't have a fore and background and need to draw depending on // our state, like a styled_widget. So we use the styled_widget's drawing method. - styled_widget::impl_draw_foreground(frame_buffer, x_offset, y_offset); + styled_widget::impl_draw_foreground(x_offset, y_offset); } const std::string& toggle_panel::get_control_type() const diff --git a/src/gui/widgets/toggle_panel.hpp b/src/gui/widgets/toggle_panel.hpp index 6c1ea60078ba..5b21c32187ad 100644 --- a/src/gui/widgets/toggle_panel.hpp +++ b/src/gui/widgets/toggle_panel.hpp @@ -158,14 +158,10 @@ class toggle_panel : public panel, public selectable_item std::function callback_mouse_left_double_click_; /** See @ref widget::impl_draw_background. */ - virtual void impl_draw_background(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_background(int x_offset, int y_offset) override; /** See @ref widget::impl_draw_foreground. */ - virtual void impl_draw_foreground(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_foreground(int x_offset, int y_offset) override; /** See @ref styled_widget::get_control_type. */ virtual const std::string& get_control_type() const override; diff --git a/src/gui/widgets/tree_view_node.cpp b/src/gui/widgets/tree_view_node.cpp index c908f9312904..4ca55bb8555e 100644 --- a/src/gui/widgets/tree_view_node.cpp +++ b/src/gui/widgets/tree_view_node.cpp @@ -559,18 +559,16 @@ void tree_view_node::set_visible_rectangle(const SDL_Rect& rectangle) } } -void tree_view_node::impl_draw_children(surface& frame_buffer, - int x_offset, - int y_offset) +void tree_view_node::impl_draw_children(int x_offset, int y_offset) { - grid_.draw_children(frame_buffer, x_offset, y_offset); + grid_.draw_children(x_offset, y_offset); if(is_folded()) { return; } for(auto & node : children_) { - node.impl_draw_children(frame_buffer, x_offset, y_offset); + node.impl_draw_children(x_offset, y_offset); } } diff --git a/src/gui/widgets/tree_view_node.hpp b/src/gui/widgets/tree_view_node.hpp index d4b34d619c0d..ff8011c960e9 100644 --- a/src/gui/widgets/tree_view_node.hpp +++ b/src/gui/widgets/tree_view_node.hpp @@ -308,9 +308,7 @@ class tree_view_node : public widget virtual void set_visible_rectangle(const SDL_Rect& rectangle) override; /** See @ref widget::impl_draw_children. */ - virtual void impl_draw_children(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_children(int x_offset, int y_offset) override; /** See selectable_item::set_callback_state_change. */ std::function callback_state_change_; diff --git a/src/gui/widgets/viewport.cpp b/src/gui/widgets/viewport.cpp index 594a0ecc04d9..9cd138891622 100644 --- a/src/gui/widgets/viewport.cpp +++ b/src/gui/widgets/viewport.cpp @@ -121,15 +121,15 @@ void viewport::layout_initialize(const bool full_initialization) } void -viewport::impl_draw_children(surface& frame_buffer, int x_offset, int y_offset) +viewport::impl_draw_children(int x_offset, int y_offset) { x_offset += get_x(); y_offset += get_y(); if(widget_.get_visible() != widget::visibility::invisible) { - widget_.draw_background(frame_buffer, x_offset, y_offset); - widget_.draw_children(frame_buffer, x_offset, y_offset); - widget_.draw_foreground(frame_buffer, x_offset, y_offset); + widget_.draw_background(x_offset, y_offset); + widget_.draw_children(x_offset, y_offset); + widget_.draw_foreground(x_offset, y_offset); } } diff --git a/src/gui/widgets/viewport.hpp b/src/gui/widgets/viewport.hpp index f05e3e7f8876..6a9ab92e34ff 100644 --- a/src/gui/widgets/viewport.hpp +++ b/src/gui/widgets/viewport.hpp @@ -54,9 +54,7 @@ class viewport : public widget virtual void layout_initialize(const bool full_initialization) override; /** See @ref widget::impl_draw_children. */ - virtual void impl_draw_children(surface& frame_buffer, - int x_offset, - int y_offset) override; + virtual void impl_draw_children(int x_offset, int y_offset) override; /** See @ref widget::request_reduce_width. */ virtual void request_reduce_width(const unsigned maximum_width) override; diff --git a/src/gui/widgets/widget.cpp b/src/gui/widgets/widget.cpp index 9810446761b6..bb3b8481cf4f 100644 --- a/src/gui/widgets/widget.cpp +++ b/src/gui/widgets/widget.cpp @@ -364,51 +364,26 @@ SDL_Rect widget::calculate_clipping_rectangle(const int x_offset, return result; } -void widget::draw_background(surface& frame_buffer, int x_offset, int y_offset) +void widget::draw_background(int x_offset, int y_offset) { assert(visible_ == visibility::visible); - if(redraw_action_ == redraw_action::partly) { - const SDL_Rect clipping_rectangle - = calculate_clipping_rectangle(x_offset, y_offset); - - clip_rect_setter clip(frame_buffer, &clipping_rectangle); - draw_debug_border(x_offset, y_offset); - impl_draw_background(frame_buffer, x_offset, y_offset); - } else { - draw_debug_border(x_offset, y_offset); - impl_draw_background(frame_buffer, x_offset, y_offset); - } + draw_debug_border(x_offset, y_offset); + impl_draw_background(x_offset, y_offset); } -void widget::draw_children(surface& frame_buffer, int x_offset, int y_offset) +void widget::draw_children(int x_offset, int y_offset) { assert(visible_ == visibility::visible); - if(redraw_action_ == redraw_action::partly) { - const SDL_Rect clipping_rectangle - = calculate_clipping_rectangle(x_offset, y_offset); - - clip_rect_setter clip(frame_buffer, &clipping_rectangle); - impl_draw_children(frame_buffer, x_offset, y_offset); - } else { - impl_draw_children(frame_buffer, x_offset, y_offset); - } + impl_draw_children(x_offset, y_offset); } -void widget::draw_foreground(surface& frame_buffer, int x_offset, int y_offset) +void widget::draw_foreground(int x_offset, int y_offset) { assert(visible_ == visibility::visible); - if(redraw_action_ == redraw_action::partly) { - const SDL_Rect clipping_rectangle - = calculate_clipping_rectangle(x_offset, y_offset); - - clip_rect_setter clip(frame_buffer, &clipping_rectangle); - impl_draw_foreground(frame_buffer, x_offset, y_offset); - } else { - impl_draw_foreground(frame_buffer, x_offset, y_offset); - } + impl_draw_foreground(x_offset, y_offset); } SDL_Rect widget::get_dirty_rectangle() const diff --git a/src/gui/widgets/widget.hpp b/src/gui/widgets/widget.hpp index fbffc21d7266..37f2c56f2292 100644 --- a/src/gui/widgets/widget.hpp +++ b/src/gui/widgets/widget.hpp @@ -554,13 +554,12 @@ class widget : public event_executor, public event::dispatcher * Derived should override @ref impl_draw_background instead of changing * this function. * - * @param frame_buffer The surface to draw upon. * @param x_offset The offset in the x-direction in the * @p frame_buffer to draw. * @param y_offset The offset in the y-direction in the * @p frame_buffer to draw. */ - void draw_background(surface& frame_buffer, int x_offset, int y_offset); + void draw_background(int x_offset, int y_offset); /** * Draws the children of a widget. @@ -570,13 +569,12 @@ class widget : public event_executor, public event::dispatcher * Derived should override @ref impl_draw_children instead of changing * this function. * - * @param frame_buffer The surface to draw upon. * @param x_offset The offset in the x-direction in the * @p frame_buffer to draw. * @param y_offset The offset in the y-direction in the * @p frame_buffer to draw. */ - void draw_children(surface& frame_buffer, int x_offset, int y_offset); + void draw_children(int x_offset, int y_offset); /** * Draws the foreground of the widget. @@ -587,42 +585,30 @@ class widget : public event_executor, public event::dispatcher * Derived should override @ref impl_draw_foreground instead of changing * this function. * - * @param frame_buffer The surface to draw upon. * @param x_offset The offset in the x-direction in the * @p frame_buffer to draw. * @param y_offset The offset in the y-direction in the * @p frame_buffer to draw. */ - void draw_foreground(surface& frame_buffer, int x_offset, int y_offset); + void draw_foreground(int x_offset, int y_offset); private: /** See @ref draw_background. */ - virtual void impl_draw_background(surface& /*frame_buffer*/) + virtual void impl_draw_background() { } - virtual void impl_draw_background(surface& /*frame_buffer*/ - , - int /*x_offset*/ - , - int /*y_offset*/) + + virtual void impl_draw_background(int /*x_offset*/, int /*y_offset*/) { } /** See @ref draw_children. */ - virtual void impl_draw_children(surface& /*frame_buffer*/ - , - int /*x_offset*/ - , - int /*y_offset*/) + virtual void impl_draw_children(int /*x_offset*/, int /*y_offset*/) { } /** See @ref draw_foreground. */ - virtual void impl_draw_foreground(surface& /*frame_buffer*/ - , - int /*x_offset*/ - , - int /*y_offset*/) + virtual void impl_draw_foreground(int /*x_offset*/, int /*y_offset*/) { } diff --git a/src/gui/widgets/window.cpp b/src/gui/widgets/window.cpp index 6956181ccef4..ab09e5b8d532 100644 --- a/src/gui/widgets/window.cpp +++ b/src/gui/widgets/window.cpp @@ -687,9 +687,6 @@ void window::draw() return; } - // TODO: remove - surface& frame_buffer = video_.getSurface(); - /***** ***** Layout ***** *****/ if(need_layout_) { layout(); @@ -700,13 +697,13 @@ void window::draw() } // Draw background. - this->draw_background(frame_buffer, 0, 0); + this->draw_background(0, 0); // Draw children. - this->draw_children(frame_buffer, 0, 0); + this->draw_children(0, 0); // Draw foreground. - this->draw_foreground(frame_buffer, 0, 0); + this->draw_foreground(0, 0); if(callback_next_draw_ != nullptr) { callback_next_draw_();