## GimpButton GimpButton — A GtkButton with a little extra functionality. |

## Synopsis

                GimpButton;
    GtkWidget*  gimp_button_new                 (void);
    void        gimp_button_extended_clicked    (GimpButton *button,
                                                 GdkModifierType state);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkWidget
                         +----GtkContainer
                               +----GtkBin
                                     +----GtkButton
                                           +----GimpButton
                                                 +----GimpColorButton

## Implemented Interfaces

GimpButton implements AtkImplementorIface.

## Signal Prototypes

    "extended-clicked"
                void        user_function      (GimpButton *gimpbutton,
                                                GdkModifierType arg1,
                                                gpointer user_data);

## Description

GimpButton adds an extra signal to the GtkButton widget that allows to distinguish a normal click from a click that was performed with modifier keys pressed.

## Details

### GimpButton

    typedef struct _GimpButton GimpButton;

### gimp_button_new ()

    GtkWidget*  gimp_button_new                 (void);

Creates a new GimpButton widget.

Returns : | A pointer to the new GimpButton widget.

### gimp_button_extended_clicked ()

    void        gimp_button_extended_clicked    (GimpButton *button,
                                                 GdkModifierType state);

Emits the button's "extended_clicked" signal.

`button` : | a GimpButton.
`state` : | a state as found in GdkEventButton->state, e.g. GDK_SHIFT_MASK.

## Signals

### The "extended-clicked" signal

    void        user_function                  (GimpButton *gimpbutton,
                                                GdkModifierType arg1,
                                                gpointer user_data);

`gimpbutton` : | the object which received the signal.
`arg1` : | the state of modifier keys when the button was clicked
`user_data` : | user data set when the signal handler was connected.