X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin2_src%2FWM%2Fwm.c;h=a8fc96db9c692138b7c8091326cbad8063481021;hb=35580b646a841d59323953f4dfaf47e678dd9d64;hp=9ddff76c3b2e3e79767b7e3ae71aec1e9104faf6;hpb=099719a211c90b88e59e9dc08bcf18ec1a21573d;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin2_src/WM/wm.c b/Usermode/Applications/axwin2_src/WM/wm.c index 9ddff76c..a8fc96db 100644 --- a/Usermode/Applications/axwin2_src/WM/wm.c +++ b/Usermode/Applications/axwin2_src/WM/wm.c @@ -193,44 +193,38 @@ void WM_UpdateDimensions(tElement *Element, int Pass) // Pass 2 - Set sizes and recurse for( child = Element->FirstChild; child; child = child->NextSibling ) { - // Cross Size - if( child->FixedCross ) { - if( Element->Flags & ELEFLAG_VERTICAL ) - child->CachedW = child->FixedCross; - else - child->CachedH = child->FixedCross; - } - else { - int cross; - _SysDebug("%p,%p ->MinCross = %i", Element, child, child->MinCross); - // Expand to fill? - // TODO: Extra flag so options are (Expand, Equal, Wrap) - if( child->Flags & ELEFLAG_NOEXPAND ) - cross = child->MinCross; - else - cross = fullCross; - - _SysDebug("%p,%p - cross = %i", Element, child, cross); - - if( Element->Flags & ELEFLAG_VERTICAL ) - child->CachedW = cross; - else - child->CachedH = cross; - } + int cross, with; - // With size - if( child->FixedWith ) { - if( Element->Flags & ELEFLAG_VERTICAL ) - child->CachedH = child->FixedWith; - else - child->CachedW = child->FixedWith; - } - else { - if( Element->Flags & ELEFLAG_VERTICAL ) - child->CachedH = dynWith; - else - child->CachedW = dynWith; - } + _SysDebug("%p,%p ->MinCross = %i", Element, child, child->MinCross); + + + // --- Cross Size --- + if( child->FixedCross ) + cross = child->FixedCross; + // Expand to fill? + // TODO: Extra flag so options are (Expand, Equal, Wrap) + else if( child->Flags & ELEFLAG_NOEXPAND ) + cross = child->MinCross; + else + cross = fullCross; + _SysDebug("%p,%p - cross = %i", Element, child, cross); + if( Element->Flags & ELEFLAG_VERTICAL ) + child->CachedW = cross; + else + child->CachedH = cross; + + // --- With Size --- + if( child->FixedWith) + with = child->FixedWith; + else if( child->Flags & ELEFLAG_NOSTRETCH ) + with = child->MinWith; + else + with = dynWith; + _SysDebug("%p,%p - with = %i", Element, child, with); + if( Element->Flags & ELEFLAG_VERTICAL ) + child->CachedH = with; + else + child->CachedW = with; WM_UpdateDimensions(child, 0); }