Instant apply and explicit apply in KDE HIG

Diego Moya turingt at gmail.com
Fri Mar 3 17:28:16 CET 2006


On 03/03/06, Gábor Lehel <illissius at gmail.com> wrote:
> On 3/3/06, Ellen Reitmayr <ellen at kde.org> wrote:
> >
> > On OpenUsability, Stefan Monov suggested to promote the usage of instant apply
> > instead of explicit apply in certain situations in KDE

an improved workflow, instant apply has the additional advantage of
*forcing* the system to have an undo facility (which is good for the
user, as it allows an exploratory use of the interface). The worse
part of "Apply" buttons is that they are destructive - once used, you
can never recover the previous state. I'll always prefer a "Revert all
changes" button to an "Apply" one in a dialog.


> > I replied that while instant apply is a useful thing in certain situations,
> > there undoing operations becomes problematic:
> >
> > <snip>
> > for example, in kivio, there is instant apply in the docker windows.
> > when i modify the x location via the geometry docker, i can either enter a
> > value manually (no prob here), or i use the spin box buttons. if i use them
> > and i want to revert my changes, i have to press 'undo' as often as i pressed
> > the button in the spin box. that is crazy!
> > </snip>

If you are controlling a physical property (like size or position),
you probably would be better by changing it directly (with drag and
drop) instead of doing it through a related property box. This is
Direct Manipulation at its best.

The undo should behave the same for directly changing the object than
for editing the numeric property, because they represent the same
operation (the natural undo in this case is to revert everything which
happened between starting the dragging operation and the user
releasing the button).


> >
> > He proposed to remember only the changes that change direction:
> >
> > <snip>
> > A possible approach is to remember every change that changes the direction.

Another common heuristic is recording all changes to the same control
as a single operation. Undoing the operation would return the
interface to its state previous to using that control.


> >
> > What is your opinion??
> > And: Won't it be difficult for users if instant and explicit apply are mixed?

Only as difficult as explicit apply always is. Instant apply, if done
well, is transparent to the user - so he doesn't notice it. In special
when you substitute instant apply by direct manipulation, which should
be done as often as possible.


More information about the Kde-usability-devel mailing list