Changeset 108121 in vbox
- Timestamp:
- Feb 9, 2025 5:15:11 PM (12 days ago)
- svn:sync-xref-src-repo-rev:
- 167420
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsModel.cpp
r108120 r108121 419 419 if (QGraphicsItem *pItemUnderMouse = itemAt(scenePos)) 420 420 { 421 /* Which button it was? */ 422 switch (pMouseEvent->button()) 421 /* Which item we just clicked? */ 422 UIToolsItem *pClickedItem = qgraphicsitem_cast<UIToolsItem*>(pItemUnderMouse); 423 if (pClickedItem) 423 424 { 424 /* Both buttons: */ 425 case Qt::LeftButton: 426 case Qt::RightButton: 425 /* Do we have extra-button? */ 426 if (pClickedItem->hasExtraButton()) 427 427 { 428 /* Which item we just clicked?*/429 UIToolsItem *pClickedItem = qgraphicsitem_cast<UIToolsItem*>(pItemUnderMouse);430 if (pClickedItem )428 /* Check if clicked place is within extra-button geometry: */ 429 const QPointF itemPos = pClickedItem->mapFromParent(scenePos); 430 if (pClickedItem->extraButtonRect().contains(itemPos.toPoint())) 431 431 { 432 /* Do we have extra-button?*/433 if (pClickedItem->hasExtraButton())432 /* Handle known button types: */ 433 switch (pClickedItem->itemType()) 434 434 { 435 /* Check if clicked place is within extra-button geometry: */ 436 const QPointF itemPos = pClickedItem->mapFromParent(scenePos); 437 if (pClickedItem->extraButtonRect().contains(itemPos.toPoint())) 435 case UIToolType_Home: 438 436 { 439 /* Handle known button types: */ 440 switch (pClickedItem->itemType()) 441 { 442 case UIToolType_Home: 443 { 444 /* Toggle the button: */ 445 m_fShowItemNames = !m_fShowItemNames; 446 /* Update geometry for all the items: */ 447 foreach (UIToolsItem *pItem, m_items) 448 pItem->updateGeometry(); 449 /* Recalculate layout: */ 450 updateLayout(); 451 break; 452 } 453 default: 454 break; 455 } 437 /* Toggle the button: */ 438 m_fShowItemNames = !m_fShowItemNames; 439 /* Update geometry for all the items: */ 440 foreach (UIToolsItem *pItem, m_items) 441 pItem->updateGeometry(); 442 /* Recalculate layout: */ 443 updateLayout(); 444 break; 456 445 } 457 } 458 459 /* Make clicked item the current one: */ 460 if (pClickedItem->isEnabled()) 461 { 462 setCurrentItem(pClickedItem); 463 /* Close the widget in popup mode only: */ 464 if (tools()->isPopup()) 465 close(); 466 return true; 446 default: 447 break; 467 448 } 468 449 } 469 break;470 450 } 471 default: 472 break; 451 452 /* Make clicked item the current one: */ 453 if (pClickedItem->isEnabled()) 454 { 455 setCurrentItem(pClickedItem); 456 /* Close the widget in popup mode only: */ 457 if (tools()->isPopup()) 458 close(); 459 return true; 460 } 473 461 } 474 462 }
Note:
See TracChangeset
for help on using the changeset viewer.