Diff of /trunk/src/main.c

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

revision 76 by harbaum, Fri Feb 13 12:02:26 2009 UTC revision 79 by achadwick, Sun Feb 15 22:15:06 2009 UTC
# Line 428  menu_append_new_item(appdata_t *appdata, Line 428  menu_append_new_item(appdata_t *appdata,
428                       GtkWidget *menu_shell,                       GtkWidget *menu_shell,
429                       GtkSignalFunc activate_cb,                       GtkSignalFunc activate_cb,
430                       char *label,                       char *label,
431                       const gchar *stock_id, // overridden by label, accels                       const gchar *icon_name, // stock id or name for icon_load
432                                        // overridden by label, accels, icon_name
433                       const gchar *accel_path,                       const gchar *accel_path,
434                       guint accel_key,      // from gdk/gdkkeysyms.h                       guint accel_key,      // from gdk/gdkkeysyms.h
435                       GdkModifierType accel_mods, // e.g. GDK_CONTROL_MASK                       GdkModifierType accel_mods, // e.g. GDK_CONTROL_MASK
436                       gboolean is_check, gboolean check_status)                       gboolean is_check, gboolean check_status)
437  {  {
438    GtkWidget *item = NULL;    GtkWidget *item = NULL;
439    GtkStockItem stock_item;    GtkWidget *image = NULL;
440    
441    gboolean stock_item_known = FALSE;    gboolean stock_item_known = FALSE;
442    if (stock_id != NULL) {    GtkStockItem stock_item;
443      stock_item_known = gtk_stock_lookup(stock_id, &stock_item);    if (icon_name != NULL) {
444        stock_item_known = gtk_stock_lookup(icon_name, &stock_item);
445    }    }
446    
447    // Icons    // Icons
# Line 446  menu_append_new_item(appdata_t *appdata, Line 449  menu_append_new_item(appdata_t *appdata,
449    item = is_check ? gtk_check_menu_item_new_with_mnemonic (label)    item = is_check ? gtk_check_menu_item_new_with_mnemonic (label)
450                    : gtk_menu_item_new_with_mnemonic       (label);                    : gtk_menu_item_new_with_mnemonic       (label);
451  #else  #else
452    if (is_check || !stock_item_known) {    if (is_check) {
453      item = is_check ? gtk_check_menu_item_new_with_mnemonic (label)      item = gtk_check_menu_item_new_with_mnemonic (label);
454                      : gtk_menu_item_new_with_mnemonic       (label);    }
455      else if (!stock_item_known) {
456        GdkPixbuf *pbuf = icon_load(&appdata->icon, icon_name);
457        if (pbuf) {
458          image = gtk_image_new_from_pixbuf(pbuf);
459        }
460        if (image) {
461          item = gtk_image_menu_item_new_with_mnemonic(label);
462          gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(item), image);
463        }
464        else {
465          item = gtk_menu_item_new_with_mnemonic(label);
466        }
467    }    }
468    else {    else {
469      item = gtk_image_menu_item_new_with_mnemonic(label);      item = gtk_image_menu_item_new_with_mnemonic(label);
470      GtkWidget *stock_image = gtk_image_new_from_stock(stock_id, GTK_ICON_SIZE_MENU);      image = gtk_image_new_from_stock(icon_name, GTK_ICON_SIZE_MENU);
471      gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(item), stock_image);      gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(item), image);
472    }    }
473  #endif  #endif
474    
# Line 519  void menu_create(appdata_t *appdata) { Line 534  void menu_create(appdata_t *appdata) {
534    
535    /* --------------- view menu ------------------- */    /* --------------- view menu ------------------- */
536    
537  #ifndef UISPECIFIC_MENU_IS_MENU_BAR  #ifndef UISPECIFIC_MAIN_MENU_IS_MENU_BAR
538    gtk_menu_shell_append(GTK_MENU_SHELL(menu), gtk_separator_menu_item_new());    gtk_menu_shell_append(GTK_MENU_SHELL(menu), gtk_separator_menu_item_new());
539  #endif  #endif
540    
# Line 557  void menu_create(appdata_t *appdata) { Line 572  void menu_create(appdata_t *appdata) {
572    
573    appdata->menu_item_osm_upload = menu_append_new_item(    appdata->menu_item_osm_upload = menu_append_new_item(
574      appdata, submenu, GTK_SIGNAL_FUNC(cb_menu_upload), _("_Upload..."),      appdata, submenu, GTK_SIGNAL_FUNC(cb_menu_upload), _("_Upload..."),
575      NULL, "<OSM2Go-Main>/OSM/Upload",      "upload.16", "<OSM2Go-Main>/OSM/Upload",
576      GDK_u, GDK_SHIFT_MASK|GDK_CONTROL_MASK, FALSE, FALSE      GDK_u, GDK_SHIFT_MASK|GDK_CONTROL_MASK, FALSE, FALSE
577    );    );
578    
579    menu_append_new_item(    menu_append_new_item(
580      appdata, submenu, GTK_SIGNAL_FUNC(cb_menu_download), _("_Download..."),      appdata, submenu, GTK_SIGNAL_FUNC(cb_menu_download), _("_Download..."),
581      NULL, "<OSM2Go-Main>/OSM/Download",      "download.16", "<OSM2Go-Main>/OSM/Download",
582      GDK_d, GDK_SHIFT_MASK|GDK_CONTROL_MASK, FALSE, FALSE      GDK_d, GDK_SHIFT_MASK|GDK_CONTROL_MASK, FALSE, FALSE
583    );    );
584    

Legend:
Removed from v.76  
changed lines
  Added in v.79