Changeset 8 for trunk/src/widgets/qsplitter.cpp
- Timestamp:
- Nov 16, 2005, 8:36:46 PM (20 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/widgets/qsplitter.cpp
r7 r8 507 507 { 508 508 QPainter paint( this ); 509 paint.setPen( gray);509 paint.setPen( NoPen ); 510 510 paint.setBrush( gray ); 511 511 paint.setRasterOp( XorROP ); … … 513 513 const int rBord = 3; // customizable? 514 514 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 } 515 537 if ( orient == Horizontal ) { 516 538 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() ); 519 540 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() ); 521 542 } else { 522 543 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 ); 525 545 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 ); 527 547 } 528 548 opaqueOldPos = p;
Note:
See TracChangeset
for help on using the changeset viewer.