Changeset 4135

Show
Ignore:
Timestamp:
2006年08月05日 20時29分29秒 (2 years ago)
Author:
yamazaki
Message:

Change the re-drawing rectangle.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/src/ChangeLog.Meadow

    r4134 r4135  
     12006-08-05  YAMAZAKI Katsuhiro <yamazaki-k@mwe.biglobe.ne.jp> 
     2 
     3        * mw32fns.c (mw32_WndProc<WM_ERASEBKGND>): Change the retun value 
     4        from `0' to `1', because when the application erases the background, 
     5        it returns to the not `0' values. 
     6        Change the function for getting erase rectangle from GetClientRect 
     7        to GetUpdateRect. Refer to w32fns.c. 
     8        (mw32_WndProc<WM_PAINT>): Change the function for getting drawing 
     9        rectangle from GetClientRect to BeginPaint. 
     10        Call mw32_clear_native_frame_area when ps.fErase is `t'. 
     11 
    1122006-08-05  MIYOSHI Masanori  <miyoshi@meadowy.org> 
    213 
  • trunk/src/mw32fns.c

    r4117 r4135  
    19101910      f->output_data.mw32->hdc_nestlevel = 1; 
    19111911 
    1912       GetClientRect (FRAME_MW32_WINDOW (f), &rect); 
    1913       mw32_clear_native_frame_area (f, rect.left, rect.top, 
    1914                                     rect.right, rect.bottom); 
     1912      if (GetUpdateRect (FRAME_MW32_WINDOW (f), &rect, FALSE)) 
     1913       mw32_clear_native_frame_area (f, rect.left, rect.top, 
     1914                                      rect.right, rect.bottom); 
    19151915 
    19161916      f->output_data.mw32->hdc = ohdc; 
    19171917      f->output_data.mw32->hdc_nestlevel = orefcount; 
    19181918 
    1919       return 0
     1919      return 1
    19201920    } 
    19211921 
     
    19341934        { 
    19351935          PAINTSTRUCT ps; 
    1936           HDC hdc; 
    1937           RECT rc; 
    19381936 
    19391937          /* Avoid conflicting with drawing in main thread. */ 
     
    19451943            { 
    19461944              BeginPaint (FRAME_MW32_WINDOW (f), &ps); 
    1947               hdc = GET_FRAME_HDC (f); 
    1948               mw32_setup_default_hdc (hdc); 
    1949  
    1950               GetClientRect (FRAME_MW32_WINDOW (f), &rc); 
     1945              GET_FRAME_HDC (f); 
     1946 
     1947              if (ps.fErase) 
     1948                mw32_clear_native_frame_area (f, 
     1949                                              ps.rcPaint.left, 
     1950                                              ps.rcPaint.top, 
     1951                                              ps.rcPaint.right, 
     1952                                              ps.rcPaint.bottom); 
    19511953 
    19521954              expose_frame (f, 
    1953                             rc.left, rc.top, 
    1954                             rc.right - rc.left, 
    1955                             rc.bottom - rc.top); 
     1955                            ps.rcPaint.left, ps.rcPaint.top, 
     1956                            ps.rcPaint.right - ps.rcPaint.left, 
     1957                            ps.rcPaint.bottom - ps.rcPaint.top); 
    19561958 
    19571959              RELEASE_FRAME_HDC (f);