--- trunk/src/notes.c 2009/12/07 16:22:17 232 +++ trunk/src/notes.c 2009/12/09 19:45:36 233 @@ -48,33 +48,6 @@ #define TAG_STATE GTK_STATE_PRELIGHT -static GtkWidget *check_button_new_with_label(char *label) { -#if !defined(USE_MAEMO) || (MAEMO_VERSION_MAJOR < 5) - return gtk_check_button_new_with_label(label); -#else - GtkWidget *cbut = - hildon_check_button_new(HILDON_SIZE_FINGER_HEIGHT | HILDON_SIZE_AUTO_WIDTH); - gtk_button_set_label(GTK_BUTTON(cbut), label); - return cbut; -#endif -} - -static void check_button_set_active(GtkWidget *button, gboolean active) { -#if !defined(USE_MAEMO) || (MAEMO_VERSION_MAJOR < 5) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), active); -#else - hildon_check_button_set_active(HILDON_CHECK_BUTTON(button), active); -#endif -} - -static gboolean check_button_get_active(GtkWidget *button) { -#if !defined(USE_MAEMO) || (MAEMO_VERSION_MAJOR < 5) - return gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(button)); -#else - return hildon_check_button_get_active(HILDON_CHECK_BUTTON(button)); -#endif -} - static notes_t *notes_load(appdata_t *appdata, cache_t *cache) { notes_t *notes = NULL; xmlDoc *doc = NULL; @@ -778,58 +751,8 @@ GtkWidget *info_label; GtkWidget *dialog; appdata_t *appdata; - GtkWidget *path_label; } export_context_t; -static void on_browse(GtkWidget *widget, gpointer data) { - GtkWidget *dialog; - - export_context_t *context = (export_context_t*)data; - -#ifdef USE_MAEMO - dialog = hildon_file_chooser_dialog_new(GTK_WINDOW(context->dialog), - GTK_FILE_CHOOSER_ACTION_SAVE); -#else - dialog = gtk_file_chooser_dialog_new(_("Save POI database"), - GTK_WINDOW(context->dialog), - GTK_FILE_CHOOSER_ACTION_SAVE, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, - NULL); -#endif - - printf("set filename <%s>\n", context->appdata->fieldnotes_path); - - if(!g_file_test(context->appdata->fieldnotes_path, G_FILE_TEST_EXISTS)) { - char *last_sep = strrchr(context->appdata->fieldnotes_path, '/'); - if(last_sep) { - *last_sep = 0; // seperate path from file - - /* the user just created a new document */ - gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), - context->appdata->fieldnotes_path); - gtk_file_chooser_set_current_name(GTK_FILE_CHOOSER(dialog), last_sep+1); - - /* restore full filename */ - *last_sep = '/'; - } - } else - gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(dialog), - context->appdata->fieldnotes_path); - - if (gtk_dialog_run (GTK_DIALOG(dialog)) == GTK_FM_OK) { - gchar *name = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); - if(name) { - free(context->appdata->fieldnotes_path); - context->appdata->fieldnotes_path = strdup(name); - gtk_label_set_text(GTK_LABEL(context->path_label), - context->appdata->fieldnotes_path); - } - } - - gtk_widget_destroy (dialog); -} - typedef struct log_chain_s { cache_t *cache; struct log_chain_s *next; @@ -919,28 +842,12 @@ /* ------------------ path/file ------------------ */ gtk_box_pack_start_defaults(GTK_BOX(vbox), gtk_hseparator_new()); - GtkWidget *hbox = gtk_hbox_new(FALSE, 0); - GtkWidget *label = gtk_label_new(_("Export to:")); - gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, TRUE,0); - gtk_misc_set_alignment(GTK_MISC(label), 0.f, 0.5f); - GtkWidget *button = gtk_button_new_with_label(_("Browse")); -#if defined(USE_MAEMO) && (MAEMO_VERSION_MAJOR == 5) - hildon_gtk_widget_set_theme_size(button, - (HILDON_SIZE_FINGER_HEIGHT | HILDON_SIZE_AUTO_WIDTH)); -#endif - gtk_signal_connect(GTK_OBJECT(button), "clicked", - GTK_SIGNAL_FUNC(on_browse), (gpointer)&context); - gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE,0); - gtk_box_pack_start_defaults(GTK_BOX(vbox), hbox); - - context.path_label = gtk_label_new(appdata->fieldnotes_path); - gtk_misc_set_alignment(GTK_MISC(context.path_label), 0.f, 0.5f); - gtk_label_set_ellipsize(GTK_LABEL(context.path_label), - PANGO_ELLIPSIZE_MIDDLE); - gtk_box_pack_start_defaults(GTK_BOX(vbox), context.path_label); + gtk_box_pack_start_defaults(GTK_BOX(vbox), + export_file(_("Save POI database"), &appdata->fieldnotes_path)); - label = gtk_label_new(_("(a %s in the filename will be replaced by the " - "current date and time)")); + GtkWidget *label = + gtk_label_new(_("(a %s in the filename will be replaced by the " + "current date and time)")); gtk_label_set_line_wrap_mode(GTK_LABEL(label), PANGO_WRAP_WORD); gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); gtk_misc_set_alignment(GTK_MISC(label), 0.f, 0.5f);