============================================================================
| 606 | |
| 607 | //============================================================================ |
| 608 | void CDockOverlay::paintEvent(QPaintEvent* event) |
| 609 | { |
| 610 | Q_UNUSED(event); |
| 611 | |
| 612 | // Draw rect based on location |
| 613 | if (!d->DropPreviewEnabled) |
| 614 | { |
| 615 | d->DropAreaRect = QRect(); |
| 616 | return; |
| 617 | } |
| 618 | |
| 619 | QRect r = rect(); |
| 620 | const DockWidgetArea da = dropAreaUnderCursor(); |
| 621 | double Factor = (CDockOverlay::ModeContainerOverlay == d->Mode) ? |
| 622 | 3 : 2; |
| 623 | |
| 624 | switch (da) |
| 625 | { |
| 626 | case TopDockWidgetArea: r.setHeight(r.height() / Factor); break; |
| 627 | case RightDockWidgetArea: r.setX(r.width() * (1 - 1 / Factor)); break; |
| 628 | case BottomDockWidgetArea: r.setY(r.height() * (1 - 1 / Factor)); break; |
| 629 | case LeftDockWidgetArea: r.setWidth(r.width() / Factor); break; |
| 630 | case CenterDockWidgetArea: r = rect();break; |
| 631 | case LeftAutoHideArea: r.setWidth(d->sideBarOverlaySize(SideBarLeft)); break; |
| 632 | case RightAutoHideArea: r.setX(r.width() - d->sideBarOverlaySize(SideBarRight)); break; |
| 633 | case TopAutoHideArea: r.setHeight(d->sideBarOverlaySize(SideBarTop)); break; |
| 634 | case BottomAutoHideArea: r.setY(r.height() - d->sideBarOverlaySize(SideBarBottom)); break; |
| 635 | default: return; |
| 636 | } |
| 637 | |
| 638 | QPainter painter(this); |
| 639 | QColor Color = palette().color(QPalette::Active, QPalette::Highlight); |
| 640 | QPen Pen = painter.pen(); |
| 641 | Pen.setColor(Color.darker(120)); |
| 642 | Pen.setStyle(Qt::SolidLine); |
| 643 | Pen.setWidth(1); |
| 644 | Pen.setCosmetic(true); |
| 645 | painter.setPen(Pen); |
| 646 | Color = Color.lighter(130); |
| 647 | Color.setAlpha(64); |
| 648 | painter.setBrush(Color); |
| 649 | painter.drawRect(r.adjusted(0, 0, -1, -1)); |
| 650 | d->DropAreaRect = r; |
| 651 | } |
| 652 | |
| 653 | |
| 654 | //============================================================================ |
nothing calls this directly
no test coverage detected