Ignore:
Timestamp:
Feb 3, 2002, 11:46:54 AM (24 years ago)
Author:
umoeller
Message:

Buncha fixes.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/helpers/dialog.c

    r132 r136  
    317317        {
    318318            RECTL rcl = {0, 0, 0, 0};
    319             if (pControlDef->szlControlProposed.cx != -1)
     319            if (pControlDef->szlControlProposed.cx > 0)
    320320                rcl.xRight = pControlDef->szlControlProposed.cx;   // V0.9.12 (2001-05-31) [umoeller]
    321321            else
    322322                rcl.xRight = winhQueryScreenCX() * 2 / 3;
    323             if (pControlDef->szlControlProposed.cy != -1)
     323            if (pControlDef->szlControlProposed.cy > 0)
    324324                rcl.yTop = pControlDef->szlControlProposed.cy;   // V0.9.12 (2001-05-31) [umoeller]
    325325            else
     
    451451 *@@changed V0.9.16 (2001-10-15) [umoeller]: fixed ugly group table spacings
    452452 *@@changed V0.9.16 (2001-10-15) [umoeller]: added APIRET
     453 *@@changed V0.9.16 (2002-02-02) [umoeller]: added support for explicit group size
    453454 */
    454455
     
    476477            if (pTableDef->pCtlDef)
    477478            {
    478                 // yes: make this wider
     479                // yes:
     480
     481                // check if maybe an explicit size was specified
     482                // for the group; if that is larger than what
     483                // we've calculated above, use it instead
     484                if (pTableDef->pCtlDef->szlControlProposed.cx > pColumnDef->cpControl.cx)
     485                        // should be -1 for auto-size
     486                    pColumnDef->cpControl.cx = pTableDef->pCtlDef->szlControlProposed.cx;
     487
     488                if (pTableDef->pCtlDef->szlControlProposed.cy > pColumnDef->cpControl.cy)
     489                        // should be -1 for auto-size
     490                    pColumnDef->cpControl.cy = pTableDef->pCtlDef->szlControlProposed.cy;
     491
     492                // in any case, make this wider
    479493                ulXSpacing =    2 * PM_GROUP_SPACING_X;
    480494                ulYSpacing =    // 3 * PM_GROUP_SPACING_X;
     
    490504        SIZEL       szlAuto;
    491505
    492         if (    (pszl->cx == -1)
    493              || (pszl->cy == -1)
     506        if (    (pszl->cx < -1)
     507             && (pszl->cx >= -100)
    494508           )
     509        {
     510            // other negative CX value:
     511            // this is then a percentage of the row width... ignore for now
     512            // V0.9.16 (2002-02-02) [umoeller]
     513            szlAuto.cx = 0;
     514            szlAuto.cy = 0;
     515        }
     516        else if (    (pszl->cx == -1)
     517                  || (pszl->cy == -1)
     518                )
    495519        {
    496520            arc = CalcAutoSize(pControlDef,
     
    501525        if (!arc)
    502526        {
    503             if (pszl->cx == -1)
     527            if (pszl->cx < 0)
    504528                pColumnDef->cpControl.cx = szlAuto.cx;
    505529            else
    506530                pColumnDef->cpControl.cx = pszl->cx;
    507531
    508             if (pszl->cy == -1)
     532            if (pszl->cy < 0)
    509533                pColumnDef->cpControl.cy = szlAuto.cy;
    510534            else
     
    10981122            if (ProcessMode == PROCESS_CALC_SIZES)
    10991123            {
     1124                // all sizes have now been computed:
    11001125                pszlClient->cx += pTableDefThis->cpTable.cx;
    11011126                pszlClient->cy += pTableDefThis->cpTable.cy;
Note: See TracChangeset for help on using the changeset viewer.