Fixed bugs related to rectangular selection and rectangle drawing

This commit is contained in:
Brendan Robert 2016-04-23 10:33:41 -05:00
parent 294fe817e9
commit 11a9640e26

View File

@ -292,14 +292,17 @@ public class AppleImageEditor extends ImageEditor implements EventHandler<MouseE
drawBrush(x, y, 5, currentFillPattern, hiBitMatters); drawBrush(x, y, 5, currentFillPattern, hiBitMatters);
break; break;
case Rectangle: case Rectangle:
debounce = System.currentTimeMillis()-10;
if (released) { if (released) {
trackState();
fillSelection(x, y); fillSelection(x, y);
redraw(); redraw();
debounce = System.currentTimeMillis(); debounce = System.currentTimeMillis();
return true;
} else { } else {
updateSelection(x, y); updateSelection(x, y);
return false;
} }
break;
case Select: case Select:
debounce = System.currentTimeMillis(); debounce = System.currentTimeMillis();
if (selectionFinished && !released) { if (selectionFinished && !released) {
@ -341,17 +344,12 @@ public class AppleImageEditor extends ImageEditor implements EventHandler<MouseE
int startY = Math.min(selectStartY, y); int startY = Math.min(selectStartY, y);
int endY = Math.max(selectStartY, y); int endY = Math.max(selectStartY, y);
selectStartX = startX;
selectStartY = startY;
selectEndX = endX;
selectEndY = endY;
selectRect.setTranslateX(startX * xScale); selectRect.setTranslateX(startX * xScale);
selectRect.setTranslateY(startY * yScale); selectRect.setTranslateY(startY * yScale);
selectRect.setWidth((endX - startX) * xScale); selectRect.setWidth((endX - startX) * xScale);
selectRect.setHeight((endY - startY) * yScale); selectRect.setHeight((endY - startY) * yScale);
setSelectionArea(selectStartX, selectStartY, selectEndX, selectEndY); setSelectionArea(startX, startY, endX, endY);
} }
private void fillSelection(int x, int y) { private void fillSelection(int x, int y) {