## XfceArrowButton XfceArrowButton — Toggle button with arrow. |

## Synopsis

    #include <libxfce4panel/libxfce4panel.h>

                        XfceArrowButton;
    GtkWidget *         xfce_arrow_button_new               (GtkArrowType type);
    void                xfce_arrow_button_set_arrow_type    (XfceArrowButton *button,
                                                             GtkArrowType type);
    GtkArrowType        xfce_arrow_button_get_arrow_type    (XfceArrowButton *button);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkWidget
                         +----GtkContainer
                               +----GtkBin
                                     +----GtkButton
                                           +----GtkToggleButton
                                                 +----XfceArrowButton

## Implemented Interfaces

XfceArrowButton implements AtkImplementorIface, GtkBuildable and GtkActivatable.

## Properties

      "arrow-type"               GtkArrowType          : Read / Write

## Signals

      "arrow-type-changed"                             : Run First

## Description

Toggle button with arrow. The arrow direction will be inverted when the button is toggled.

## Details

### XfceArrowButton

    typedef struct _XfceArrowButton XfceArrowButton;

The XfceArrowButton struct contains private data only, and should be accessed using the functions below.

### xfce_arrow_button_new ()

    GtkWidget *         xfce_arrow_button_new               (GtkArrowType type);

Creates a new XfceArrowButton widget.

`type` : | GtkArrowType for the arrow button
Returns : | The newly created XfceArrowButton widget.

### xfce_arrow_button_set_arrow_type ()

    void                xfce_arrow_button_set_arrow_type    (XfceArrowButton *button,
                                                             GtkArrowType type);

Sets the arrow type for `button`.

`button` : | a XfceArrowButton
`type` : | a valid GtkArrowType

### xfce_arrow_button_get_arrow_type ()

    GtkArrowType        xfce_arrow_button_get_arrow_type    (XfceArrowButton *button);

Returns the value of the ::arrow-type property.

`button` : | a XfceArrowButton
Returns : | the GtkArrowType of `button`.

## Property Details

### The `"arrow-type"` property

      "arrow-type"               GtkArrowType          : Read / Write

The arrow type of the button. This value also determines the direction of the popup menu.

Default value: GTK_ARROW_UP

## Signal Details

### The `"arrow-type-changed"` signal

    void                user_function                      (XfceArrowButton *button,
                                                            GtkArrowType     type,
                                                            gpointer         user_data)      : Run First

Emitted when the arrow direction of the menu button changes. This value also determines the direction of the popup menu.

`button` : | the object which emitted the signal
`type` : | the new GtkArrowType of the button
`user_data` : | user data set when the signal handler was connected.

## See Also

GtkToggleButton