1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 23:27:43 +00:00

SharedGraphics: Make Painter clipping work with translated clip origin.

This commit is contained in:
Andreas Kling 2019-02-28 18:57:36 +01:00
parent 8eefdbdce8
commit fd428d6ed3
6 changed files with 20 additions and 9 deletions

View file

@ -181,9 +181,10 @@ Rect GScrollBar::scrubber_rect() const
return { (int)x_or_y, 0, button_size(), button_size() };
}
void GScrollBar::paint_event(GPaintEvent&)
void GScrollBar::paint_event(GPaintEvent& event)
{
Painter painter(*this);
painter.set_clip_rect(event.rect());
painter.fill_rect(rect(), Color(164, 164, 164));

View file

@ -28,9 +28,10 @@ String GStatusBar::text() const
return m_label->text();
}
void GStatusBar::paint_event(GPaintEvent&)
void GStatusBar::paint_event(GPaintEvent& event)
{
Painter painter(*this);
painter.set_clip_rect(event.rect());
painter.fill_rect({ 0, 1, width(), height() - 1 }, Color::LightGray);
painter.draw_line({ 0, 0 }, { width() - 1, 0 }, Color::DarkGray);
}

View file

@ -92,9 +92,10 @@ void GTableView::mousedown_event(GMouseEvent& event)
update();
}
void GTableView::paint_event(GPaintEvent&)
void GTableView::paint_event(GPaintEvent& event)
{
Painter painter(*this);
painter.set_clip_rect(event.rect());
painter.translate(-m_horizontal_scrollbar->value(), -m_vertical_scrollbar->value());
int exposed_width = max(content_width(), width());