comparison gtk3/dw.c @ 1918:1814a6577a5f

Import the same changes into the GTK3 MDI code... which is now disabled by default.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Wed, 28 Sep 2016 22:58:41 +0000
parents 933b5f7005a9
children 78a65391dbcb
comparison
equal deleted inserted replaced
1917:933b5f7005a9 1918:1814a6577a5f
231 #define DW_TOP 0.0f 231 #define DW_TOP 0.0f
232 #define DW_BOTTOM 1.0f 232 #define DW_BOTTOM 1.0f
233 233
234 #ifdef DW_INCLUDE_DEPRECATED 234 #ifdef DW_INCLUDE_DEPRECATED
235 /* MDI Support Code */ 235 /* MDI Support Code */
236 static void _dw_override_color(GtkWidget *widget, const char *element, GdkRGBA *color);
237 static void _dw_override_font(GtkWidget *widget, const char *font);
236 #define GTK_MDI(obj) G_TYPE_CHECK_INSTANCE_CAST (obj, gtk_mdi_get_type (), GtkMdi) 238 #define GTK_MDI(obj) G_TYPE_CHECK_INSTANCE_CAST (obj, gtk_mdi_get_type (), GtkMdi)
237 #define GTK_MDI_CLASS(klass) G_TYPE_CHECK_CLASS_CAST (klass, gtk_mdi_get_type (), GtkMdiClass) 239 #define GTK_MDI_CLASS(klass) G_TYPE_CHECK_CLASS_CAST (klass, gtk_mdi_get_type (), GtkMdiClass)
238 #define GTK_IS_MDI(obj) G_TYPE_CHECK_INSTANCE_TYPE (obj, gtk_mdi_get_type ()) 240 #define GTK_IS_MDI(obj) G_TYPE_CHECK_INSTANCE_TYPE (obj, gtk_mdi_get_type ())
239 241
240 typedef struct _GtkMdi GtkMdi; 242 typedef struct _GtkMdi GtkMdi;
377 GtkWidget *mdi; 379 GtkWidget *mdi;
378 GdkRGBA background; 380 GdkRGBA background;
379 381
380 mdi = GTK_WIDGET (g_object_new (gtk_mdi_get_type (), NULL)); 382 mdi = GTK_WIDGET (g_object_new (gtk_mdi_get_type (), NULL));
381 gdk_rgba_parse (&background, GTK_MDI_BACKGROUND); 383 gdk_rgba_parse (&background, GTK_MDI_BACKGROUND);
382 gtk_widget_override_background_color (mdi, GTK_STATE_FLAG_NORMAL, &background); 384 _dw_override_color (mdi, "background-color", &background);
383 385
384 return mdi; 386 return mdi;
385 } 387 }
386 388
387 static void gtk_mdi_put(GtkMdi *mdi, GtkWidget *child_widget, gint x, gint y, GtkWidget *label) 389 static void gtk_mdi_put(GtkMdi *mdi, GtkWidget *child_widget, gint x, gint y, GtkWidget *label)
417 gtk_widget_set_events (button[i], GDK_BUTTON_PRESS_MASK); 419 gtk_widget_set_events (button[i], GDK_BUTTON_PRESS_MASK);
418 } 420 }
419 421
420 gdk_rgba_parse (&color, GTK_MDI_LABEL_BACKGROUND); 422 gdk_rgba_parse (&color, GTK_MDI_LABEL_BACKGROUND);
421 423
422 gtk_widget_override_background_color (top_event_box, GTK_STATE_FLAG_NORMAL, &color); 424 _dw_override_color (top_event_box, "background-color", &color);
423 gtk_widget_override_background_color (bottom_event_box, GTK_STATE_FLAG_NORMAL, &color); 425 _dw_override_color (bottom_event_box, "background-color", &color);
424 gtk_widget_override_background_color (child_box, GTK_STATE_FLAG_NORMAL, &color); 426 _dw_override_color (child_box, "background-color", &color);
425 for (j = 0; j < 3; j++) 427 for (j = 0; j < 3; j++)
426 { 428 {
427 gtk_widget_override_background_color (button[j], GTK_STATE_FLAG_NORMAL, &color); 429 _dw_override_color (button[j], "background-color", &color);
428 gtk_widget_override_background_color (button[j], GTK_STATE_FLAG_ACTIVE, &color); 430 _dw_override_color (button[j], "background-color", &color);
429 } 431 }
430 gdk_rgba_parse (&color, GTK_MDI_LABEL_FOREGROUND); 432 gdk_rgba_parse (&color, GTK_MDI_LABEL_FOREGROUND);
431 gtk_widget_override_color (label, GTK_STATE_FLAG_NORMAL, &color); 433 _dw_override_color (label, "color", &color);
432 gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); 434 #if GTK_CHECK_VERSION(3,16,0)
435 gtk_label_set_xalign(GTK_LABEL(label), 0.0f);
436 gtk_label_set_yalign(GTK_LABEL(label), 0.5f);
437 #else
438 gtk_misc_set_alignment(GTK_MISC(label), 0.0f, 0.5f);
439 #endif
433 440
434 gtk_container_add (GTK_CONTAINER (top_event_box), label); 441 gtk_container_add (GTK_CONTAINER (top_event_box), label);
435 gtk_container_add (GTK_CONTAINER (child_widget_box), child_widget); 442 gtk_container_add (GTK_CONTAINER (child_widget_box), child_widget);
436 gtk_widget_set_size_request (bottom_event_box, 2, 2); 443 gtk_widget_set_size_request (bottom_event_box, 2, 2);
437 444