GimpController 3 LIBGIMPWIDGETS Library
GimpController Pluggable GIMP input controller modules.

## Synopsis

    enum        GimpControllerEventType;
                GimpControllerEventAny;
                GimpControllerEventTrigger;
                GimpControllerEventValue;
    union       GimpControllerEvent;
                GimpController;
    GimpController* gimp_controller_new         (GType controller_type);
    gint        gimp_controller_get_n_events    (GimpController *controller);
    const gchar* gimp_controller_get_event_name (GimpController *controller,
                                                 gint event_id);
    const gchar* gimp_controller_get_event_blurb
                                                (GimpController *controller,
                                                 gint event_id);
    gboolean    gimp_controller_event           (GimpController *controller,
                                                 const GimpControllerEvent *event);

## Object Hierarchy

      GObject
       +----GimpController

## Properties

      "name"                 gchararray            : Read / Write / Construct
      "state"                gchararray            : Read / Write / Construct

## Signal Prototypes

    "event"     gboolean    user_function      (GimpController *gimpcontroller,
                                                gpointer arg1,
                                                gpointer user_data);

## Description

An abstract interface for implementing arbitrary input controllers.

## Details

### enum GimpControllerEventType

    typedef enum
    {
      GIMP_CONTROLLER_EVENT_TRIGGER,
      GIMP_CONTROLLER_EVENT_VALUE
    } GimpControllerEventType;

GimpControllerEventType

### GimpControllerEventAny

    typedef struct {
      GimpControllerEventType  type;
      GimpController          *source;
      gint                     event_id;
    } GimpControllerEventAny;

GimpControllerEventAny

### GimpControllerEventTrigger

    typedef struct {
      GimpControllerEventType  type;
      GimpController          *source;
      gint                     event_id;
    } GimpControllerEventTrigger;

GimpControllerEventTrigger

### GimpControllerEventValue

    typedef struct {
      GimpControllerEventType  type;
      GimpController          *source;
      gint                     event_id;
      GValue                   value;
    } GimpControllerEventValue;

GimpControllerEventValue

### union GimpControllerEvent

    union GimpControllerEvent
    {
      GimpControllerEventType    type;
      GimpControllerEventAny     any;
      GimpControllerEventTrigger trigger;
      GimpControllerEventValue   value;
    };

GimpControllerEvent

### GimpController

    typedef struct _GimpController GimpController;

GimpController

### gimp_controller_new ()

    GimpController* gimp_controller_new         (GType controller_type);

controller_type :

Returns :

gimp_controller_new

### gimp_controller_get_n_events ()

    gint        gimp_controller_get_n_events    (GimpController *controller);

controller :

Returns :

gimp_controller_get_n_events

### gimp_controller_get_event_name ()

    const gchar* gimp_controller_get_event_name (GimpController *controller,
                                                 gint event_id);

controller :

event_id :

Returns :

gimp_controller_get_event_name

### gimp_controller_get_event_blurb ()

    const gchar* gimp_controller_get_event_blurb
                                                (GimpController *controller,
                                                 gint event_id);

controller :

event_id :

Returns :

gimp_controller_get_event_blurb

### gimp_controller_event ()

    gboolean    gimp_controller_event           (GimpController *controller,
                                                 const GimpControllerEvent *event);

controller :

event :

Returns :

gimp_controller_event

## Properties

### The "`name`" property

      "name"                 gchararray            : Read / Write / Construct

Default value: "Unnamed Controller"

### The "`state`" property

      "state"                gchararray            : Read / Write / Construct

Default value: "Unknown"

## Signals

### The "event" signal

    gboolean    user_function                  (GimpController *gimpcontroller,
                                                gpointer arg1,
                                                gpointer user_data);

gimpcontroller :

  the object which received the signal.

arg1 :

user_data :

  user data set when the signal handler was connected.

Returns :