STR #1007: removed one superfluous ReleaseDC. All demos are running nicely again. I did not see any rendering mistakes.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4569 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
parent
49fb8bc5c0
commit
2036009919
@ -123,6 +123,7 @@ typedef HBITMAP Fl_Offscreen;
|
|||||||
#define fl_create_offscreen(w, h) CreateCompatibleBitmap(fl_gc, w, h)
|
#define fl_create_offscreen(w, h) CreateCompatibleBitmap(fl_gc, w, h)
|
||||||
|
|
||||||
extern FL_EXPORT HDC fl_makeDC(HBITMAP);
|
extern FL_EXPORT HDC fl_makeDC(HBITMAP);
|
||||||
|
|
||||||
#define fl_begin_offscreen(b) \
|
#define fl_begin_offscreen(b) \
|
||||||
HDC _sgc=fl_gc; Window _sw=fl_window; \
|
HDC _sgc=fl_gc; Window _sw=fl_window; \
|
||||||
fl_gc=fl_makeDC(b); int _savedc = SaveDC(fl_gc); fl_window=(HWND)b; fl_push_no_clip()
|
fl_gc=fl_makeDC(b); int _savedc = SaveDC(fl_gc); fl_window=(HWND)b; fl_push_no_clip()
|
||||||
|
17
src/Fl.cxx
17
src/Fl.cxx
@ -862,11 +862,11 @@ void Fl_Window::hide() {
|
|||||||
// Send a message to myself so that I'll get out of the event loop...
|
// Send a message to myself so that I'll get out of the event loop...
|
||||||
PostMessage(ip->xid, WM_APP, 0, 0);
|
PostMessage(ip->xid, WM_APP, 0, 0);
|
||||||
if (ip->private_dc) fl_release_dc(ip->xid, ip->private_dc);
|
if (ip->private_dc) fl_release_dc(ip->xid, ip->private_dc);
|
||||||
if (ip->xid == fl_window && fl_gc) {
|
if (ip->xid == fl_window && fl_gc) {
|
||||||
fl_release_dc(fl_window, fl_gc);
|
fl_release_dc(fl_window, fl_gc);
|
||||||
fl_window = (HWND)-1;
|
fl_window = (HWND)-1;
|
||||||
fl_gc = 0;
|
fl_gc = 0;
|
||||||
}
|
}
|
||||||
#elif defined(__APPLE_QD__)
|
#elif defined(__APPLE_QD__)
|
||||||
if ( ip->xid == fl_window )
|
if ( ip->xid == fl_window )
|
||||||
fl_window = 0;
|
fl_window = 0;
|
||||||
@ -878,7 +878,9 @@ void Fl_Window::hide() {
|
|||||||
|
|
||||||
if (ip->region) XDestroyRegion(ip->region);
|
if (ip->region) XDestroyRegion(ip->region);
|
||||||
|
|
||||||
#ifdef __APPLE_QD__
|
#ifdef WIN32
|
||||||
|
XDestroyWindow(fl_display, ip->xid);
|
||||||
|
#elif defined(__APPLE_QD__)
|
||||||
if ( !parent() ) // don't destroy shared windows!
|
if ( !parent() ) // don't destroy shared windows!
|
||||||
{
|
{
|
||||||
//+ RemoveTrackingHandler( dndTrackingHandler, ip->xid );
|
//+ RemoveTrackingHandler( dndTrackingHandler, ip->xid );
|
||||||
@ -896,9 +898,6 @@ void Fl_Window::hide() {
|
|||||||
# if USE_XFT
|
# if USE_XFT
|
||||||
fl_destroy_xft_draw(ip->xid);
|
fl_destroy_xft_draw(ip->xid);
|
||||||
# endif
|
# endif
|
||||||
#ifdef WIN32
|
|
||||||
fl_release_dc(ip->xid, fl_gc);
|
|
||||||
#endif
|
|
||||||
XDestroyWindow(fl_display, ip->xid);
|
XDestroyWindow(fl_display, ip->xid);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user