1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 13:57:35 +00:00

PaintBrush: Add a "Move" tool for moving layers around :^)

Tool mouse event handlers now receive both a layer-relative mouse event
and the original event. This is needed for the move tool since it moves
the layer and thereby changes the origin of future events every time it
moves.
This commit is contained in:
Andreas Kling 2020-05-13 00:08:47 +02:00
parent 58ee75c87a
commit 3d50f40396
22 changed files with 167 additions and 44 deletions

View file

@ -62,7 +62,7 @@ void RectangleTool::draw_using(GUI::Painter& painter)
}
}
void RectangleTool::on_mousedown(Layer&, GUI::MouseEvent& event)
void RectangleTool::on_mousedown(Layer&, GUI::MouseEvent& event, GUI::MouseEvent&)
{
if (event.button() != GUI::MouseButton::Left && event.button() != GUI::MouseButton::Right)
return;
@ -76,7 +76,7 @@ void RectangleTool::on_mousedown(Layer&, GUI::MouseEvent& event)
m_editor->update();
}
void RectangleTool::on_mouseup(Layer& layer, GUI::MouseEvent& event)
void RectangleTool::on_mouseup(Layer& layer, GUI::MouseEvent& event, GUI::MouseEvent&)
{
if (event.button() == m_drawing_button) {
GUI::Painter painter(layer.bitmap());
@ -86,7 +86,7 @@ void RectangleTool::on_mouseup(Layer& layer, GUI::MouseEvent& event)
}
}
void RectangleTool::on_mousemove(Layer&, GUI::MouseEvent& event)
void RectangleTool::on_mousemove(Layer&, GUI::MouseEvent& event, GUI::MouseEvent&)
{
if (m_drawing_button == GUI::MouseButton::None)
return;