static void switch_search_method (GtkWidget *button, gpointer tree_view) { if (!gtk_tree_view_get_search_entry (GTK_TREE_VIEW (tree_view))) { gpointer data = g_object_get_data (tree_view, "my-search-entry"); gtk_tree_view_set_search_entry (GTK_TREE_VIEW (tree_view), GTK_ENTRY (data)); } else gtk_tree_view_set_search_entry (GTK_TREE_VIEW (tree_view), NULL); }
static void build_search_entry(GitgWindow *window, GtkBuilder *builder) { GtkWidget *box = GTK_WIDGET(gtk_builder_get_object(builder, "hbox_top")); GtkWidget *entry = sexy_icon_entry_new(); GtkImage *image = GTK_IMAGE(gtk_image_new_from_stock(GTK_STOCK_FIND, GTK_ICON_SIZE_MENU)); sexy_icon_entry_set_icon(SEXY_ICON_ENTRY(entry), SEXY_ICON_ENTRY_PRIMARY, image); gtk_tree_view_set_search_entry(window->priv->tree_view, GTK_ENTRY(entry)); gtk_widget_show(entry); gtk_box_pack_end(GTK_BOX(box), entry, FALSE, FALSE, 0); GtkBuilder *b = gitg_utils_new_builder( "gitg-menus.xml"); GtkUIManager *manager = GTK_UI_MANAGER(gtk_builder_get_object(b, "uiman")); window->priv->search_popup = GTK_WIDGET(g_object_ref(gtk_ui_manager_get_widget(manager, "/ui/search_popup"))); gtk_builder_connect_signals(b, window); g_object_unref(b); g_signal_connect(entry, "icon-pressed", G_CALLBACK(on_search_icon_pressed), window); gtk_tree_view_set_search_column(window->priv->tree_view, 1); gtk_tree_view_set_search_equal_func(window->priv->tree_view, search_equal_func, window, NULL); GtkAccelGroup *group = gtk_accel_group_new(); GClosure *closure = g_cclosure_new(G_CALLBACK(focus_search), entry, NULL); gtk_accel_group_connect(group, GDK_f, GDK_CONTROL_MASK, 0, closure); gtk_window_add_accel_group(GTK_WINDOW(window), group); }
void _gtk_app_chooser_widget_set_search_entry (GtkAppChooserWidget *self, GtkEditable *entry) { gtk_tree_view_set_search_entry (GTK_TREE_VIEW (self->priv->program_list), entry); g_object_bind_property (self->priv->no_apps, "visible", entry, "sensitive", G_BINDING_SYNC_CREATE | G_BINDING_INVERT_BOOLEAN); }
static void gimp_container_popup_create_view (GimpContainerPopup *popup) { GimpEditor *editor; GtkWidget *button; popup->editor = g_object_new (GIMP_TYPE_CONTAINER_EDITOR, "view-type", popup->view_type, "container", popup->container, "context", popup->context, "view-size", popup->view_size, "view-border-width", popup->view_border_width, NULL); gimp_container_view_set_reorderable (GIMP_CONTAINER_VIEW (popup->editor->view), FALSE); if (popup->view_type == GIMP_VIEW_TYPE_LIST) { GtkWidget *search_entry; search_entry = gtk_entry_new (); gtk_box_pack_end (GTK_BOX (popup->editor->view), search_entry, FALSE, FALSE, 0); gtk_tree_view_set_search_entry (GTK_TREE_VIEW (GIMP_CONTAINER_TREE_VIEW (GIMP_CONTAINER_VIEW (popup->editor->view))->view), GTK_ENTRY (search_entry)); gtk_widget_show (search_entry); } gimp_container_box_set_size_request (GIMP_CONTAINER_BOX (popup->editor->view), 6 * (popup->default_view_size + 2 * popup->view_border_width), 10 * (popup->default_view_size + 2 * popup->view_border_width)); if (GIMP_IS_EDITOR (popup->editor->view)) gimp_editor_set_show_name (GIMP_EDITOR (popup->editor->view), FALSE); gtk_container_add (GTK_CONTAINER (popup->frame), GTK_WIDGET (popup->editor)); gtk_widget_show (GTK_WIDGET (popup->editor)); editor = GIMP_EDITOR (popup->editor->view); gimp_editor_add_button (editor, GTK_STOCK_ZOOM_OUT, _("Smaller Previews"), NULL, G_CALLBACK (gimp_container_popup_smaller_clicked), NULL, popup); gimp_editor_add_button (editor, GTK_STOCK_ZOOM_IN, _("Larger Previews"), NULL, G_CALLBACK (gimp_container_popup_larger_clicked), NULL, popup); button = gimp_editor_add_stock_box (editor, GIMP_TYPE_VIEW_TYPE, "gimp", G_CALLBACK (gimp_container_popup_view_type_toggled), popup); gimp_int_radio_group_set_active (GTK_RADIO_BUTTON (button), popup->view_type); if (popup->dialog_factory) gimp_editor_add_button (editor, popup->dialog_stock_id, popup->dialog_tooltip, NULL, G_CALLBACK (gimp_container_popup_dialog_clicked), NULL, popup); gtk_widget_grab_focus (GTK_WIDGET (popup->editor)); }
int main (int argc, char *argv[]) { GtkWidget *window; GtkWidget *vbox; GtkWidget *scrolled_window; GtkWidget *tree_view; GtkTreeStore *model; GtkTreeModel *smodel = NULL; GtkTreeModel *ssmodel = NULL; GtkCellRenderer *renderer; GtkTreeViewColumn *column; GtkTreeIter iter; gint i; GtkWidget *entry, *button; GtkWidget *window2, *vbox2, *scrolled_window2, *tree_view2; GtkWidget *window3, *vbox3, *scrolled_window3, *tree_view3; gtk_init (&argc, &argv); /** * First window - Just a GtkTreeStore */ window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window), "Words, words, words - Window 1"); g_signal_connect (window, "destroy", gtk_main_quit, NULL); vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8); gtk_box_pack_start (GTK_BOX (vbox), gtk_label_new ("Jonathan and Kristian's list of cool words. (And Anders' cool list of numbers) \n\nThis is just a GtkTreeStore"), FALSE, FALSE); gtk_container_add (GTK_CONTAINER (window), vbox); entry = gtk_entry_new (); gtk_box_pack_start (GTK_BOX (vbox), entry, FALSE, FALSE); button = gtk_button_new_with_label ("Switch search method"); gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE); scrolled_window = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled_window), GTK_SHADOW_ETCHED_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start (GTK_BOX (vbox), scrolled_window, TRUE, TRUE); model = gtk_tree_store_new (NUM_COLUMNS, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT); /* smodel = gtk_tree_model_sort_new_with_model (GTK_TREE_MODEL (model)); ssmodel = gtk_tree_model_sort_new_with_model (GTK_TREE_MODEL (smodel)); */ tree_view = gtk_tree_view_new_with_model (GTK_TREE_MODEL (model)); gtk_tree_view_set_search_entry (GTK_TREE_VIEW (tree_view), GTK_ENTRY (entry)); g_object_set_data (G_OBJECT (tree_view), "my-search-entry", entry); g_signal_connect (button, "clicked", G_CALLBACK (switch_search_method), tree_view); /* gtk_tree_selection_set_select_function (gtk_tree_view_get_selection (GTK_TREE_VIEW (tree_view)), select_func, NULL, NULL);*/ /* 12 iters now, 12 later... */ for (i = 0; data[i].word_1 != NULL; i++) { gint k; GtkTreeIter child_iter; gtk_tree_store_prepend (GTK_TREE_STORE (model), &iter, NULL); gtk_tree_store_set (GTK_TREE_STORE (model), &iter, WORD_COLUMN_1, data[i].word_1, WORD_COLUMN_2, data[i].word_2, WORD_COLUMN_3, data[i].word_3, WORD_COLUMN_4, data[i].word_4, NUMBER_COLUMN_1, data[i].number_1, -1); gtk_tree_store_append (GTK_TREE_STORE (model), &child_iter, &iter); gtk_tree_store_set (GTK_TREE_STORE (model), &child_iter, WORD_COLUMN_1, data[i].word_1, WORD_COLUMN_2, data[i].word_2, WORD_COLUMN_3, data[i].word_3, WORD_COLUMN_4, data[i].word_4, NUMBER_COLUMN_1, data[i].number_1, -1); for (k = 0; childdata[k].word_1 != NULL; k++) { gtk_tree_store_append (GTK_TREE_STORE (model), &child_iter, &iter); gtk_tree_store_set (GTK_TREE_STORE (model), &child_iter, WORD_COLUMN_1, childdata[k].word_1, WORD_COLUMN_2, childdata[k].word_2, WORD_COLUMN_3, childdata[k].word_3, WORD_COLUMN_4, childdata[k].word_4, NUMBER_COLUMN_1, childdata[k].number_1, -1); } } smodel = gtk_tree_model_sort_new_with_model (GTK_TREE_MODEL (model)); ssmodel = gtk_tree_model_sort_new_with_model (GTK_TREE_MODEL (smodel)); g_object_unref (model); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("First Word", renderer, "text", WORD_COLUMN_1, NULL); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), column); gtk_tree_view_column_set_sort_column_id (column, WORD_COLUMN_1); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("Second Word", renderer, "text", WORD_COLUMN_2, NULL); gtk_tree_view_column_set_sort_column_id (column, WORD_COLUMN_2); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), column); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("Third Word", renderer, "text", WORD_COLUMN_3, NULL); gtk_tree_view_column_set_sort_column_id (column, WORD_COLUMN_3); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), column); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("Fourth Word", renderer, "text", WORD_COLUMN_4, NULL); gtk_tree_view_column_set_sort_column_id (column, WORD_COLUMN_4); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), column); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("First Number", renderer, "text", NUMBER_COLUMN_1, NULL); gtk_tree_view_column_set_sort_column_id (column, NUMBER_COLUMN_1); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), column); /* gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (smodel), WORD_COLUMN_1, GTK_SORT_ASCENDING);*/ gtk_container_add (GTK_CONTAINER (scrolled_window), tree_view); gtk_window_set_default_size (GTK_WINDOW (window), 400, 400); gtk_widget_show_all (window); /** * Second window - GtkTreeModelSort wrapping the GtkTreeStore */ if (smodel) { window2 = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window2), "Words, words, words - window 2"); g_signal_connect (window2, "destroy", gtk_main_quit, NULL); vbox2 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8); gtk_box_pack_start (GTK_BOX (vbox2), gtk_label_new ("Jonathan and Kristian's list of words.\n\nA GtkTreeModelSort wrapping the GtkTreeStore of window 1"), FALSE, FALSE); gtk_container_add (GTK_CONTAINER (window2), vbox2); scrolled_window2 = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled_window2), GTK_SHADOW_ETCHED_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window2), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start (GTK_BOX (vbox2), scrolled_window2, TRUE, TRUE); tree_view2 = gtk_tree_view_new_with_model (smodel); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("First Word", renderer, "text", WORD_COLUMN_1, NULL); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view2), column); gtk_tree_view_column_set_sort_column_id (column, WORD_COLUMN_1); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("Second Word", renderer, "text", WORD_COLUMN_2, NULL); gtk_tree_view_column_set_sort_column_id (column, WORD_COLUMN_2); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view2), column); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("Third Word", renderer, "text", WORD_COLUMN_3, NULL); gtk_tree_view_column_set_sort_column_id (column, WORD_COLUMN_3); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view2), column); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("Fourth Word", renderer, "text", WORD_COLUMN_4, NULL); gtk_tree_view_column_set_sort_column_id (column, WORD_COLUMN_4); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view2), column); /* gtk_tree_sortable_set_default_sort_func (GTK_TREE_SORTABLE (smodel), (GtkTreeIterCompareFunc)gtk_tree_data_list_compare_func, NULL, NULL); gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (smodel), WORD_COLUMN_1, GTK_SORT_DESCENDING);*/ gtk_container_add (GTK_CONTAINER (scrolled_window2), tree_view2); gtk_window_set_default_size (GTK_WINDOW (window2), 400, 400); gtk_widget_show_all (window2); } /** * Third window - GtkTreeModelSort wrapping the GtkTreeModelSort which * is wrapping the GtkTreeStore. */ if (ssmodel) { window3 = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window3), "Words, words, words - Window 3"); g_signal_connect (window3, "destroy", gtk_main_quit, NULL); vbox3 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8); gtk_box_pack_start (GTK_BOX (vbox3), gtk_label_new ("Jonathan and Kristian's list of words.\n\nA GtkTreeModelSort wrapping the GtkTreeModelSort of window 2"), FALSE, FALSE); gtk_container_add (GTK_CONTAINER (window3), vbox3); scrolled_window3 = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled_window3), GTK_SHADOW_ETCHED_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window3), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start (GTK_BOX (vbox3), scrolled_window3, TRUE, TRUE); tree_view3 = gtk_tree_view_new_with_model (ssmodel); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("First Word", renderer, "text", WORD_COLUMN_1, NULL); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view3), column); gtk_tree_view_column_set_sort_column_id (column, WORD_COLUMN_1); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("Second Word", renderer, "text", WORD_COLUMN_2, NULL); gtk_tree_view_column_set_sort_column_id (column, WORD_COLUMN_2); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view3), column); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("Third Word", renderer, "text", WORD_COLUMN_3, NULL); gtk_tree_view_column_set_sort_column_id (column, WORD_COLUMN_3); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view3), column); renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes ("Fourth Word", renderer, "text", WORD_COLUMN_4, NULL); gtk_tree_view_column_set_sort_column_id (column, WORD_COLUMN_4); gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view3), column); /* gtk_tree_sortable_set_default_sort_func (GTK_TREE_SORTABLE (ssmodel), (GtkTreeIterCompareFunc)gtk_tree_data_list_compare_func, NULL, NULL); gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (ssmodel), WORD_COLUMN_1, GTK_SORT_ASCENDING);*/ gtk_container_add (GTK_CONTAINER (scrolled_window3), tree_view3); gtk_window_set_default_size (GTK_WINDOW (window3), 400, 400); gtk_widget_show_all (window3); } for (i = 0; data[i].word_1 != NULL; i++) { gint k; gtk_tree_store_prepend (GTK_TREE_STORE (model), &iter, NULL); gtk_tree_store_set (GTK_TREE_STORE (model), &iter, WORD_COLUMN_1, data[i].word_1, WORD_COLUMN_2, data[i].word_2, WORD_COLUMN_3, data[i].word_3, WORD_COLUMN_4, data[i].word_4, -1); for (k = 0; childdata[k].word_1 != NULL; k++) { GtkTreeIter child_iter; gtk_tree_store_append (GTK_TREE_STORE (model), &child_iter, &iter); gtk_tree_store_set (GTK_TREE_STORE (model), &child_iter, WORD_COLUMN_1, childdata[k].word_1, WORD_COLUMN_2, childdata[k].word_2, WORD_COLUMN_3, childdata[k].word_3, WORD_COLUMN_4, childdata[k].word_4, -1); } } gtk_main (); return 0; }
PrefabSelector::PrefabSelector () : _widget(gtk_vbox_new(FALSE, 2)), _store(gtk_tree_store_new(PREFAB_STORE_SIZE, G_TYPE_STRING, G_TYPE_STRING, GDK_TYPE_PIXBUF, G_TYPE_STRING)), _fileFiltered(gtk_tree_model_filter_new(GTK_TREE_MODEL(_store), NULL)), _fileSorted( GTK_TREE_MODEL(gtk_tree_model_sort_new_with_model(_fileFiltered))), _view( GTK_TREE_VIEW(gtk_tree_view_new_with_model(_fileSorted))) { std::string fullpath = GlobalRegistry().get(RKEY_APP_PATH) + "prefabs/"; _selectedSelectionStrategy = PREFAB_SELECT_EXTEND; GtkWidget* scr = gtk_scrolled_window_new(0, 0); gtk_box_pack_start(GTK_BOX(_widget), scr, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scr), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scr), GTK_SHADOW_IN); { gtk_tree_view_set_enable_search(_view, TRUE); gtk_tree_view_set_search_column(_view, PREFAB_SHORTNAME); gtk_tree_view_set_headers_visible(_view, TRUE); gtk_tree_view_set_headers_clickable(_view, TRUE); #if GTK_CHECK_VERSION(2,10,0) gtk_tree_view_set_grid_lines(_view, GTK_TREE_VIEW_GRID_LINES_HORIZONTAL); #endif g_signal_connect(G_OBJECT(_view), "button_press_event", G_CALLBACK(callbackButtonPress), this); { GtkTreeViewColumn* column = gtk_tree_view_column_new(); gtk_tree_view_column_set_title(column, _("Prefab")); gtk_tree_view_column_set_expand(column, FALSE); gtk_tree_view_column_set_sort_indicator(column, TRUE); gtk_tree_view_column_set_sort_column_id(column, PREFAB_SHORTNAME); gtk_tree_view_append_column(_view, column); GtkCellRenderer* imageRenderer = gtk_cell_renderer_pixbuf_new(); gtk_cell_renderer_set_fixed_size(imageRenderer, 128, -1); gtk_tree_view_column_pack_start(column, imageRenderer, false); gtk_tree_view_column_add_attribute(column, imageRenderer, "pixbuf", PREFAB_IMAGE); GtkCellRenderer* nameRenderer = gtk_cell_renderer_text_new(); gtk_tree_view_column_pack_end(column, nameRenderer, false); gtk_tree_view_column_add_attribute(column, nameRenderer, "markup", PREFAB_DESCRIPTION); } gtk_container_add(GTK_CONTAINER(scr), GTK_WIDGET(_view)); g_object_unref(G_OBJECT(_store)); } GtkWidget* hboxFooter = gtk_hbox_new(TRUE, 0); gtk_box_pack_start(GTK_BOX(_widget), hboxFooter, FALSE, TRUE, 0); { // options GtkWidget* vboxOptions = gtk_vbox_new(FALSE, 3); gtk_box_pack_start(GTK_BOX(hboxFooter), vboxOptions, FALSE, TRUE, 0); GtkRadioButton* radioExtendSelection = GTK_RADIO_BUTTON(gtk_radio_button_new_with_label(NULL, _("Extend current selection"))); gtk_widget_ref(GTK_WIDGET(radioExtendSelection)); gtk_box_pack_start(GTK_BOX(vboxOptions), GTK_WIDGET(radioExtendSelection), TRUE, TRUE, 0); g_object_set_data(G_OBJECT(radioExtendSelection), "handler", gint_to_pointer( g_signal_connect(radioExtendSelection, "toggled", G_CALLBACK(callbackSelectionOptionToggleExtend), this))); GtkRadioButton * radioUnselect = GTK_RADIO_BUTTON(gtk_radio_button_new_with_label_from_widget(radioExtendSelection, _("Deselect before insert"))); gtk_widget_ref(GTK_WIDGET(radioUnselect)); gtk_box_pack_start(GTK_BOX(vboxOptions), GTK_WIDGET(radioUnselect), TRUE, TRUE, 0); g_object_set_data(G_OBJECT(radioUnselect), "handler", gint_to_pointer( g_signal_connect(G_OBJECT(radioUnselect), "toggled", G_CALLBACK(callbackSelectionOptionToggleUnselect), this))); GtkRadioButton * radioReplace = GTK_RADIO_BUTTON(gtk_radio_button_new_with_label_from_widget(radioUnselect, _("Replace current selection"))); gtk_widget_ref(GTK_WIDGET(radioReplace)); gtk_box_pack_start(GTK_BOX(vboxOptions), GTK_WIDGET(radioReplace), TRUE, TRUE, 0); g_object_set_data(G_OBJECT(radioReplace), "handler", gint_to_pointer( g_signal_connect(G_OBJECT(radioReplace), "toggled", G_CALLBACK(callbackSelectionOptionToggleReplace), this))); } { //search entry, connect to file filter GtkWidget* vboxSearch = gtk_vbox_new(FALSE, 3); gtk_box_pack_start(GTK_BOX(hboxFooter), vboxSearch, FALSE, TRUE, 3); GtkWidget *searchEntry = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(vboxSearch), searchEntry, FALSE, TRUE, 3); gtk_widget_show(searchEntry); gtk_tree_model_filter_set_visible_func(GTK_TREE_MODEL_FILTER(_fileFiltered), (GtkTreeModelFilterVisibleFunc) callbackFilterFiles, this, NULL); g_signal_connect(G_OBJECT(searchEntry), "changed", G_CALLBACK(callbackRefilter), NULL); _filterEntry = GTK_ENTRY(searchEntry); #if GTK_CHECK_VERSION(2,10,0) gtk_tree_view_set_search_entry(_view, _filterEntry); #endif } /* fill prefab store with data */ Directory_forEach(fullpath, LoadPrefabDirectoryFunctor(fullpath, "", NULL, _store)); Directory_forEach(fullpath, MatchFileExtension<LoadPrefabFileFunctor> ("map", LoadPrefabFileFunctor("", NULL, _store))); gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(_fileFiltered)); gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(_fileSorted), PREFAB_SHORTNAME, GTK_SORT_ASCENDING); }
static VALUE rg_set_search_entry(VALUE self, VALUE entry) { gtk_tree_view_set_search_entry(_SELF(self), RVAL2GOBJ(entry)); return self; }