## GladeApp

GladeApp — The central control point of the Glade core.

## Functions

GladeApp * | glade_app_new ()
GType | glade_pointer_mode_get_type ()
GladeApp * | glade_app_get ()
void | glade_app_set_window ()
GtkWidget * | glade_app_get_window ()
GladeClipboard * | glade_app_get_clipboard ()
void | glade_app_add_project ()
void | glade_app_remove_project ()
GList * | glade_app_get_projects ()
GKeyFile * | glade_app_get_config ()
gboolean | glade_app_is_project_loaded ()
GladeProject * | glade_app_get_project_by_path ()
gint | glade_app_config_save ()
void | glade_app_set_accel_group ()
const gchar * | glade_app_get_catalogs_dir ()
const gchar * | glade_app_get_modules_dir ()
const gchar * | glade_app_get_pixmaps_dir ()
const gchar * | glade_app_get_locale_dir ()
gboolean | glade_app_do_event ()
GtkAccelGroup * | glade_app_get_accel_group ()
const gchar * | glade_app_get_bin_dir ()
GladeCatalog * | glade_app_get_catalog ()
gboolean | glade_app_get_catalog_version ()
GList * | glade_app_get_catalogs ()
const gchar * | glade_app_get_lib_dir ()
void | glade_app_search_docs ()

## Signals

void | doc-search | Run Last
void | signal-editor-created | Run Last
void | widget-adaptor-registered | Run Last

## Types and Values

| GladeApp

## Object Hierarchy

        GObject
        ╰── GladeApp

## Description

This main control object is where we try to draw the line between what is the Glade core and what is the main application. The main application must derive from the GladeApp object and create an instance to initialize the Glade core.

## Functions

### glade_app_new ()

    GladeApp *
    glade_app_new (void);

#### Returns

the GladeApp.

[transfer full]

### glade_pointer_mode_get_type ()

    GType
    glade_pointer_mode_get_type (void);

### glade_app_get ()

    GladeApp *
    glade_app_get (void);

#### Returns

the GladeApp.

[transfer none]

### glade_app_set_window ()

    void
    glade_app_set_window (GtkWidget *window);

Set the window of the application

#### Parameters

window | a GtkWidget. | [transfer full]

### glade_app_get_window ()

    GtkWidget *
    glade_app_get_window (void);

#### Returns

a GtkWidget.

[transfer none]

### glade_app_get_clipboard ()

    GladeClipboard *
    glade_app_get_clipboard (void);

#### Returns

a GladeClipboard.

[transfer none]

### glade_app_add_project ()

    void
    glade_app_add_project (GladeProject *project);

#### Parameters

project | the project to add to the GladeApp |

### glade_app_remove_project ()

    void
    glade_app_remove_project (GladeProject *project);

#### Parameters

project | the project to remove from the GladeApp |

### glade_app_get_projects ()

    GList *
    glade_app_get_projects (void);

#### Returns

a list of GladeCatalog.

[element-type GladeCatalog][transfer none]

### glade_app_get_config ()

    GKeyFile *
    glade_app_get_config (void);

#### Returns

a GKeyFile.

[transfer full]

### glade_app_is_project_loaded ()

    gboolean
    glade_app_is_project_loaded (const gchar *project_path);

### glade_app_get_project_by_path ()

    GladeProject *
    glade_app_get_project_by_path (const gchar *project_path);

Finds an open project with `path`

#### Parameters

project_path | The path of an open project |

#### Returns

A GladeProject, or NULL if no such open project was found.

[nullable][transfer none]

### glade_app_config_save ()

    gint
    glade_app_config_save (void);

Saves the GKeyFile to "`g_get_user_config_dir()`/GLADE_CONFIG_FILENAME"

#### Returns

0 on success.

### glade_app_set_accel_group ()

    void
    glade_app_set_accel_group (GtkAccelGroup *accel_group);

Sets `accel_group` to app. The acceleration group will made available for editor dialog windows from the plugin backend.

