From 8997131377a02004503c40ba2a96e6937bfd39c1 Mon Sep 17 00:00:00 2001 From: Manolo Gouy Date: Wed, 27 Aug 2014 11:55:57 +0000 Subject: Added the Fl_Shaped_Window class to support windows of arbitrary shapes. The new class is fully Doxygen-documented. Added an example program (example/shapedwindow.cxx) that exercises the new class. Modified all IDE-supporting files accordingly. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10255 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- src/Fl_x.cxx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/Fl_x.cxx') diff --git a/src/Fl_x.cxx b/src/Fl_x.cxx index e071b8d83..b3045c8a6 100644 --- a/src/Fl_x.cxx +++ b/src/Fl_x.cxx @@ -35,6 +35,7 @@ # include # include # include +# include # include # include # include @@ -2511,6 +2512,9 @@ void Fl_X::make_xid(Fl_Window* win, XVisualInfo *visual, Colormap colormap) } #endif + if (win->type() == FL_SHAPED_WINDOW) { + ((Fl_Shaped_Window*)win)->combine_mask(); + } XMapWindow(fl_display, xp->xid); if (showit) { win->set_visible(); @@ -2836,7 +2840,7 @@ void Fl_Window::show() { if (!shown()) { fl_open_display(); // Don't set background pixel for double-buffered windows... - if (type() == FL_WINDOW && can_boxcheat(box())) { + if (type() != FL_DOUBLE_WINDOW && can_boxcheat(box())) { fl_background_pixel = int(fl_xpixel(color())); } Fl_X::make_xid(this); -- cgit v1.2.3