Follow-up Comment #5, bug #18574 (project mypaint):

More whiffle, but I need to get implementing this at some point. I guess
blink states aren't user-enterable canvas interaction modes, but looks like
I'll be revisiting blink states too anyway (which may be sensible given
there's overlay drawing involved).

Spring-loaded modes are also referred to as quasimodes in some places.

No reason why a mode can't be spring-loaded on a keypress, but implemented as
a one-off mode elsewhere. One-off modes :
http://designinginterfaces.com/firstedition/index.php?page=One-Off_Mode#. I'd
want one-off modes to be exitable by pressing Escape, so that you don't have
to draw anything or click your previous mode to get out and back to where you
were. Other than that, I want everything to behave like a single bank of radio
buttons would.

So line drawing, would be spring-loaded on the shift key  (by default), _and_
set as a one-off mode on its toolbar button and menu entry. Press the modifier
down and the toolbar buttons change state to reflect the temporary mode.
Release it and you go back to the previous state.

(Could this get irritating since modifiers also get held down for
accelerators? Sigh.)

Looks like a regular RadioAction group, but with some sort of keypress-aware
manager watching its changes, keeping a record of the previous action, and
sometimes prodding the group's state in response to key releases. Sounds
familiar, and probably makes it easier to avoid entering another mode while
currently in a spring-loaded mode (can signal handlers stop RadioActions from
changing state by returning particular values?)

Overlay drawing looks wider in scope than this, but could also be mutually
exclusive. Unless we want blink states to be rendered at the same time as
overlays for line drawing or other stuff?

Maybe the frame (not the manipulatable one, the one you get while painting)
is an overlay in the same sense too. In which case that's three categories of
overlay (or two).

    _______________________________________________________

Reply to this item at:

  <http://gna.org/bugs/?18574>

_______________________________________________
  Message sent via/by Gna!
  http://gna.org/


_______________________________________________
Mypaint-bugs mailing list
[email protected]
https://mail.gna.org/listinfo/mypaint-bugs

Reply via email to