diff options
Diffstat (limited to 'LibGUI/GScrollableWidget.h')
-rw-r--r-- | LibGUI/GScrollableWidget.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/LibGUI/GScrollableWidget.h b/LibGUI/GScrollableWidget.h index a95e5cb8af..d48bf5b793 100644 --- a/LibGUI/GScrollableWidget.h +++ b/LibGUI/GScrollableWidget.h @@ -11,21 +11,35 @@ public: virtual const char* class_name() const override { return "GScrollableWidget"; } Size content_size() const { return m_content_size; } + int content_width() const { return m_content_size.width(); } + int content_height() const { return m_content_size.height(); } + + Size padding() const { return m_padding; } Rect visible_content_rect() const; void scroll_into_view(const Rect&, Orientation); + void scroll_into_view(const Rect&, bool scroll_horizontally, bool scroll_vertically); GScrollBar& vertical_scrollbar() { return *m_vertical_scrollbar; } const GScrollBar& vertical_scrollbar() const { return *m_vertical_scrollbar; } GScrollBar& horizontal_scrollbar() { return *m_horizontal_scrollbar; } const GScrollBar& horizontal_scrollbar() const { return *m_horizontal_scrollbar; } + GWidget& corner_widget() { return *m_corner_widget; } + const GWidget& corner_widget() const { return *m_corner_widget; } + + void set_scrollbars_enabled(bool); + bool is_scrollbars_enabled() const { return m_scrollbars_enabled; } protected: explicit GScrollableWidget(GWidget* parent); virtual void resize_event(GResizeEvent&) override; void set_content_size(const Size&); void set_size_occupied_by_fixed_elements(const Size&); + void set_padding(const Size&); + + int width_occupied_by_vertical_scrollbar() const; + int height_occupied_by_horizontal_scrollbar() const; private: void update_scrollbar_ranges(); @@ -35,4 +49,6 @@ private: GWidget* m_corner_widget { nullptr }; Size m_content_size; Size m_size_occupied_by_fixed_elements; + Size m_padding; + bool m_scrollbars_enabled { true }; }; |