-static void unit_dialog(GtkWidget *w, gpointer data)
-{
- int result;
- GtkWidget *dialog;
-
- menu_units = output_units;
-
- dialog = gtk_dialog_new_with_buttons("Units",
- GTK_WINDOW(main_window),
- GTK_DIALOG_DESTROY_WITH_PARENT,
- GTK_STOCK_OK, GTK_RESPONSE_ACCEPT,
- GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT,
- NULL);
-
- create_radio(dialog, "Depth:",
- "Meter", set_meter, (output_units.length == METERS),
- "Feet", set_feet, (output_units.length == FEET),
- NULL);
-
- create_radio(dialog, "Pressure:",
- "Bar", set_bar, (output_units.pressure == BAR),
- "PSI", set_psi, (output_units.pressure == PSI),
- NULL);
-
- create_radio(dialog, "Volume:",
- "Liter", set_liter, (output_units.volume == LITER),
- "CuFt", set_cuft, (output_units.volume == CUFT),
- NULL);
-
- create_radio(dialog, "Temperature:",
- "Celsius", set_celsius, (output_units.temperature == CELSIUS),
- "Fahrenheit", set_fahrenheit, (output_units.temperature == FAHRENHEIT),
- NULL);
-
- gtk_widget_show_all(dialog);
- result = gtk_dialog_run(GTK_DIALOG(dialog));
- if (result == GTK_RESPONSE_ACCEPT) {
- output_units = menu_units;
- update_dive_list_units(&dive_list);
- repaint_dive();
- gconf_client_set_bool(gconf, GCONF_NAME(feet), output_units.length == FEET, NULL);
- gconf_client_set_bool(gconf, GCONF_NAME(psi), output_units.pressure == PSI, NULL);
- gconf_client_set_bool(gconf, GCONF_NAME(cuft), output_units.volume == CUFT, NULL);
- gconf_client_set_bool(gconf, GCONF_NAME(fahrenheit), output_units.temperature == FAHRENHEIT, NULL);