## e-ui-customize-dialog e-ui-customize-dialog — a UI customize dialog |

## Functions

EUICustomizeDialog * | e_ui_customize_dialog_new ()
void | e_ui_customize_dialog_add_customizer ()
GPtrArray * | e_ui_customize_dialog_get_customizers ()
void | e_ui_customize_dialog_run ()

## Types and Values

#define | E_TYPE_UI_CUSTOMIZE_DIALOG
| EUICustomizeDialog

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GtkWidget
                ╰── GtkContainer
                    ╰── GtkBin
                        ╰── GtkWindow
                            ╰── GtkDialog
                                ╰── EUICustomizeDialog

## Implemented Interfaces

EUICustomizeDialog implements AtkImplementorIface and GtkBuildable.

## Includes

    #include <e-util/e-util.h>

## Description

The EUICustomizeDialog is used to customize the UI.

Use `e_ui_customize_dialog_add_customizer()` to add all the relevant customizers before showing the dialog with `e_ui_customize_dialog_run()`.

## Functions

### e_ui_customize_dialog_new ()

    EUICustomizeDialog *
    e_ui_customize_dialog_new (GtkWindow *parent);

Creates a new EUICustomizeDialog. Use `gtk_widget_destroy()`, when no longer needed.

#### Parameters

parent | a parent GtkWindow, or `NULL`. | [nullable]

#### Returns

a new EUICustomizeDialog.

[transfer full]

Since: 3.56

### e_ui_customize_dialog_add_customizer ()

    void
    e_ui_customize_dialog_add_customizer (EUICustomizeDialog *self,
                                          EUICustomizer *customizer);

Adds the `customizer` as one source of the customizable UI elements. All the registered elements in the `customizer` will be offered for changes in the dialog.

#### Parameters

self | an EUICustomizeDialog |
customizer | an EUICustomizer |

Since: 3.56

### e_ui_customize_dialog_get_customizers ()

    GPtrArray *
    e_ui_customize_dialog_get_customizers (EUICustomizeDialog *self);

Returns an array of all the EUICustomizer -s added to the `self` with `e_ui_customize_dialog_add_customizer()`. Do not modify the array, it's owned by the `self` .

#### Parameters

self | an EUICustomizeDialog |

#### Returns

a GPtrArray with the customizers.

[transfer none][element-type EUICustomizer]

Since: 3.56

### e_ui_customize_dialog_run ()

    void
    e_ui_customize_dialog_run (EUICustomizeDialog *self,
                               const gchar *preselect_id);

Runs a dialog, which allows UI customizations.

When the `preselect_id` is not `NULL`, it should be one of the registered ID-s by the `e_ui_customizer_register()`. It will be preselected for the customization.

#### Parameters

self | an EUICustomizer |
preselect_id | an ID to preselect, or `NULL`. | [nullable]

Since: 3.56

## Types and Values

### E_TYPE_UI_CUSTOMIZE_DIALOG

    #define E_TYPE_UI_CUSTOMIZE_DIALOG e_ui_customize_dialog_get_type ()

### EUICustomizeDialog

    typedef struct _EUICustomizeDialog EUICustomizeDialog;