X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=gtk%2Fxoptions.c;h=a13ceff75323bc8a6860dc29ad9c5a3bbcfea264;hb=2c75a093de6ecd222c1586b9ff0ec554666a80fa;hp=8df9c44a87fae104e650bc0ab5fba720ece9c6ab;hpb=61d26f9ca11d35ef67bc1eab793159e7e8bfd331;p=xboard.git diff --git a/gtk/xoptions.c b/gtk/xoptions.c index 8df9c44..a13ceff 100644 --- a/gtk/xoptions.c +++ b/gtk/xoptions.c @@ -1025,6 +1025,7 @@ GraphEventProc(GtkWidget *widget, GdkEvent *event, gpointer gdata) case GDK_SCROLL: if(sevent->direction == GDK_SCROLL_UP) button = 4; if(sevent->direction == GDK_SCROLL_DOWN) button = 5; + w = h = 0; // to keep Clang happy break; case GDK_MOTION_NOTIFY: f = 0; @@ -1523,12 +1524,12 @@ if(appData.debugMode) printf("n=%d, h=%d, w=%d\n",n,height,width); /* Left Justify */ gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); SetWidgetFont(label, option[i].font); + gtk_widget_set_size_request(label, option[i].max ? option[i].max : -1, -1); if(option[i].min & BORDER) { GtkWidget *frame = gtk_frame_new(NULL); gtk_container_add(GTK_CONTAINER(frame), label); label = frame; } - gtk_widget_set_size_request(label, option[i].max ? option[i].max : -1, -1); if(option[i].target || dlgNr != ErrorDlg && option[i].name) { // allow user to specify event handler for button presses button = gtk_event_box_new(); gtk_container_add(GTK_CONTAINER(button), label); @@ -1552,7 +1553,11 @@ if(appData.debugMode) printf("n=%d, h=%d, w=%d\n",n,height,width); break; } else if(!strcmp(option[i].name, "D")) { - option[i].handle = (void *) (button = gtk_color_button_new()); + GdkColor color; + char *name; + GetWidgetText(&option[i-5], &name); + gdk_color_parse(name, &color); + option[i].handle = (void *) (button = gtk_color_button_new_with_color(&color)); } else button = gtk_button_new_with_label (_(option[i].name)); SetWidgetFont(gtk_bin_get_child(GTK_BIN(button)), option[i].font); @@ -1665,10 +1670,6 @@ if(appData.debugMode) printf("n=%d, h=%d, w=%d\n",n,height,width); case Graph: option[i].handle = (void*) (graph = gtk_drawing_area_new()); gtk_widget_set_size_request(graph, option[i].max, option[i].value); - if(0){ GtkAllocation a; - a.x = 0; a.y = 0; a.width = option[i].max, a.height = option[i].value; - gtk_widget_set_allocation(graph, &a); - } g_signal_connect (graph, "expose-event", G_CALLBACK (GraphEventProc), (gpointer) &option[i]); gtk_widget_add_events(GTK_WIDGET(graph), GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_POINTER_MOTION_MASK); g_signal_connect (graph, "button-press-event", G_CALLBACK (GraphEventProc), (gpointer) &option[i]); @@ -1825,7 +1826,7 @@ if(appData.debugMode) printf("n=%d, h=%d, w=%d\n",n,height,width); gtk_window_resize(GTK_WINDOW(dialog), wp[dlgNr]->width, wp[dlgNr]->height); } - for(i=0; option[i].type != EndMark; i++) if(option[i].type == Graph) + for(i=0; option[i].type != EndMark; i++) if(option[i].type == Graph || dlgNr == BoardWindow && option[i].handle) gtk_widget_set_size_request(option[i].handle, -1, -1); // remove size requests after realization, so user can shrink return 1; // tells caller he must do initialization (e.g. add specific event handlers)