X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=gtk-gui.c;h=f17120319610c1de7b508a0391ca5158a19d4ac3;hb=605e063203f8a2a35a5c3be1e7129e80099dd68a;hp=6df8f419b13acad02fb3f3cb7b36f17c0fdeafc7;hpb=1cb9fc7fb4cfc919cc7880d0af3a66a2f7f107cf;p=ext%2Fsubsurface.git diff --git a/gtk-gui.c b/gtk-gui.c index 6df8f41..f171203 100644 --- a/gtk-gui.c +++ b/gtk-gui.c @@ -22,7 +22,6 @@ GtkWidget *error_label; GtkWidget *vpane, *hpane; int error_count; -#define DIVELIST_DEFAULT_FONT "Sans 8" const char *divelist_font; struct units output_units; @@ -162,7 +161,7 @@ static void ask_save_changes() dialog = gtk_dialog_new_with_buttons("Save Changes?", GTK_WINDOW(main_window), GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT, GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, + GTK_STOCK_NO, GTK_RESPONSE_NO, NULL); content = gtk_dialog_get_content_area (GTK_DIALOG (dialog)); label = gtk_label_new ("You have unsaved changes\nWould you like to save those before exiting the program?"); @@ -202,17 +201,25 @@ static void quit(GtkWidget *w, gpointer data) } GtkTreeViewColumn *tree_view_column(GtkWidget *tree_view, int index, const char *title, - data_func_t data_func, PangoAlignment align, gboolean visible) + data_func_t data_func, unsigned int flags) { GtkCellRenderer *renderer; GtkTreeViewColumn *col; double xalign = 0.0; /* left as default */ + PangoAlignment align; + gboolean visible; + + align = (flags & ALIGN_LEFT) ? PANGO_ALIGN_LEFT : + (flags & ALIGN_RIGHT) ? PANGO_ALIGN_RIGHT : + PANGO_ALIGN_CENTER; + visible = !(flags & INVISIBLE); renderer = gtk_cell_renderer_text_new(); col = gtk_tree_view_column_new(); gtk_tree_view_column_set_title(col, title); - gtk_tree_view_column_set_sort_column_id(col, index); + if (!(flags & UNSORTABLE)) + gtk_tree_view_column_set_sort_column_id(col, index); gtk_tree_view_column_set_resizable(col, TRUE); gtk_tree_view_column_pack_start(col, renderer, TRUE); if (data_func) @@ -515,11 +522,7 @@ static void about_dialog(GtkWidget *w, gpointer data) GdkPixbuf *logo = NULL; if (need_icon) { -#if defined __linux__ || defined __APPLE__ - GtkWidget *image = gtk_image_new_from_file("subsurface.svg"); -#elif defined WIN32 - GtkWidget *image = gtk_image_new_from_file("subsurface.ico"); -#endif + GtkWidget *image = gtk_image_new_from_file(subsurface_icon_name()); if (image) { logo = gtk_image_get_pixbuf(GTK_IMAGE(image)); @@ -677,9 +680,6 @@ void init_ui(int *argcp, char ***argvp) divelist_font = subsurface_get_conf("divelist_font", PREF_STRING); - if (!divelist_font) - divelist_font = DIVELIST_DEFAULT_FONT; - error_info_bar = NULL; win = gtk_window_new(GTK_WINDOW_TOPLEVEL); g_set_application_name ("subsurface"); @@ -695,11 +695,7 @@ void init_ui(int *argcp, char ***argvp) } } if (need_icon) -#if defined __linux__ || defined __APPLE__ - gtk_window_set_icon_from_file(GTK_WINDOW(win), "subsurface.svg", NULL); -#elif defined WIN32 - gtk_window_set_icon_from_file(GTK_WINDOW(win), "subsurface.ico", NULL); -#endif + gtk_window_set_icon_from_file(GTK_WINDOW(win), subsurface_icon_name(), NULL); g_signal_connect(G_OBJECT(win), "delete-event", G_CALLBACK(on_delete), NULL); g_signal_connect(G_OBJECT(win), "destroy", G_CALLBACK(on_destroy), NULL); main_window = win; @@ -709,7 +705,8 @@ void init_ui(int *argcp, char ***argvp) main_vbox = vbox; menubar = get_menubar_menu(win); - gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, FALSE, 0); + + subsurface_ui_setup(settings, menubar, vbox); vpane = gtk_vpaned_new(); gtk_box_pack_start(GTK_BOX(vbox), vpane, TRUE, TRUE, 3); @@ -850,7 +847,7 @@ int process_ui_events(void) break; } } - return(ret); + return ret; } @@ -905,7 +902,7 @@ static GtkEntry *dive_computer_device(GtkWidget *vbox) entry = gtk_entry_new(); gtk_container_add(GTK_CONTAINER(frame), entry); - gtk_entry_set_text(GTK_ENTRY(entry), "/dev/ttyUSB0"); + gtk_entry_set_text(GTK_ENTRY(entry), subsurface_USB_name()); return GTK_ENTRY(entry); }