static void hd_bookmark_shortcut_update_from_gconf (HDBookmarkShortcut *shortcut) { HDBookmarkShortcutPrivate *priv = shortcut->priv; gchar *plugin_id; gchar *label; plugin_id = hd_plugin_item_get_plugin_id (HD_PLUGIN_ITEM (shortcut)); label = get_label_from_gconf (priv->gconf_client, plugin_id); gtk_label_set_text (GTK_LABEL (priv->label), label); g_free (label); if (priv->thumbnail_icon) priv->thumbnail_icon = (cairo_surface_destroy (priv->thumbnail_icon), NULL); priv->thumbnail_icon = get_icon_from_gconf (priv->gconf_client, plugin_id); /* Get URL from GConf */ g_free (priv->url); priv->url = get_url_from_gconf (priv->gconf_client, plugin_id); g_free (plugin_id); }
static gboolean delete_event_cb (GtkWidget *widget, GdkEvent *event, HDBookmarkShortcut *shortcut) { gchar *plugin_id; plugin_id = hd_plugin_item_get_plugin_id (HD_PLUGIN_ITEM (shortcut)); hd_shortcuts_remove_bookmark_shortcut (plugin_id); g_free (plugin_id); return FALSE; }
static gchar * hd_home_plugin_item_get_applet_id_real (HDHomePluginItem *item) { gchar *plugin_id, *p; plugin_id = hd_plugin_item_get_plugin_id (HD_PLUGIN_ITEM (item)); /* replace "/" and "#" by "_" */ for (p = plugin_id; *p != '\0'; p++) { if (*p == '/') { g_warning ("Plugin id for applets should not contain '/'"); *p = '_'; } else if (*p == '#') { g_warning ("Plugin id for applets should not contain '#'"); *p = '_'; } } return plugin_id; }