README for KGesture
-------------------

Description:
------------
KGesture is a simple gesture recognition application. Gestures are
predefined movements done with a mouse or other input device.
KGesture will watch for motions and when detected, an action
will be taken.

How it Works:
-------------
KGesture makes use of libstroke, which is a library designed to
translate mouse movements into strokes. Combining multiple
strokes creates gestures. KGesture polls the X server at a
preset interval and records the location of the mouse. When the
mouse has been stationary for a short period of time
(150 milliseconds), the strokes are translated to a gesture and
the resulting gesture is compared against all known gestures. If
there is a match, the action is performed. Unlike graffiti
recognition, KGesture will not try to find a "best match", since
this would constantly lead to errors.

How to Use KGesture
-------------------
KGesture is simple to use:

o Compile and install KGesture like any normal KDE application.
o Run KGesture. This will put an icon in the system tray on the panel.
o Right click on the icon to bring up the menu. Select Preferences.
o Add new gestures using the gesture wizard.
o Click OK on the Preferences dialog
o Begin making gestures with the mouse. You do not have to hold any
  buttons down, see the next section for more info.

Hints and Usability:
--------------------
For optimal performance, make sure your gestures are at least 3 strokes
long. This will help prevent accidental strokes.

Pause at least 150 milliseconds before you start a stroke, to ensure that
KGesture wasn't in the process of recording a gesture already. Once
you complete a gesture, leave the mouse still again for 150 milliseconds
to allow KGesture to recognize that you completed the gesture.

Straight line gestures can be more acurately recognized, so avoid gestures
with many (or any) diagnals.

Don't forget that KDE2 has a dcop application that allows interaction
with running applications. This means you can tell KGesture to do things
to applications already running. For example, you can define a gesture to
take you to a certain desktop by using the action:
dcop kwin KWinInterface setCurrentDesktop 2
To find more DCOP aware applications, and the interfaces they extend,
use the 'kdcop' application that is part of the standard kde install.
This application will allow you to look up DCOP methods.


Comments, Questions, Feedback and Job offers are welcome at
mpilone@slac.com.


-mike
Mike Pilone
mpilone@slac.com
