1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 06:37:35 +00:00

PixelPaint: Make brush draw on mousedown

This makes the brush tool start drawing a point before the user moves
the mouse, like in Photoshop and Gimp. The number of iterations of
draw_point makes for roughly 4 clicks to full opacity.
This commit is contained in:
Marcus Nilsson 2021-07-05 23:22:57 +02:00 committed by Andreas Kling
parent 9be08e33ea
commit 618bb2d33e

View file

@ -25,11 +25,17 @@ BrushTool::~BrushTool()
{
}
void BrushTool::on_mousedown(Layer&, GUI::MouseEvent& event, GUI::MouseEvent&)
void BrushTool::on_mousedown(Layer& layer, GUI::MouseEvent& event, GUI::MouseEvent&)
{
if (event.button() != GUI::MouseButton::Left && event.button() != GUI::MouseButton::Right)
return;
const int first_draw_opacity = 10;
for (int i = 0; i < first_draw_opacity; ++i)
draw_point(layer.bitmap(), m_editor->color_for(event), event.position());
layer.did_modify_bitmap();
m_last_position = event.position();
}