Diff of /trunk/src/main.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 55 by achadwick, Sat Feb 7 01:14:09 2009 UTC revision 69 by harbaum, Wed Feb 11 12:44:48 2009 UTC
# Line 56  static void main_ui_enable(appdata_t *ap Line 56  static void main_ui_enable(appdata_t *ap
56    /* disable all menu entries related to map */    /* disable all menu entries related to map */
57    gtk_widget_set_sensitive(appdata->menu_osm, project_valid);    gtk_widget_set_sensitive(appdata->menu_osm, project_valid);
58    gtk_widget_set_sensitive(appdata->menu_item_osm_upload, osm_valid);    gtk_widget_set_sensitive(appdata->menu_item_osm_upload, osm_valid);
59    gtk_widget_set_sensitive(appdata->menu_item_osm_diff, osm_valid);    if(appdata->menu_item_osm_undo)
60        gtk_widget_set_sensitive(appdata->menu_item_osm_undo, osm_valid);
61      gtk_widget_set_sensitive(appdata->menu_item_osm_save_changes, osm_valid);
62    gtk_widget_set_sensitive(appdata->menu_item_osm_undo_changes, osm_valid);    gtk_widget_set_sensitive(appdata->menu_item_osm_undo_changes, osm_valid);
63    gtk_widget_set_sensitive(appdata->track.menu_track, osm_valid);    gtk_widget_set_sensitive(appdata->track.menu_track, osm_valid);
64    gtk_widget_set_sensitive(appdata->menu_view, osm_valid);    gtk_widget_set_sensitive(appdata->menu_view, osm_valid);
# Line 70  static void main_ui_enable(appdata_t *ap Line 72  static void main_ui_enable(appdata_t *ap
72    
73  /******************** begin of menu *********************/  /******************** begin of menu *********************/
74    
 #if 0 // simplify menu  
 static struct {  
   enum { MENU_END, MENU_ITEM, MENU_SUB, MENU_SUB_END, MENU_SEP }  type;  
   
   char *title;  
   GCallback c_handler;  
 } menu[] = {  
   { MENU_SUB, "_OSM", NULL },  
   
   { MENU_END,  NULL, NULL },  
 };  
 #endif  
   
75  static void  static void
76  cb_menu_project_open(GtkWidget *window, gpointer data) {  cb_menu_project_open(GtkWidget *window, gpointer data) {
77    appdata_t *appdata = (appdata_t*)data;    appdata_t *appdata = (appdata_t*)data;
# Line 257  cb_menu_map_no_antialias(GtkWidget *widg Line 246  cb_menu_map_no_antialias(GtkWidget *widg
246  }  }
247    
248  static void  static void
249    cb_menu_undo(GtkWidget *widget, gpointer data) {
250      appdata_t *appdata = (appdata_t*)data;
251    
252      undo(appdata);
253    
254      // the banner will be displayed from within undo with more details
255    }
256    
257    static void
258  cb_menu_save_changes(GtkWidget *widget, gpointer data) {  cb_menu_save_changes(GtkWidget *widget, gpointer data) {
259    appdata_t *appdata = (appdata_t*)data;    appdata_t *appdata = (appdata_t*)data;
260    
# Line 270  cb_menu_undo_changes(GtkWidget *widget, Line 268  cb_menu_undo_changes(GtkWidget *widget,
268    
269    if(!yes_no_f(GTK_WIDGET(appdata->window), NULL, 0, 0,    if(!yes_no_f(GTK_WIDGET(appdata->window), NULL, 0, 0,
270                 _("Discard local changes?"),                 _("Discard local changes?"),
271                 _("Throw away all the changes you've not uploaded yet? This can't be undone.")))                 _("Throw away all the changes you've not "
272                     "uploaded yet? This can't be undone.")))
273      return;      return;
274    
275    banner_busy_start(appdata, 1, _("Redrawing..."));    banner_busy_start(appdata, 1, _("Redrawing..."));
# Line 565  void menu_create(appdata_t *appdata) { Line 564  void menu_create(appdata_t *appdata) {
564    
565    gtk_menu_shell_append(GTK_MENU_SHELL(submenu), gtk_separator_menu_item_new());    gtk_menu_shell_append(GTK_MENU_SHELL(submenu), gtk_separator_menu_item_new());
566    
567      if(getenv("OSM2GO_UNDO_TEST")) {
568        appdata->menu_item_osm_undo = menu_append_new_item(
569                   appdata, submenu, GTK_SIGNAL_FUNC(cb_menu_undo), _("_Undo"),
570                   GTK_STOCK_UNDO, "<OSM2Go-Main>/OSM/Undo",
571                   GDK_z, GDK_CONTROL_MASK, FALSE, FALSE
572                   );
573      } else
574        printf("set environment variable OSM2GO_UNDO_TEST to enable undo framework tests\n");
575    
576    appdata->menu_item_osm_diff = menu_append_new_item(    appdata->menu_item_osm_save_changes = menu_append_new_item(
577      appdata, submenu, GTK_SIGNAL_FUNC(cb_menu_save_changes), _("_Save local changes"),      appdata, submenu, GTK_SIGNAL_FUNC(cb_menu_save_changes), _("_Save local changes"),
578      GTK_STOCK_SAVE, "<OSM2Go-Main>/OSM/SaveChanges",      GTK_STOCK_SAVE, "<OSM2Go-Main>/OSM/SaveChanges",
579      GDK_s, GDK_SHIFT_MASK|GDK_CONTROL_MASK, FALSE, FALSE      GDK_s, GDK_SHIFT_MASK|GDK_CONTROL_MASK, FALSE, FALSE
# Line 803  void cleanup(appdata_t *appdata) { Line 810  void cleanup(appdata_t *appdata) {
810    
811    project_free(appdata->project);    project_free(appdata->project);
812    
813    undo_free(appdata->undo_state);    if(appdata->menu_item_osm_undo)
814        undo_free(appdata->undo.state);
815    
816    puts("everything is gone");    puts("everything is gone");
817  }  }

Legend:
Removed from v.55  
changed lines
  Added in v.69