1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 20:28:11 +00:00

LibGUI: Implement rubber band selection in table view

This patch implements rubber band selection in table view while clamping
the rubber band rect to the widget inner rect, matching the behavior of
IconView and ColumnsView.
This commit is contained in:
networkException 2022-09-10 20:36:50 +02:00 committed by Linus Groh
parent e0353c405d
commit 2612d23032
2 changed files with 90 additions and 0 deletions

View file

@ -41,12 +41,20 @@ protected:
TableView();
virtual void keydown_event(KeyEvent&) override;
virtual void mousedown_event(MouseEvent&) override;
virtual void mouseup_event(MouseEvent&) override;
virtual void mousemove_event(MouseEvent&) override;
virtual void paint_event(PaintEvent&) override;
virtual void second_paint_event(PaintEvent&) override;
private:
GridStyle m_grid_style { GridStyle::None };
bool m_highlight_key_column { true };
bool m_rubber_banding { false };
int m_rubber_band_origin { 0 };
int m_rubber_band_current { 0 };
};
}