Changeset 104929 in vbox
- Timestamp:
- Jun 14, 2024 4:13:09 PM (3 months ago)
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src/widgets
- Files:
-
- 2 edited
-
UIMediumSizeEditor.cpp (modified) (5 diffs)
-
UIMediumSizeEditor.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIMediumSizeEditor.cpp
r104928 r104929 27 27 28 28 /* Qt includes: */ 29 #include <QAccessibleWidget> 29 30 #include <QGridLayout> 30 31 #include <QLabel> … … 43 44 44 45 46 /** QAccessibleWidget extension used as an accessibility interface for UIMediumSizeSlider. */ 47 class UIAccessibilityInterfaceForUIMediumSizeSlider : public QAccessibleWidget 48 { 49 public: 50 51 /** Returns an accessibility interface for passed @a strClassname and @a pObject. */ 52 static QAccessibleInterface *pFactory(const QString &strClassname, QObject *pObject) 53 { 54 /* Creating QIRichTextLabel accessibility interface: */ 55 if (pObject && strClassname == QLatin1String("UIMediumSizeSlider")) 56 return new UIAccessibilityInterfaceForUIMediumSizeSlider(qobject_cast<QWidget*>(pObject)); 57 58 /* Null by default: */ 59 return 0; 60 } 61 62 /** Constructs an accessibility interface passing @a pWidget to the base-class. */ 63 UIAccessibilityInterfaceForUIMediumSizeSlider(QWidget *pWidget) 64 : QAccessibleWidget(pWidget, QAccessible::Slider) 65 {} 66 67 /** Returns a text for the passed @a enmTextRole. */ 68 virtual QString text(QAccessible::Text enmTextRole) const RT_OVERRIDE 69 { 70 /* Make sure label still alive: */ 71 AssertPtrReturn(slider(), QString()); 72 73 /* Non-macOS screen-readers using QAccessible::Value for slider: */ 74 if (enmTextRole == QAccessible::Value) 75 return slider()->scaledValueToString(); 76 77 /* Call to base-class: */ 78 return QAccessibleWidget::text(enmTextRole); 79 } 80 81 private: 82 83 /** Returns corresponding UIMediumSizeSlider. */ 84 UIMediumSizeSlider *slider() const 85 { 86 return qobject_cast<UIMediumSizeSlider*>(widget()); 87 } 88 }; 89 90 45 91 /********************************************************************************************************************************* 46 92 * Class UIMediumSizeSlider implementation. * … … 54 100 , m_uScaledValue(0) 55 101 { 102 /* Install UIMediumSizeSlider accessibility interface factory: */ 103 QAccessible::installFactory(UIAccessibilityInterfaceForUIMediumSizeSlider::pFactory); 104 56 105 /* Configure basic properties: */ 57 106 setFocusPolicy(Qt::StrongFocus); … … 100 149 /* Call to base-class: */ 101 150 QSlider::setValue(sizeMBToSlider(m_uScaledValue, m_iSliderScale)); 151 } 152 153 QString UIMediumSizeSlider::scaledValueToString() 154 { 155 return UITranslator::formatSize(m_uScaledValue); 102 156 } 103 157 … … 345 399 void UIMediumSizeEditor::updateSizeToolTips(qulonglong uSize) 346 400 { 347 const QString strToolTip = tr(" <nobr>%1 (%2 B)</nobr>").arg(UITranslator::formatSize(uSize)).arg(uSize);401 const QString strToolTip = tr("%1 (%2 B)").arg(UITranslator::formatSize(uSize)).arg(uSize); 348 402 m_pSlider->setToolTip(strToolTip); 349 403 m_pEditor->setToolTip(strToolTip); -
trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIMediumSizeEditor.h
r104928 r104929 68 68 /** Defines scaled @a uValue. */ 69 69 void setScaledValue(qulonglong uValue); 70 71 /** Returns scaled value in readable format. */ 72 QString scaledValueToString(); 70 73 71 74 private slots:
Note:
See TracChangeset
for help on using the changeset viewer.

