RBBS_FIXEDSIZE should not affect _AdjustBands (found by Mike McCormack

in WinZip).
This commit is contained in:
Guy L. Albertelli 2001-07-02 17:59:11 +00:00 committed by Alexandre Julliard
parent aa62953b31
commit 6ae29d6ac0
1 changed files with 8 additions and 8 deletions

View File

@ -18,7 +18,7 @@
#define PROBLEM2 0 #define PROBLEM2 0
/* /*
* Rebar control rev 7d * Rebar control rev 7e
* *
* Copyright 1998, 1999 Eric Kohl * Copyright 1998, 1999 Eric Kohl
* *
@ -78,6 +78,9 @@
* rows, and fills in the background color for each band. The gripper, * rows, and fills in the background color for each band. The gripper,
* image, and text for each band is drawn by the WM_PAINT process. Change * image, and text for each band is drawn by the WM_PAINT process. Change
* this code to match. * this code to match.
* rev 7e
* 16. RBBS_FIXEDSIZE should not affect _AdjustBands. (Found by Mike McCormack
* in WinZip - Thanks!)
* *
* *
* Still to do: * Still to do:
@ -594,8 +597,7 @@ REBAR_AdjustBands (REBAR_INFO *infoPtr, UINT rowstart, UINT rowend,
/* ******************* Phase 1 ************************ */ /* ******************* Phase 1 ************************ */
/* Alg: */ /* Alg: */
/* For each visible band with valid child and not */ /* For each visible band with valid child */
/* RBBS_FIXEDSIZE: */
/* a. inflate band till either all extra space used */ /* a. inflate band till either all extra space used */
/* or band's ->ccx reached. */ /* or band's ->ccx reached. */
/* If any band modified, add any space left to last band */ /* If any band modified, add any space left to last band */
@ -619,9 +621,7 @@ REBAR_AdjustBands (REBAR_INFO *infoPtr, UINT rowstart, UINT rowend,
lpBand->rcBand.left = x + xsep; lpBand->rcBand.left = x + xsep;
/* compute new width */ /* compute new width */
if (!(lpBand->fStyle & RBBS_FIXEDSIZE) && if (lpBand->hwndChild && extra) {
lpBand->hwndChild &&
extra) {
/* set to the "current" band size less the header */ /* set to the "current" band size less the header */
fudge = lpBand->ccx; fudge = lpBand->ccx;
last_adjusted = i; last_adjusted = i;
@ -687,7 +687,7 @@ REBAR_AdjustBands (REBAR_INFO *infoPtr, UINT rowstart, UINT rowend,
/* ******************* Phase 2 ************************ */ /* ******************* Phase 2 ************************ */
/* Alg: */ /* Alg: */
/* Find first visible band not RBBS_FIXEDSIZE, put all */ /* Find first visible band, put all */
/* extra space there. */ /* extra space there. */
/* */ /* */
/* ****************************************************** */ /* ****************************************************** */
@ -706,7 +706,7 @@ REBAR_AdjustBands (REBAR_INFO *infoPtr, UINT rowstart, UINT rowend,
lpBand->rcBand.left = x + xsep; lpBand->rcBand.left = x + xsep;
/* compute new width */ /* compute new width */
if (!(lpBand->fStyle & RBBS_FIXEDSIZE) && extra) { if (extra) {
curwidth += extra; curwidth += extra;
extra = 0; extra = 0;
} }