#### Parameters

accel_group | a GtkAccelGroup to set. | [transfer full]

### glade_app_get_catalogs_dir ()

    const gchar *
    glade_app_get_catalogs_dir (void);

### glade_app_get_modules_dir ()

    const gchar *
    glade_app_get_modules_dir (void);

### glade_app_get_pixmaps_dir ()

    const gchar *
    glade_app_get_pixmaps_dir (void);

### glade_app_get_locale_dir ()

    const gchar *
    glade_app_get_locale_dir (void);

### glade_app_do_event ()

    gboolean
    glade_app_do_event (GdkEvent *event);

This function has to be called in an event handler for widget selection to work. See `gdk_event_handler_set()`

#### Parameters

event | the event to process. |

#### Returns

true if the event was handled.

### glade_app_get_accel_group ()

    GtkAccelGroup *
    glade_app_get_accel_group (void);

#### Returns

the GtkAccelGroup.

[transfer none]

### glade_app_get_bin_dir ()

    const gchar *
    glade_app_get_bin_dir (void);

### glade_app_get_catalog ()

    GladeCatalog *
    glade_app_get_catalog (const gchar *name);

#### Parameters

name | the name of the catalog |

#### Returns

a GladeCatalog or `NULL` if none is found.

[transfer none][nullable]

### glade_app_get_catalog_version ()

    gboolean
    glade_app_get_catalog_version (const gchar *name,
                                   gint *major,
                                   gint *minor);

#### Parameters

name | the name of the GladeCatalog |
major | the major version. | [out][optional]
minor | the minor version. | [out][optional]

#### Returns

`TRUE` if the catalog has been found. It is a programming error to call this function with an unexisting catalog, returns `FALSE` in this case and throws a warning.

### glade_app_get_catalogs ()

    GList *
    glade_app_get_catalogs (void);

#### Returns

a list of GladeCatalog.

[transfer none][element-type GladeCatalog]

### glade_app_get_lib_dir ()

    const gchar *
    glade_app_get_lib_dir (void);

### glade_app_search_docs ()

    void
    glade_app_search_docs (const gchar *book,
                           const gchar *page,
                           const gchar *search);

Searches for `book` , `page` and `search` in the documentation.

#### Parameters

book | the name of a book |
page | the name of a page |
search | the search query |

## Types and Values

### GladeApp

    typedef struct _GladeApp GladeApp;

## Signal Details

### The `“doc-search”` signal

    void
    user_function (GladeApp *gladeeditor,
                   gchar    *arg1,
                   gchar    *arg2,
                   gchar    *arg3,
                   gpointer  user_data)

Emitted when the glade core requests that a doc-search be performed.

#### Parameters

gladeeditor | the GladeEditor which received the signal. |
arg1 | the (gchar *) book to search or `NULL` |
arg2 | the (gchar *) page to search or `NULL` |
arg3 | the (gchar *) search string or `NULL` |
user_data | user data set when the signal handler was connected. |

Flags: Run Last

### The `“signal-editor-created”` signal

    void
    user_function (GladeApp *gladeapp,
                   GObject  *signal_editor,
                   gpointer  user_data)

Emitted when a new signal editor created. A tree view is created in the default handler. Connect your handler before the default handler for setting a custom column or renderer and after it for connecting to the tree view signals

#### Parameters

gladeapp | the GladeApp which received the signal. |
signal_editor | the new GladeSignalEditor. |
user_data | user data set when the signal handler was connected. |

Flags: Run Last

### The `“widget-adaptor-registered”` signal

    void
    user_function (GladeApp *gladeapp,
                   GObject  *adaptor,
                   gpointer  user_data)

Emitted when a new widget adaptor is registered.

#### Parameters

gladeapp | the GladeApp which received the signal. |
adaptor | the newly registered GladeWidgetAdaptor. |
user_data | user data set when the signal handler was connected. |

Flags: Run Last