Changeset 108061 in vbox for trunk/src/VBox/Frontends
- Timestamp:
- Feb 4, 2025 2:07:59 PM (3 months ago)
- svn:sync-xref-src-repo-rev:
- 167341
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src/manager/tools
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsItem.cpp
r108042 r108061 899 899 900 900 /* Prepare button sub-rect: */ 901 QRect subRect; 902 subRect.setWidth(iButtonWidth); 903 subRect.setHeight(rectangle.height() / 2); 904 subRect.moveTopLeft(QPoint(rectangle.right() - subRect.width() - 2, 905 rectangle.bottom() - 3 * rectangle.height() / 4 + 1)); 901 m_extraButtonRect.setWidth(iButtonWidth); 902 m_extraButtonRect.setHeight(rectangle.height() / 2); 903 m_extraButtonRect.moveTopLeft(QPoint(rectangle.right() - m_extraButtonRect.width() - 2, 904 rectangle.bottom() - 3 * rectangle.height() / 4 + 1)); 906 905 907 906 /* Paint button frame: */ 908 907 QPainterPath painterPath; 909 painterPath.addRoundedRect( subRect, iPadding, iPadding);908 painterPath.addRoundedRect(m_extraButtonRect, iPadding, iPadding); 910 909 QColor backgroundColor1 = uiCommon().isInDarkMode() 911 910 ? backgroundColor.lighter(110) … … 919 918 ? backgroundColor.lighter(180) 920 919 : backgroundColor.darker(140); 921 pPainter->fillRect( subRect, backgroundColor2);920 pPainter->fillRect(m_extraButtonRect, backgroundColor2); 922 921 923 922 /* Paint arrow: */ 924 923 if (!model()->showItemNames()) 925 924 { 926 pPainter->drawLine(subRect.topLeft() + QPoint(3, 3), QPoint(subRect.right() - 2, subRect.center().y())); 927 pPainter->drawLine(subRect.bottomLeft() + QPoint(3, -3), QPoint(subRect.right() - 2, subRect.center().y())); 925 pPainter->drawLine(m_extraButtonRect.topLeft() + QPoint(3, 3), 926 QPoint(m_extraButtonRect.right() - 2, m_extraButtonRect.center().y())); 927 pPainter->drawLine(m_extraButtonRect.bottomLeft() + QPoint(3, -3), 928 QPoint(m_extraButtonRect.right() - 2, m_extraButtonRect.center().y())); 928 929 } 929 930 else 930 931 { 931 pPainter->drawLine(subRect.topRight() + QPoint(-3, 3), QPoint(subRect.left() + 3, subRect.center().y())); 932 pPainter->drawLine(subRect.bottomRight() + QPoint(-3, -3), QPoint(subRect.left() + 3, subRect.center().y())); 932 pPainter->drawLine(m_extraButtonRect.topRight() + QPoint(-3, 3), 933 QPoint(m_extraButtonRect.left() + 3, m_extraButtonRect.center().y())); 934 pPainter->drawLine(m_extraButtonRect.bottomRight() + QPoint(-3, -3), 935 QPoint(m_extraButtonRect.left() + 3, m_extraButtonRect.center().y())); 933 936 } 934 937 -
trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsItem.h
r108039 r108061 139 139 * @param constraint Brings size constraint. */ 140 140 virtual QSizeF sizeHint(Qt::SizeHint enmWhich, const QSizeF &constraint = QSizeF()) const RT_OVERRIDE; 141 142 /** Returns the extra-button rectangle. */ 143 QRect extraButtonRect() const { return m_extraButtonRect; } 141 144 /** @} */ 142 145 … … 309 312 /** Holds the name size. */ 310 313 QSize m_nameSize; 314 315 /** Holds the extra-button rectangle. */ 316 mutable QRect m_extraButtonRect; 311 317 /** @} */ 312 318 }; -
trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsModel.cpp
r108037 r108061 442 442 if (pClickedItem) 443 443 { 444 /* Toggle the button:*/444 /* Do we have extra-button? */ 445 445 if (pClickedItem->hasExtraButton()) 446 446 { 447 m_fShowItemNames = !m_fShowItemNames; 448 foreach (UIToolsItem *pItem, m_items) 449 pItem->updateGeometry(); 450 updateLayout(); 447 /* Check if clicked place is within extra-button geometry: */ 448 const QPointF itemPos = pClickedItem->mapFromParent(scenePos); 449 if (pClickedItem->extraButtonRect().contains(itemPos.toPoint())) 450 { 451 /* Handle known button types: */ 452 switch (pClickedItem->itemType()) 453 { 454 case UIToolType_Welcome: 455 { 456 /* Toggle the button: */ 457 m_fShowItemNames = !m_fShowItemNames; 458 /* Update geometry for all the items: */ 459 foreach (UIToolsItem *pItem, m_items) 460 pItem->updateGeometry(); 461 /* Recalculate layout: */ 462 updateLayout(); 463 break; 464 } 465 default: 466 break; 467 } 468 } 451 469 } 452 470
Note:
See TracChangeset
for help on using the changeset viewer.