313
327
/* p+1 and the extra set_value is required due to a bug in gtk+ */
314
328
adj = GTK_ADJUSTMENT(gtk_adjustment_new(p+1, min, max, 1, 1, 0));
315
gtk_spin_button_set_adjustment(spin, adj);
329
gtk_spin_button_set_adjustment(spin, adj); /* old adjustment is freed automagically */
316
330
gtk_adjustment_set_value(adj, p);
329
343
if(adj->upper != upper || adj->page_size != window) {
330
344
/* pos+1 and the extra set_value is required due to a bug in gtk 1.0.4 */
331
345
adj = GTK_ADJUSTMENT(gtk_adjustment_new(pos+1, 0, upper, 1, window-2, window));
332
gtk_range_set_adjustment(range, adj);
346
gtk_range_set_adjustment(range, adj); /* old adjustment is freed automagically */
333
347
gtk_adjustment_set_value(adj, pos);
334
348
gtk_signal_connect(GTK_OBJECT(adj), "value_changed", GTK_SIGNAL_FUNC(func), NULL);
356
gui_hang_tooltip (GtkWidget *widget, const gchar *text)
358
GtkTooltips *tips = NULL;
361
tips = gtk_tooltips_new();
363
gtk_tooltips_set_tip(tips, widget, text, NULL);
341
366
// Stolen from testgtk.c and modified
343
368
gui_build_option_menu (OptionMenuItem items[],
360
385
menu_item = gtk_radio_menu_item_new_with_label (group, items[i].name);
361
386
gtk_signal_connect (GTK_OBJECT (menu_item), "activate",
362
(GtkSignalFunc) items[i].func, (void*)i);
387
(GtkSignalFunc) items[i].func, GINT_TO_POINTER(i));
363
388
group = gtk_radio_menu_item_group (GTK_RADIO_MENU_ITEM (menu_item));
364
389
gtk_menu_append (GTK_MENU (menu), menu_item);
365
390
if (i == history)
460
aacdialog_close (gpointer data)
462
gtk_widget_destroy(aacdialog);
465
aaccallback((gint)data, aaccallbackdata);
469
gui_yes_no_cancel_modal (GtkWidget *window,
471
void (*callback)(gint, gpointer),
474
GtkWidget *label, *button;
476
g_return_if_fail(aacdialog == NULL);
478
aaccallback = callback;
479
aaccallbackdata = data;
481
aacdialog = gtk_dialog_new();
482
gtk_window_position (GTK_WINDOW(aacdialog), GTK_WIN_POS_CENTER);
483
gtk_window_set_title(GTK_WINDOW(aacdialog), _("Question"));
484
gtk_window_set_modal(GTK_WINDOW(aacdialog), TRUE);
485
gtk_window_set_transient_for(GTK_WINDOW(aacdialog), GTK_WINDOW(window));
487
label = gtk_label_new(text);
488
gtk_container_border_width(GTK_CONTAINER(GTK_DIALOG(aacdialog)->vbox), 10);
489
gtk_box_pack_start(GTK_BOX(GTK_DIALOG(aacdialog)->vbox), label, TRUE, TRUE, 10);
490
gtk_widget_show(label);
492
button = gtk_button_new_with_label (_("Yes"));
493
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
494
gtk_box_pack_start (GTK_BOX (GTK_DIALOG(aacdialog)->action_area), button, TRUE, TRUE, 10);
495
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
496
GTK_SIGNAL_FUNC (aacdialog_close), (gpointer)0);
497
gtk_widget_grab_default (button);
498
gtk_widget_show (button);
500
button = gtk_button_new_with_label (_("No"));
501
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
502
gtk_box_pack_start (GTK_BOX (GTK_DIALOG(aacdialog)->action_area), button, TRUE, TRUE, 10);
503
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
504
GTK_SIGNAL_FUNC (aacdialog_close), (gpointer)1);
505
gtk_widget_show (button);
507
button = gtk_button_new_with_label (_("Cancel"));
508
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
509
gtk_box_pack_start (GTK_BOX (GTK_DIALOG(aacdialog)->action_area), button, TRUE, TRUE, 10);
510
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
511
GTK_SIGNAL_FUNC (aacdialog_close), (gpointer)2);
512
gtk_widget_show (button);
514
gtk_widget_show(aacdialog);
434
518
#ifndef USE_GNOME
436
520
static GtkWidget *cdialog = NULL;