Man Linux: Main Page and Category List

NAME

       gicControlAllocate,       gicControlFree,      gicControlAttachFeature,
       gicControlDetachFeature, gicControlLookupFeature, gicControlGetFeature,
       gicControlNumFeatures,        gicControlGetName,       gicControlWrite,
       gicControlRead,      gicControlMapActions,      gicControlFindConflict,
       gicControlHandleEvent - Controls

SYNOPSIS

       #include <ggi/gic.h>

       gic_control *gicControlAllocate(gic_handle_t hand,
             char *name,char *shortname);
       void gicControlFree(gic_handle_t hand, gic_control *control);
       int gicControlAttachFeature(gic_handle_t hand,
             gic_control *control,gic_feature *feature);
       int gicControlDetachFeature(gic_handle_t hand,
             gic_control *control,gic_feature *feature);
       gic_feature *gicControlLookupFeature(gic_handle_t hand,
             gic_control *context,const char *name);
       gic_feature *gicControlGetFeature(gic_handle_t hand,
             gic_control *context,int number);
       int gicControlNumFeatures(gic_handle_t hand,
             gic_control *context);
       int gicControlGetName(gic_handle_t hand,
             gic_control *control, char *string, size_t maxlen);
       int gicControlWrite(gic_handle_t hand,
             gic_control *control,FILE *file);
       gic_control *gicControlRead(gic_handle_t hand, FILE *file);
       int gicControlMapActions(gic_handle_t hand,
             gic_control *control,gic_actionlist *actions);
       int gicControlFindConflict(gic_handle_t hand,
             gic_control *control,gic_recognizer *feature,
             gic_recognizer **start_and_return,gic_feature **optional);

       int gicControlHandleEvent(gic_handle_t hand,
             gic_control *control, gii_event *event);

DESCRIPTION

       A  gic_control  is  LIBGIIGIC’s  notion  of a collection of things that
       control a motion or similar.

       Usually applications do not need to handle this themselves.

       To allocate a new gic_control(3), call gicControlAllocate.  To  free  a
       context that is not needed anymore, call gicControlFree.

       gicControlAttachFeature  and gicControlDetachFeature are used to attach
       and  detach  features  from   a   control.   Multiple   features   like
       up/down/left/right make up a control (like sliding).

       gicControlLookupFeature  and  gicControlGetFeature  can  be used to get
       access to features attached to  a  control.  The  former  accesses  the
       features    by    name,   the   latter   by   number.   You   can   use
       gicControlNumFeatures to query for the number of controls.

       gicControlGetName can be used to query for the name of a control.

       gicControlWrite writes a description of the control given to the  given
       file.  It  can  be read back with gicContextRead(3) which will allocate
       and return a control  if  successful.  Afterwards  gicControlMapActions
       should  be  called  to  reestablish  the  mapping  between  actions and
       callbacks.

       In learning-mode, gicControlFindConflict is useful to check,  if  there
       are conflicting controls.

       You  can  feed events to gicControlHandleEvent to activate the relevant
       callbacks. However, usually one uses gicContextHandleEvent(3).

RETURN VALUE

       gicControlRead and gicControlAllocate return the read/allocated context
       on return or NULL on failure.

       gicControlAttachFeature,  gicControlDetachFeature,  gicControlWrite and
       gicControlMapActions return 0 on success and an  gii-error(3)  code  on
       failure.

       gicControlLookupFeature  and  gicControlGetFeature return the requested
       feature or NULL on failure.

       gicControlNumFeatures return the number of  features  attached  to  the
       control.

SEE ALSO

       gicContextRead(3)