Application

Application — the rhythmbox subclass of GtkApplication

Synopsis

struct              RBApplication;
struct              RBApplicationClass;
GApplication *      rb_application_new                  (void);
int                 rb_application_run                  (RBApplication *app,
                                                         int argc,
                                                         char **argv);
void                rb_application_link_shared_menus    (RBApplication *app,
                                                         GMenu *menu);
void                rb_application_add_shared_menu      (RBApplication *app,
                                                         const char *name,
                                                         GMenuModel *menu);
GMenuModel *        rb_application_get_shared_menu      (RBApplication *app,
                                                         const char *name);
GMenuModel *        rb_application_get_plugin_menu      (RBApplication *app,
                                                         const char *menu);
void                rb_application_add_plugin_menu_item (RBApplication *app,
                                                         const char *menu,
                                                         const char *id,
                                                         GMenuItem *item);
void                rb_application_remove_plugin_menu_item
                                                        (RBApplication *app,
                                                         const char *menu,
                                                         const char *id);

Object Hierarchy

  GObject
   +----GApplication
         +----GtkApplication
               +----RBApplication

Implemented Interfaces

RBApplication implements GActionGroup and GActionMap.

Properties

  "shell"                    RBShell*              : Read

Description

RBApplication contains some interactions with the desktop environment, such as the app menu and processing of files specified on the command line.

Details

struct RBApplication

struct RBApplication;


struct RBApplicationClass

struct RBApplicationClass {
	GtkApplicationClass parent_class;
};


rb_application_new ()

GApplication *      rb_application_new                  (void);

Creates the application instance.

Returns :

application instance

rb_application_run ()

int                 rb_application_run                  (RBApplication *app,
                                                         int argc,
                                                         char **argv);

Runs the application

argc :

arg count

argv :

arg values

Returns :

exit code

rb_application_link_shared_menus ()

void                rb_application_link_shared_menus    (RBApplication *app,
                                                         GMenu *menu);

Processes shared menu links in the given menu. Menu links take the form of items with "rb-menu-link" or "rb-plugin-menu-link" and "rb-menu-link-type" attributes. "rb-menu-link" specifies the name of a shared menu to link in, "rb-plugin-menu-link" specifies the name of a plugin menu to link in, "rb-menu-link-type" specifies the link type, either "section" or "submenu". A link item must have "rb-menu-link-type" and one of "rb-menu-link" or "rb-plugin-menu-link".

app :

the RBApplication

menu :

a GMenu to process

rb_application_add_shared_menu ()

void                rb_application_add_shared_menu      (RBApplication *app,
                                                         const char *name,
                                                         GMenuModel *menu);

Adds a menu model to the set of shared menus available for linking into other menus.

app :

the application instance

name :

a name for the menu

menu :

GMenuModel instance

rb_application_get_shared_menu ()

GMenuModel *        rb_application_get_shared_menu      (RBApplication *app,
                                                         const char *name);

Returns a shared menu instance added with rb_application_add_shared_menu

app :

the application instance

name :

name of menu to return

Returns :

menu model instance, or NULL if not found. [transfer none]

rb_application_get_plugin_menu ()

GMenuModel *        rb_application_get_plugin_menu      (RBApplication *app,
                                                         const char *menu);

Returns a plugin menu instance. Plugin menus are like shared menus except they are created empty on first access, and they consist solely of entries added through rb_application_add_plugin_item.

app :

the application instance

Returns :

plugin menu instance. [transfer none]

rb_application_add_plugin_menu_item ()

void                rb_application_add_plugin_menu_item (RBApplication *app,
                                                         const char *menu,
                                                         const char *id,
                                                         GMenuItem *item);

Adds an item to a plugin menu. The id can be used to remove the item.

app :

the application instance

menu :

name of the menu to add to

id :

id of the item to add (used to remove it, must be unique within the menu)

item :

menu item to add

rb_application_remove_plugin_menu_item ()

void                rb_application_remove_plugin_menu_item
                                                        (RBApplication *app,
                                                         const char *menu,
                                                         const char *id);

Property Details

The "shell" property

  "shell"                    RBShell*              : Read

RBShell instance.