+ char *action_arg = NULL;
+ char *initial_filename = NULL;
+ char *initial_folder = NULL;
+ GError *error = NULL;
+ GOptionEntry options[] = {
+ { "action", 'a', 0, G_OPTION_ARG_STRING, &action_arg, "Filechooser action", "ACTION" },
+ { "multiple", 'm', 0, G_OPTION_ARG_NONE, &multiple, "Select-multiple", NULL },
+ { "right-to-left", 'r', 0, G_OPTION_ARG_NONE, &force_rtl, "Force right-to-left layout.", NULL },
+ { "initial-filename", 'f', 0, G_OPTION_ARG_FILENAME, &initial_filename, "Initial filename to select", "FILENAME" },
+ { "initial-folder", 'F', 0, G_OPTION_ARG_FILENAME, &initial_folder, "Initial folder to show", "FILENAME" },
+ { NULL }
+ };
+
+ if (!gtk_init_with_args (&argc, &argv, "", options, NULL, &error))
+ {
+ g_print ("Failed to parse args: %s\n", error->message);
+ g_error_free (error);
+ return 1;
+ }
+
+ if (initial_filename && initial_folder)
+ {
+ g_print ("Only one of --initial-filename and --initial-folder may be specified");
+ return 1;
+ }