## ExoToolbarsEditor

ExoToolbarsEditor — Widget to edit toolbars

## Functions

GtkWidget * | exo_toolbars_editor_new ()
GtkWidget * | exo_toolbars_editor_new_with_model ()
ExoToolbarsModel * | exo_toolbars_editor_get_model ()
void | exo_toolbars_editor_set_model ()
GtkUIManager * | exo_toolbars_editor_get_ui_manager ()
void | exo_toolbars_editor_set_ui_manager ()

## Properties

ExoToolbarsModel * | model | Read / Write
GtkUIManager * | ui-manager | Read / Write

## Types and Values

struct | ExoToolbarsEditor

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GtkObject
                ╰── GtkWidget
                    ╰── GtkContainer
                        ╰── GtkBox
                            ╰── GtkVBox
                                ╰── ExoToolbarsEditor

## Implemented Interfaces

ExoToolbarsEditor implements AtkImplementorIface, GtkBuildable and GtkOrientable.

## Includes

    #include <exo/exo.h>

## Description

ExoToolbarsEditor is a widget that allows the user to edit toolbars used within your application by simply dragging and dropping toolbar items between the editor widget and the toolbar widgets.

Most applications should simply use the ExoToolbarsEditorDialog class, which includes an ExoToolbarsEditor as main widget.

## Functions

### exo_toolbars_editor_new ()

    GtkWidget *
    exo_toolbars_editor_new (GtkUIManager *ui_manager);

Creates a new ExoToolbarsEditor that will be associated with `ui_manager` . `ui_manager` must be a valid GtkUIManager, `NULL` is not allowed at this point.

The newly created ExoToolbarsEditor will not be usable until you associate an ExoToolbarsModel with it, using the function `exo_toolbars_editor_set_model()`. You should probably use `exo_toolbars_editor_new_with_model()` instead.

#### Parameters

ui_manager | A GtkUIManager. |

#### Returns

A new ExoToolbarsEditor.

### exo_toolbars_editor_new_with_model ()

    GtkWidget *
    exo_toolbars_editor_new_with_model (GtkUIManager *ui_manager,
                                        ExoToolbarsModel *model);

Creates a new ExoToolbarsEditor that will be associated with `model` and `ui_manager` . You must supply a valid GtkUIManager and a valid ExoToolbarsModel here or the function will fail.

#### Parameters

ui_manager | A GtkUIManager. |
model | An ExoToolbarsModel. |

#### Returns

A new ExoToolbarsEditor.

### exo_toolbars_editor_get_model ()

    ExoToolbarsModel *
    exo_toolbars_editor_get_model (ExoToolbarsEditor *editor);

Returns the ExoToolbarsModel currently associated with `editor` or `NULL` if no ExoToolbarsModel is currently associated with `editor` .

#### Parameters

editor | An ExoToolbarsEditor. |

#### Returns

An ExoToolbarsModel or `NULL`.

### exo_toolbars_editor_set_model ()

    void
    exo_toolbars_editor_set_model (ExoToolbarsEditor *editor,
                                   ExoToolbarsModel *model);

Sets the model to edit by this `editor` . If you specify `NULL` for `model` , the editor widget will be disabled. Else the editor widget will load the toolbars from `model` and reinitialize its user interface according to `model` .

#### Parameters

editor | An ExoToolbarsEditor. |
model | An ExoToolbarsModel or `NULL`. |

### exo_toolbars_editor_get_ui_manager ()

    GtkUIManager *
    exo_toolbars_editor_get_ui_manager (ExoToolbarsEditor *editor);

Returns the GtkUIManager associated with `editor` or `NULL` if no user interface manager is associated with `editor` currently.

#### Parameters

editor | An ExoToolbarsEditor. |

#### Returns

A GtkUIManager or `NULL`.

### exo_toolbars_editor_set_ui_manager ()

    void
    exo_toolbars_editor_set_ui_manager (ExoToolbarsEditor *editor,
                                        GtkUIManager *ui_manager);

Sets the GtkUIManager to use by this ExoToolbarsEditor. If you specify `NULL` for `ui_manager` , the editor widget will be disabled. Else the editor will load the available actions from `ui_manager` and reinitialize the user interface.

#### Parameters

editor | An ExoToolbarsEditor. |
ui_manager | A GtkUIManager or `NULL`. |

## Types and Values

### struct ExoToolbarsEditor

    struct ExoToolbarsEditor;

The ExoToolbarsEditor struct contains only private fields and should not be directly accessed.

## Property Details

### The `“model”` property

      “model”                    ExoToolbarsModel *

The ExoToolbarsModel that should be edited from within this toolbars editor. If you set this property to `NULL`, the editor widget will be disabled, else the editor widget will load the toolbars from the given ExoToolbarsModel and initialize its user interface according to the model.

Flags: Read / Write

### The `“ui-manager”` property

      “ui-manager”               GtkUIManager *

The GtkUIManager used by this editor. If this property is `NULL`, the editor widget will be disabled, else if you specify a valid GtkUIManager, the editor widget will load the available actions from the given user interface manager and initialize its user interface according to the specified GtkUIManager.

The given `ui` -manager needs to support all actions that were specified for the model, used by the editor, with the `exo_toolbars_model_set_actions()` method.

Flags: Read / Write

## See Also

ExoToolbarsEditorDialog