void xplayer_search_entry_add_source (XplayerSearchEntry *self, const gchar *id, const gchar *label, int priority) { GtkWidget *item; g_return_if_fail (XPLAYER_IS_SEARCH_ENTRY (self)); if (self->priv->menu == NULL) { self->priv->menu = gtk_menu_new (); gtk_menu_button_set_popup (GTK_MENU_BUTTON (self->priv->button), self->priv->menu); gd_tagged_entry_add_tag (GD_TAGGED_ENTRY (self->priv->entry), SOURCE_ID, label); } item = gtk_radio_menu_item_new_with_label (self->priv->group, label); self->priv->group = g_slist_prepend (self->priv->group, item); g_object_set_data_full (G_OBJECT (item), "id", g_strdup (id), g_free); g_object_set_data_full (G_OBJECT (item), "label", g_strdup (label), g_free); g_object_set_data (G_OBJECT (item), "priority", GINT_TO_POINTER (priority)); g_signal_connect (item, "toggled", G_CALLBACK (item_toggled), self); insert_item_sorted (self, priority, item); }
static void ide_editor_frame_set_position_label (IdeEditorFrame *self, const gchar *text) { g_return_if_fail (IDE_IS_EDITOR_FRAME (self)); if (!text || !*text) { if (self->search_entry_tag) { gd_tagged_entry_remove_tag (self->search_entry, self->search_entry_tag); g_clear_object (&self->search_entry_tag); } return; } if (!self->search_entry_tag) { self->search_entry_tag = gd_tagged_entry_tag_new (""); gd_tagged_entry_add_tag (self->search_entry, self->search_entry_tag); gd_tagged_entry_tag_set_style (self->search_entry_tag, "gb-search-entry-occurrences-tag"); } gd_tagged_entry_tag_set_label (self->search_entry_tag, text); }