int clip_GTK_FILEFILTERADDPATTERN(ClipMachine * cm) { C_object *cfilter = _fetch_co_arg(cm); gchar *pattern = _clip_parc(cm, 2); CHECKCOBJ(cfilter, GTK_IS_FILE_FILTER(cfilter->object)); CHECKARG(2, CHARACTER_t); gtk_file_filter_add_pattern(GTK_FILE_FILTER(cfilter->object), pattern); return 0; err: return 1; }
/** * egg_icon_chooser_remove_custom_filter: * @chooser: the chooser to modify. * @filter: the filter to remove. * * Removes @filter from the custom group in @chooser. * * Since: 2.6 **/ void egg_icon_chooser_remove_custom_filter (EggIconChooser *chooser, GtkFileFilter *filter) { EggIconChooserIface *iface; g_return_if_fail (EGG_IS_ICON_CHOOSER (chooser)); g_return_if_fail (GTK_IS_FILE_FILTER (filter)); iface = EGG_ICON_CHOOSER_GET_IFACE (chooser); g_return_if_fail (iface->remove_filter != NULL); (*iface->remove_filter) (chooser, filter); }
int clip_GTK_FILECHOOSERSETFILTER(ClipMachine * ClipMachineMemory) { C_object *cchooser = _fetch_co_arg(ClipMachineMemory); C_object *cfilter = _fetch_cobject(ClipMachineMemory, _clip_spar(ClipMachineMemory, 2)); CHECKCOBJ(cchooser, GTK_IS_FILE_CHOOSER(cchooser->object)); CHECKCOBJ(cfilter, GTK_IS_FILE_FILTER(cfilter->object)); gtk_file_chooser_set_filter(GTK_FILE_CHOOSER(cchooser->object), GTK_FILE_FILTER(cfilter->object)); return 0; err: return 1; }
int clip_GTK_FILEFILTERGETNAME(ClipMachine * cm) { C_object *cfilter = _fetch_co_arg(cm); gchar *name ; CHECKCOBJ(cfilter, GTK_IS_FILE_FILTER(cfilter->object)); name = (gchar *)gtk_file_filter_get_name(GTK_FILE_FILTER(cfilter->object)); LOCALE_FROM_UTF(name); _clip_retc(cm, name); FREE_TEXT(name); return 0; err: return 1; }
int clip_GTK_FILEFILTERSETNAME(ClipMachine * cm) { C_object *cfilter = _fetch_co_arg(cm); gchar *name = _clip_parc(cm, 2); CHECKCOBJ(cfilter, GTK_IS_FILE_FILTER(cfilter->object)); CHECKARG(2, CHARACTER_t); LOCALE_TO_UTF(name); gtk_file_filter_set_name(GTK_FILE_FILTER(cfilter->object), name); FREE_TEXT(name); return 0; err: return 1; }
int clip_GTK_FILEFILTERFILTER(ClipMachine * cm) { C_object *cfilter = _fetch_co_arg(cm); ClipVar *cv = _clip_spar(cm, 2); GtkFileFilterInfo info; CHECKCOBJ(cfilter, GTK_IS_FILE_FILTER(cfilter->object)); CHECKARG(2, MAP_t); _map_to_file_filter_info(cm, cv, &info); _clip_retl(cm, gtk_file_filter_filter(GTK_FILE_FILTER(cfilter->object), &info)); return 0; err: return 1; }
void gnac_ui_on_filter_changed(GtkWidget *file_chooser, GtkComboBox *combo) { GtkTreeIter iter; if (!gtk_combo_box_get_active_iter(combo, &iter)) return; GtkTreeModel *model = gtk_combo_box_get_model(combo); g_return_if_fail(model); gpointer filter; gtk_tree_model_get(model, &iter, 0, &filter, -1); if (GTK_IS_FILE_FILTER(filter)) { gtk_file_chooser_set_filter(GTK_FILE_CHOOSER(file_chooser), GTK_FILE_FILTER(filter)); } }
int clip_GTK_FILEFILTERADDCUSTOM(ClipMachine * cm) { C_object *cfilter = _fetch_co_arg(cm); GtkFileFilterFlags flags = _clip_parni(cm, 2); ClipVar *func = _clip_spar(cm, 3); C_var *c = 0; CHECKCOBJ(cfilter, GTK_IS_FILE_FILTER(cfilter->object)); CHECKARG(2, NUMERIC_t); CHECKOPT2(3, PCODE_t, CCODE_t); c->cm = cm; c->co = cfilter; _clip_mclone(cm, &c->cfunc, func); gtk_file_filter_add_custom(GTK_FILE_FILTER(cfilter->object), flags, (GtkFileFilterFunc)_file_filter_func, c, NULL); return 0; err: return 1; }
static gboolean runFileChooserCbNoMultiselAcceptTypes(WebKitWebView* webview, WebKitFileChooserRequest* request, gpointer data) { g_assert(!webkit_file_chooser_request_get_select_multiple(request)); const gchar* const* mimeTypes = webkit_file_chooser_request_get_mime_types(request); g_assert(mimeTypes); g_assert_cmpstr(mimeTypes[0], ==, "audio/*"); g_assert_cmpstr(mimeTypes[1], ==, "video/*"); g_assert_cmpstr(mimeTypes[2], ==, "image/*"); g_assert(!mimeTypes[3]); GtkFileFilter* filter = webkit_file_chooser_request_get_mime_types_filter(request); g_assert(GTK_IS_FILE_FILTER(filter)); g_assert(checkMimeTypeForFilter(filter, "audio/*")); g_assert(checkMimeTypeForFilter(filter, "video/*")); g_assert(checkMimeTypeForFilter(filter, "image/*")); const gchar* const* selectedFiles = webkit_file_chooser_request_get_selected_files(request); g_assert(!selectedFiles); g_main_loop_quit(loop); return TRUE; }