1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 09:08:12 +00:00

LibGUI: Add AbstractTableView::scroll_into_view(ModelIndex, bool, bool)

This API lets you specify whether to scroll horizontally, vertically,
or both.
This commit is contained in:
Andreas Kling 2020-08-24 21:01:50 +02:00
parent 4c65bd3731
commit e5a6e297bf
2 changed files with 7 additions and 0 deletions

View file

@ -460,6 +460,12 @@ void AbstractTableView::scroll_into_view(const ModelIndex& index, Orientation or
ScrollableWidget::scroll_into_view(rect, orientation); ScrollableWidget::scroll_into_view(rect, orientation);
} }
void AbstractTableView::scroll_into_view(const ModelIndex& index, bool scroll_horizontally, bool scroll_vertically)
{
auto rect = row_rect(index.row()).translated(0, -header_height());
ScrollableWidget::scroll_into_view(rect, scroll_horizontally, scroll_vertically);
}
void AbstractTableView::doubleclick_event(MouseEvent& event) void AbstractTableView::doubleclick_event(MouseEvent& event)
{ {
if (!model()) if (!model())

View file

@ -71,6 +71,7 @@ public:
Gfx::IntRect row_rect(int item_index) const; Gfx::IntRect row_rect(int item_index) const;
void scroll_into_view(const ModelIndex&, Orientation); void scroll_into_view(const ModelIndex&, Orientation);
void scroll_into_view(const ModelIndex&, bool scroll_horizontally, bool scroll_vertically);
virtual ModelIndex index_at_event_position(const Gfx::IntPoint&, bool& is_toggle) const; virtual ModelIndex index_at_event_position(const Gfx::IntPoint&, bool& is_toggle) const;
virtual ModelIndex index_at_event_position(const Gfx::IntPoint&) const override; virtual ModelIndex index_at_event_position(const Gfx::IntPoint&) const override;