/** * seahorse_util_remove_suffix: * @path: Path with a suffix * @prompt:Overwrite prompt text * * Removes a suffix from @path. Does not check if @path actually has a suffix. * * Returns: @path without a suffix. NULL if prompt cancelled **/ gchar* seahorse_util_remove_suffix (const gchar *path, const gchar *prompt) { GtkWidget *dialog; gchar *uri; gchar *t; g_return_val_if_fail (path != NULL, NULL); uri = g_strndup (path, strlen (path) - 4); if (prompt && uri && seahorse_util_uri_exists (uri)) { t = g_strdup_printf (prompt, seahorse_util_uri_get_last (uri)); dialog = seahorse_util_chooser_save_new (t, NULL); g_free (t); seahorse_util_chooser_show_key_files (dialog); gtk_file_chooser_select_uri (GTK_FILE_CHOOSER (dialog), uri); g_free (uri); uri = NULL; uri = seahorse_util_chooser_save_prompt (dialog); } return uri; }
/** * seahorse_util_add_suffix: * @ctx: Gpgme Context * @path: Path of an existing file * @suffix: Suffix type * @prompt: Overwrite prompt text * * Constructs a new path for a file based on @path plus a suffix determined by * @suffix. If ASCII Armor is enabled, the suffix will be '.asc'. Otherwise the * suffix will be '.pgp' if @suffix is %SEAHORSE_CRYPT_SUFFIX or '.sig' if * @suffix is %SEAHORSE_SIG_SUFFIX. * * Returns: A new path with the suffix appended to @path. NULL if prompt cancelled **/ gchar* seahorse_util_add_suffix (const gchar *path, SeahorseSuffix suffix, const gchar *prompt) { GtkWidget *dialog; const gchar *ext; gchar *uri; gchar *t; if (suffix == SEAHORSE_CRYPT_SUFFIX) ext = SEAHORSE_EXT_PGP; else ext = SEAHORSE_EXT_SIG; uri = g_strdup_printf ("%s%s", path, ext); if (prompt && uri && seahorse_util_uri_exists (uri)) { t = g_strdup_printf (prompt, seahorse_util_uri_get_last (uri)); dialog = seahorse_util_chooser_save_new (t, NULL); g_free (t); seahorse_util_chooser_show_key_files (dialog); gtk_file_chooser_select_uri (GTK_FILE_CHOOSER (dialog), uri); g_free (uri); uri = NULL; uri = seahorse_util_chooser_save_prompt (dialog); } return uri; }
static void sync_widgets_with_options (DialogData *data, const char *base_dir, const char *filename, const char *include_files, const char *exclude_files, const char *exclude_folders, gboolean update, gboolean recursive, gboolean no_symlinks) { if ((base_dir == NULL) || (strcmp (base_dir, "") == 0)) base_dir = fr_window_get_add_default_dir (data->window); if ((filename != NULL) && (strcmp (filename, base_dir) != 0)) gtk_file_chooser_select_uri (GTK_FILE_CHOOSER (data->dialog), filename); else gtk_file_chooser_set_current_folder_uri (GTK_FILE_CHOOSER (data->dialog), base_dir); if (include_files != NULL) gtk_entry_set_text (GTK_ENTRY (data->include_files_entry), include_files); if (exclude_files != NULL) gtk_entry_set_text (GTK_ENTRY (data->exclude_files_entry), exclude_files); if (exclude_folders != NULL) gtk_entry_set_text (GTK_ENTRY (data->exclude_folders_entry), exclude_folders); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (data->add_if_newer_checkbutton), update); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (data->include_subfold_checkbutton), recursive); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (data->exclude_symlinks), no_symlinks); }
Php::Value GtkFileChooserDialog_::select_uri(Php::Parameters ¶meters) { std::string s_uri = parameters[0]; gchar *uri = (gchar *)s_uri.c_str(); gboolean ret = gtk_file_chooser_select_uri (GTK_FILE_CHOOSER(instance), uri); return ret; }
int clip_GTK_FILECHOOSERUNSELECTURI(ClipMachine * ClipMachineMemory) { C_object *cchooser = _fetch_co_arg(ClipMachineMemory); gchar *uri = _clip_parc(ClipMachineMemory, 2); CHECKCOBJ(cchooser, GTK_IS_FILE_CHOOSER(cchooser->object)); CHECKARG(2, CHARACTER_type_of_ClipVarType); LOCALE_TO_UTF(uri); gtk_file_chooser_select_uri(GTK_FILE_CHOOSER(cchooser->object), uri); FREE_TEXT(uri); return 0; err: return 1; }
JNIEXPORT jboolean JNICALL Java_org_gnome_gtk_GtkFileChooser_gtk_1file_1chooser_1select_1uri ( JNIEnv* env, jclass cls, jlong _self, jstring _uri ) { gboolean result; jboolean _result; GtkFileChooser* self; const char* uri; // convert parameter self self = (GtkFileChooser*) _self; // convert parameter uri uri = (const char*) bindings_java_getString(env, _uri); if (uri == NULL) { return JNI_FALSE; // Java Exception already thrown } // call function result = gtk_file_chooser_select_uri(self, uri); // cleanup parameter self // cleanup parameter uri bindings_java_releaseString(uri); // translate return value to JNI type _result = (jboolean) result; // and finally return _result; }
int SelectFirmwareFile_Load(GtkWidget *w, gpointer data) { GtkFileFilter *pFilter_nds, *pFilter_bin, *pFilter_any; GtkWidget *pFileSelection; GtkWidget *pParent; gchar *sChemin; BOOL oldState = desmume_running(); Pause(); pParent = GTK_WIDGET(data); pFilter_nds = gtk_file_filter_new(); gtk_file_filter_add_pattern(pFilter_nds, "*.nds"); gtk_file_filter_set_name(pFilter_nds, "Nds binary (.nds)"); pFilter_bin = gtk_file_filter_new(); gtk_file_filter_add_pattern(pFilter_bin, "*.bin"); gtk_file_filter_set_name(pFilter_bin, "Binary file (.bin)"); pFilter_any = gtk_file_filter_new(); gtk_file_filter_add_pattern(pFilter_any, "*"); gtk_file_filter_set_name(pFilter_any, "All files"); /* Creation de la fenetre de selection */ pFileSelection = gtk_file_chooser_dialog_new("Save firmware...", GTK_WINDOW(pParent), GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_SAVE, GTK_RESPONSE_OK, NULL); /* On limite les actions a cette fenetre */ gtk_window_set_modal(GTK_WINDOW(pFileSelection), TRUE); gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(pFileSelection), pFilter_nds); gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(pFileSelection), pFilter_bin); gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(pFileSelection), pFilter_any); if(FirmwareFile[0]) gtk_file_chooser_select_uri(GTK_FILE_CHOOSER(pFileSelection), FirmwareFile); /* Affichage fenetre */ switch(gtk_dialog_run(GTK_DIALOG(pFileSelection))) { case GTK_RESPONSE_OK: /* Recuperation du chemin */ sChemin = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(pFileSelection)); if(LoadFirmware((const char*)sChemin) < 0) { GtkWidget *pDialog = gtk_message_dialog_new(GTK_WINDOW(pFileSelection), GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, "Unable to load :\n%s", sChemin); gtk_dialog_run(GTK_DIALOG(pDialog)); gtk_widget_destroy(pDialog); } else { GtkWidget *pDialog = gtk_message_dialog_new(GTK_WINDOW(pFileSelection), GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "Selected firmware :\n%s", sChemin); gtk_dialog_run(GTK_DIALOG(pDialog)); gtk_widget_destroy(pDialog); } g_free(sChemin); break; default: break; } gtk_widget_destroy(pFileSelection); if(oldState) Launch(); }
bool ChooseOneFile( MFile& ioFile) { GtkWidget* dialog = nil; bool result = false; try { dialog = gtk_file_chooser_dialog_new(_("Select File"), nil, GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL); THROW_IF_NIL(dialog); gtk_file_chooser_set_select_multiple(GTK_FILE_CHOOSER(dialog), false); gtk_file_chooser_set_local_only(GTK_FILE_CHOOSER(dialog), false); if (ioFile.IsValid()) { gtk_file_chooser_select_uri(GTK_FILE_CHOOSER(dialog), ioFile.GetURI().c_str()); } else if (gApp->GetCurrentFolder().length() > 0) { gtk_file_chooser_set_current_folder_uri( GTK_FILE_CHOOSER(dialog), gApp->GetCurrentFolder().c_str()); } if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) { char* uri = gtk_file_chooser_get_uri(GTK_FILE_CHOOSER(dialog)); if (uri != nil) { ioFile = MFile(uri, true); g_free(uri); gApp->SetCurrentFolder( gtk_file_chooser_get_current_folder_uri(GTK_FILE_CHOOSER(dialog))); result = true; } } } catch (exception& e) { if (dialog) gtk_widget_destroy(dialog); throw; } gtk_widget_destroy(dialog); return result; }