## GtkInputDialog GtkInputDialog — Configure devices for the XInput extension |

## Synopsis

    #include <gtk/gtk.h>

                GtkInputDialog;
    GtkWidget*  gtk_input_dialog_new            (void);

## Object Hierarchy

      GObject
       +----GtkObject
             +----GtkWidget
                   +----GtkContainer
                         +----GtkBin
                               +----GtkWindow
                                     +----GtkDialog
                                           +----GtkInputDialog

## Implemented Interfaces

GtkInputDialog implements AtkImplementorIface.

## Signals

    "disable-device"
                void        user_function      (GtkInputDialog *inputdialog,
                                                GdkDevice      *deviceid,
                                                gpointer        user_data)        : Run last
    "enable-device"
                void        user_function      (GtkInputDialog *inputdialog,
                                                GdkDevice      *deviceid,
                                                gpointer        user_data)        : Run last

## Description

NOTE this widget is considered too specialized/little-used for GTK+, and will in the future be moved to some other package. If your application needs this widget, feel free to use it, as the widget does work and is useful in some applications; it's just not of general interest. However, we are not accepting new features for the widget, and it will eventually move out of the GTK+ distribution.

GtkInputDialog displays a dialog which allows the user to configure XInput extension devices. For each device, they can control the mode of the device (disabled, screen-relative, or window-relative), the mapping of axes to coordinates, and the mapping of the devices macro keys to key press events.

GtkInputDialog contains two buttons to which the application can connect; one for closing the dialog, and one for saving the changes. No actions are bound to these by default. The changes that the user makes take effect immediately.

## Details

### GtkInputDialog

    typedef struct _GtkInputDialog GtkInputDialog;

### gtk_input_dialog_new ()

    GtkWidget*  gtk_input_dialog_new            (void);

Creates a new GtkInputDialog.

Returns : | the new GtkInputDialog.

## Signal Details

### The "disable-device" signal

    void        user_function                  (GtkInputDialog *inputdialog,
                                                GdkDevice      *deviceid,
                                                gpointer        user_data)        : Run last

This signal is emitted when the user changes the mode of a device from a GDK_MODE_SCREEN or GDK_MODE_WINDOW to GDK_MODE_ENABLED.

`inputdialog` : | the object which received the signal.
`deviceid` : | The ID of the newly disabled device.
`user_data` : | user data set when the signal handler was connected.

### The "enable-device" signal

    void        user_function                  (GtkInputDialog *inputdialog,
                                                GdkDevice      *deviceid,
                                                gpointer        user_data)        : Run last

This signal is emitted when the user changes the mode of a device from GDK_MODE_DISABLED to a GDK_MODE_SCREEN or GDK_MODE_WINDOW.

`inputdialog` : | the object which received the signal.
`deviceid` : | The ID of the newly enabled device.
`user_data` : | user data set when the signal handler was connected.