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:
Matthias Melcher 2005-09-15 07:41:17 +00:00
parent 49fb8bc5c0
commit 2036009919
2 changed files with 9 additions and 9 deletions

View File

@ -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()

View File

@ -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