Ignore:
Timestamp:
Nov 16, 2005, 8:36:46 PM (20 years ago)
Author:
dmik
Message:

Transferred Qt for OS/2 version 3.3.1-rc5 sources from the CVS

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/widgets/qsplitter.cpp

    r7 r8  
    507507{
    508508    QPainter paint( this );
    509     paint.setPen( gray );
     509    paint.setPen( NoPen );
    510510    paint.setBrush( gray );
    511511    paint.setRasterOp( XorROP );
     
    513513    const int rBord = 3; // customizable?
    514514    int hw = handleWidth();
     515
     516    int p1, p2, op1, op2, tmp;
     517    if ( p >= 0 ) {
     518        p1 = p + hw / 2 - rBord;
     519        p2 = p1 + 2 * rBord - 1;
     520    }
     521    if ( opaqueOldPos >= 0 ) {
     522        op1 = opaqueOldPos + hw / 2 - rBord;
     523        op2 = op1 + 2 * rBord - 1;
     524        // exclude overlapping area to avoid flicker
     525        if ( p >= 0 ) {
     526            if ( p2 >= op1 && p2 <= op2 ) {
     527                tmp = op1;
     528                op1 = p2 + 1;
     529                p2 = tmp - 1;
     530            } else if ( p1 >= op1 && p1 <= op2 ) {
     531                tmp = op2;
     532                op2 = p1 - 1;
     533                p1 = tmp + 1;
     534            }
     535        }
     536    }
    515537    if ( orient == Horizontal ) {
    516538        if ( opaqueOldPos >= 0 )
    517             paint.drawRect( opaqueOldPos + hw / 2 - rBord, r.y(),
    518                             2 * rBord, r.height() );
     539            paint.drawRect( op1, r.y(), op2 - op1 + 1, r.height() );
    519540        if ( p >= 0 )
    520             paint.drawRect( p + hw / 2 - rBord, r.y(), 2 * rBord, r.height() );
     541            paint.drawRect( p1, r.y(), p2 - p1 + 1, r.height() );
    521542    } else {
    522543        if ( opaqueOldPos >= 0 )
    523             paint.drawRect( r.x(), opaqueOldPos + hw / 2 - rBord,
    524                             r.width(), 2 * rBord );
     544            paint.drawRect( r.x(), op1, r.width(), op2 - op1 + 1 );
    525545        if ( p >= 0 )
    526             paint.drawRect( r.x(), p + hw / 2 - rBord, r.width(), 2 * rBord );
     546            paint.drawRect( r.x(), p1, r.width(), p2 - p1 + 1 );
    527547    }
    528548    opaqueOldPos = p;
Note: See TracChangeset for help on using the changeset viewer.