t_launcher * launcher_new (const gchar *command, gint icon_id, const gchar *icon_name, t_quicklauncher* quicklauncher) { t_launcher *launcher; launcher = g_new0 (t_launcher, 1); if(command) launcher->command = g_strdup(command); else launcher->command = NULL; launcher->icon_id = icon_id; if (icon_name) launcher->icon_name = g_strdup(icon_name); else launcher->icon_name = NULL; launcher->quicklauncher = quicklauncher; create_launcher(launcher); return launcher; }
t_launcher* launcher_load_config(XfceRc *rcfile, gint num, t_quicklauncher *quicklauncher) { char group[15]; t_launcher *launcher; g_sprintf(group, "launcher_%d%c", num,0); xfce_rc_set_group(rcfile, group); launcher = g_new0 (t_launcher, 1); launcher->quicklauncher = quicklauncher; launcher->command = g_strdup(xfce_rc_read_entry(rcfile, "command", NULL)); launcher->icon_name = g_strdup(xfce_rc_read_entry(rcfile, "icon_name", NULL)); launcher->icon_id = xfce_rc_read_int_entry(rcfile, "icon_id", 0); create_launcher(launcher); return launcher; }
static Launcher * load_launcher_applet (const char *location, PanelWidget *panel, const char *id, GSettings *settings) { Launcher *launcher; launcher = create_launcher (location); if (!launcher) return NULL; launcher->info = panel_applet_register (launcher->button, panel, PANEL_OBJECT_LAUNCHER, id, settings, launcher, free_launcher); if (!launcher->info) { free_launcher (launcher); return NULL; } panel_applet_add_callback (launcher->info, "launch", _("_Launch"), NULL); panel_applet_add_callback (launcher->info, "properties", _("_Properties"), lancher_properties_enabled); panel_widget_set_applet_expandable (panel, GTK_WIDGET (launcher->button), FALSE, TRUE); panel_widget_set_applet_size_constrained (panel, GTK_WIDGET (launcher->button), TRUE); /* setup button according to ditem */ setup_button (launcher); return launcher; }