VirtualBox

Ignore:
Timestamp:
Feb 3, 2025 5:49:01 PM (3 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
167313
Message:

FE/Qt: bugref:10814: VBox Manager / Tools pane: Proper way of painting extra-button.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/manager/tools
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsItem.cpp

    r108037 r108039  
    556556    {
    557557        /* Layout hints: */
    558         case ToolsItemData_Margin:  return QApplication::style()->pixelMetric(QStyle::PM_SmallIconSize) / 3 * 2;
     558        case ToolsItemData_Margin: return QApplication::style()->pixelMetric(QStyle::PM_SmallIconSize) / 3 * 2;
    559559        case ToolsItemData_Spacing: return QApplication::style()->pixelMetric(QStyle::PM_SmallIconSize) / 2;
    560560        case ToolsItemData_Padding: return 4;
     561        case ToolsItemData_ExtraButtonWidth: return 10;
    561562
    562563        /* Default: */
     
    883884void UIToolsItem::paintExtraButton(QPainter *pPainter, const QRect &rectangle) const
    884885{
     886    /* Prepare variables: */
     887    const int iPadding = data(ToolsItemData_Padding).toInt();
     888    const int iButtonWidth = data(ToolsItemData_ExtraButtonWidth).toInt();
     889
    885890    /* Save painter: */
    886891    pPainter->save();
     
    894899    /* Prepare button sub-rect: */
    895900    QRect subRect;
    896     subRect.setWidth(rectangle.width() / 6);
     901    subRect.setWidth(iButtonWidth);
    897902    subRect.setHeight(rectangle.height() / 2);
    898903    subRect.moveTopLeft(QPoint(rectangle.right() - subRect.width() - 2,
     
    901906    /* Paint button frame: */
    902907    QPainterPath painterPath;
    903     painterPath.addRoundedRect(subRect, 4, 4);
     908    painterPath.addRoundedRect(subRect, iPadding, iPadding);
    904909    QColor backgroundColor1 = uiCommon().isInDarkMode()
    905910                            ? backgroundColor.lighter(110)
    906                             : backgroundColor.darker(110);
     911                            : backgroundColor.darker(105);
    907912    pPainter->setPen(QPen(backgroundColor1, 2, Qt::SolidLine, Qt::RoundCap));
    908913    pPainter->drawPath(QPainterPathStroker().createStroke(painterPath));
     
    911916    pPainter->setClipPath(painterPath);
    912917    QColor backgroundColor2 = uiCommon().isInDarkMode()
    913                             ? backgroundColor.lighter(140)
     918                            ? backgroundColor.lighter(180)
    914919                            : backgroundColor.darker(140);
    915920    pPainter->fillRect(subRect, backgroundColor2);
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsItem.h

    r108033 r108039  
    174174        ToolsItemData_Spacing,
    175175        ToolsItemData_Padding,
     176        ToolsItemData_ExtraButtonWidth,
    176177    };
    177178
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette