mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 04:47:35 +00:00
GScrollableWidget: Add to_content_position(Point)
A handy helper function for converting a widget space coordinate into a content space coordinate.
This commit is contained in:
parent
f02c9aaac4
commit
a181cae3e0
2 changed files with 10 additions and 0 deletions
|
@ -180,3 +180,11 @@ Rect GScrollableWidget::widget_inner_rect() const
|
|||
rect.set_height(rect.height() - height_occupied_by_horizontal_scrollbar());
|
||||
return rect;
|
||||
}
|
||||
|
||||
Point GScrollableWidget::to_content_position(const Point& widget_position) const
|
||||
{
|
||||
auto content_position = widget_position;
|
||||
content_position.move_by(horizontal_scrollbar().value(), vertical_scrollbar().value());
|
||||
content_position.move_by(-frame_thickness(), -frame_thickness());
|
||||
return content_position;
|
||||
}
|
||||
|
|
|
@ -41,6 +41,8 @@ public:
|
|||
void set_should_hide_unnecessary_scrollbars(bool b) { m_should_hide_unnecessary_scrollbars = b; }
|
||||
bool should_hide_unnecessary_scrollbars() const { return m_should_hide_unnecessary_scrollbars; }
|
||||
|
||||
Point to_content_position(const Point& widget_position) const;
|
||||
|
||||
protected:
|
||||
explicit GScrollableWidget(GWidget* parent);
|
||||
virtual void custom_layout() override;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue