This one’s not so easy is it. Hmm let’s see . . .
Do simple, single step drawing tools (continuous, single dot, single drag like line rectangle…) to be cancelled while you still holding mouse down?
Yes. (cool idea)
Not even Photoshop does this for drawn strokes.
If you’re drawing a big stroke but before you even finish it, and you know you’re going to hit ctrl+z afterward (for whatever reason) - being able to instead cancel it before you even complete the stroke seems pretty intuitive and useful.
If cancelled mid-stroke, it would be like the stroke never happened. While still pressing your stylus or holding LMB, ESC would kill the stroke, then you’d lift your stylus/release LMB and nothing happens - the stroke is gone.
What if the tool isn’t a drawing tool but one that picks up or (see below) transforms the brush? Such tools jump to the last drawing tool when they finished normally.
I’m a huge fan of jumping back to the last drawing tool used. Seems prudent to go ahead and jump back if the user voluntarily cancelled the operation. If they want to re-try, they can manually switch tools and try again.
“opposite mouse button” ends certain multi-step operations that have already defined parts. Actually this can make sense for polygon tools:
- don’t add a new line with polygon line
- execute fill with filled polygon tool or polygon brush pick up
Opposite mouse button (OMB) canceling is very useful and convenient.
If OMB cancels something, then ESC could as well, BUT we could consider it a more powerful way to cancel an operation, like it does for the Filled Polygon/Contour tool - OMB will finish the shape but ESC will totally cancel it.
In the case of the Polygon Line tool, I view drawing each line as a separate operation with it’s own undo state. So, if I select the Polygon Line tool and click only once, I start a line and the other end of the line is actively drawn to my cursor as PMNG waits for me to click again to complete that first line. During this, it seems best if OMB and ESC cancel the operation altogether, leaving nothing behind - including the first click.
BUT, if I’m in the process of drawing lots of lines with the Polygon Line tool, clicking many times drawing numerous lines, then while I’m doing that - pressing OMB could cancel only the current line drawn to my cursor and all the others remain (OMB currently already does this) and the operation is complete. Alternatively, if I want to cancel AND undo all the lines I just drew then why not have ESC do exactly that - undo everything I just did after that first click. Now there’s two different ways to cancel this multi-step operation depending on your intent.
With multi process tools ESC will go back one step, when possible. Examples:
The new multi transform for brushes has several steps like:
- place the brush
- transform
Perhaps two consecutive ESC presses could signal to PMNG the user wishes to do a complete cancel, while a single ESC press would undo only the most previous step, if applicable.
The rotated ellipse tool (and new rotated ellipse selection tool) will be changed to work like the transformation tool. You first define the ellipse or circle. Then you can change size and rotation with such onscreen handles. This allows for better control instead of using extra keys to fiddle around when you want to change the size although you are in rotation step.
Although this is a multi-step tool, ESC would not be able to go back one step because the first step (defining the initial circle/oval) is a drag operation that requires mouse button being down.
So, ESC would reset the tool completely.
Understood. Sounds perfect.
These are multi-step operations in that they require multiple clicks, but unless you complete the whole operation the first click doesn’t really matter, so canceling the whole thing with either OMB or ESC seems right.
Floating selection transforming tools will start on a defined selection and should work like this:
If transformation has started then transformation is reset, but tool is still active.
If no transformation done then ESC will go to the tool previously used, canceling the transformation tool.
Do you agree?
Yes, I believe so.
To me this makes ESC work like going stepwise backward where possible which should be intuitive?
The Filled Polygon/Contour tool is an interesting case. I use this tool a lot (often with Selection mode because it turns it into a powerful selection tool but you’ve replaced that with the new upcoming Free Form/Polygon selection tool so that’s great) and it uses multiple steps.
How this particular tool works right now, in the current stable build, is pretty ideal - ESC will cancel it altogether while OMB finalizes it. This is great.
But we can learn one additional convenient gimmick from Photoshop to further enhance convenience - double-clicking. This can place the last point AND finalize the shape.
Demonstrated in this GIF, using Photoshop’s polygonal lasso tool: https://i.imgur.com/zcjOmrH.gif
Just one more thing to ponder when offering intuitive ways to cancel or complete multi step drawing operations. In the current PMNG, you can get the same effect by clicking once then OMB clicking on the same pixel to finalize.
While testing tools I found some oddity in the Curve line tool’s behavior - if you just single click without click dragging - PMNG will start a line but only draw the line halfway to your cursor then finalize a straight line if you click again, not ever allowing you the opportunity to define its curve.
Seems like one click could start the line and a second click create a straight line, then where you click a third time define the curvature.
I mean in addition to being able to click and drag out a line, then release mouse, then click once to define the curve like we do now.