diff options
| author | jacob1 <jfu614@gmail.com> | 2012-10-04 14:42:09 (GMT) |
|---|---|---|
| committer | jacob1 <jfu614@gmail.com> | 2012-12-15 20:13:12 (GMT) |
| commit | a623959a314e544f092c85f037d8b564adc2af45 (patch) | |
| tree | b409fc023ed80900c0061314d12b05c8c43ecc17 /src/game/GameView.cpp | |
| parent | 0fd86e994afb7edb4fb923f7b46da77ad423acc2 (diff) | |
| download | powder-a623959a314e544f092c85f037d8b564adc2af45.zip powder-a623959a314e544f092c85f037d8b564adc2af45.tar.gz | |
save stamps on 1 pixel grid (works exactly like in tpt now), delete signs with Ctrl+X, also fixes stamps on very bottom/right edge and other edge cases
Diffstat (limited to 'src/game/GameView.cpp')
| -rw-r--r-- | src/game/GameView.cpp | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/src/game/GameView.cpp b/src/game/GameView.cpp index 9d900ba..a1c7f70 100644 --- a/src/game/GameView.cpp +++ b/src/game/GameView.cpp @@ -942,9 +942,9 @@ void GameView::OnMouseMove(int x, int y, int dx, int dy) if(selectMode!=SelectNone) { if(selectMode==PlaceSave) - selectPoint1 = c->NormaliseBlockCoord(c->PointTranslate(ui::Point(x, y))); + selectPoint1 = c->PointTranslate(ui::Point(x, y)); if(selectPoint1.X!=-1) - selectPoint2 = c->NormaliseBlockCoord(c->PointTranslate(ui::Point(x, y))); + selectPoint2 = c->PointTranslate(ui::Point(x, y)); return; } currentMouse = ui::Point(x, y); @@ -963,7 +963,7 @@ void GameView::OnMouseDown(int x, int y, unsigned button) { if(button==BUTTON_LEFT) { - selectPoint1 = c->NormaliseBlockCoord(c->PointTranslate(ui::Point(x, y))); + selectPoint1 = c->PointTranslate(ui::Point(x, y)); selectPoint2 = selectPoint1; } return; @@ -1023,15 +1023,12 @@ void GameView::OnMouseUp(int x, int y, unsigned button) int y2 = (selectPoint1.Y>selectPoint2.Y)?selectPoint1.Y:selectPoint2.Y; int x1 = (selectPoint2.X<selectPoint1.X)?selectPoint2.X:selectPoint1.X; int y1 = (selectPoint2.Y<selectPoint1.Y)?selectPoint2.Y:selectPoint1.Y; - if(x2-x1>0 && y2-y1>0) - { - if(selectMode==SelectCopy) - c->CopyRegion(ui::Point(x1, y1), ui::Point(x2, y2)); - else if(selectMode==SelectCut) - c->CutRegion(ui::Point(x1, y1), ui::Point(x2, y2)); - else if(selectMode==SelectStamp) - c->StampRegion(ui::Point(x1, y1), ui::Point(x2, y2)); - } + if(selectMode==SelectCopy) + c->CopyRegion(ui::Point(x1, y1), ui::Point(x2, y2)); + else if(selectMode==SelectCut) + c->CutRegion(ui::Point(x1, y1), ui::Point(x2, y2)); + else if(selectMode==SelectStamp) + c->StampRegion(ui::Point(x1, y1), ui::Point(x2, y2)); } } currentMouse = ui::Point(x, y); |
