Changeset 53859 in vbox
- Timestamp:
- Jan 19, 2015 3:15:32 PM (10 years ago)
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src/runtime
- Files:
-
- 3 edited
-
UIFrameBuffer.cpp (modified) (3 diffs)
-
UIFrameBuffer.h (modified) (3 diffs)
-
UIMachineView.cpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBuffer.cpp
r53522 r53859 766 766 #endif /* VBOX_WITH_VIDEOHWACCEL */ 767 767 768 void UIFrameBuffer::setScaleFactor(double dScaleFactor) 769 { 770 /* Remember new scale-factor: */ 771 m_dScaleFactor = dScaleFactor; 772 773 /* Update scaled-size according scale-factor: */ 774 setScaledSize(m_dScaleFactor == 1.0 ? QSize() : QSize(m_iWidth * dScaleFactor, m_iHeight * dScaleFactor)); 775 776 /* Update coordinate-system: */ 777 updateCoordinateSystem(); 778 } 779 768 780 void UIFrameBuffer::setBackingScaleFactor(double dBackingScaleFactor) 769 781 { 770 782 /* Remember new backing-scale-factor: */ 771 783 m_dBackingScaleFactor = dBackingScaleFactor; 772 773 /* Update coordinate-system: */774 updateCoordinateSystem();775 }776 777 void UIFrameBuffer::sltHandleScaleFactorChange(const QString &strMachineID)778 {779 /* Skip unrelated machine IDs: */780 if (strMachineID != vboxGlobal().managedVMUuid())781 return;782 783 /* Fetch new scale-factor: */784 m_dScaleFactor = gEDataManager->scaleFactor(vboxGlobal().managedVMUuid());785 784 786 785 /* Update coordinate-system: */ … … 820 819 821 820 /* Extra-data manager connections: */ 822 connect(gEDataManager, SIGNAL(sigScaleFactorChange(const QString&)),823 this, SLOT(sltHandleScaleFactorChange(const QString&)));824 821 #ifdef Q_WS_MAC 825 822 connect(gEDataManager, SIGNAL(sigUnscaledHiDPIOutputModeChange(const QString&)), … … 841 838 842 839 /* Extra-data manager connections: */ 843 disconnect(gEDataManager, SIGNAL(sigScaleFactorChange(const QString&)),844 this, SLOT(sltHandleScaleFactorChange(const QString&)));845 840 #ifdef Q_WS_MAC 846 841 disconnect(gEDataManager, SIGNAL(sigUnscaledHiDPIOutputModeChange(const QString&)), -
trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBuffer.h
r53803 r53859 183 183 void unlock() const { RTCritSectLeave(&m_critSect); } 184 184 185 /** Returns the scale-factor used by the scaled-size. */186 double scaleFactor() const { return m_dScaleFactor; }187 185 /** Returns the frame-buffer's scaled-size. */ 188 186 QSize scaledSize() const { return m_scaledSize; } … … 224 222 void setHiDPIOptimizationType(HiDPIOptimizationType optimizationType) { m_hiDPIOptimizationType = optimizationType; } 225 223 224 /** Returns the scale-factor used by the frame-buffer. */ 225 double scaleFactor() const { return m_dScaleFactor; } 226 /** Define the scale-factor used by the frame-buffer. */ 227 void setScaleFactor(double dScaleFactor); 228 226 229 /** Return backing scale factor used by HiDPI frame-buffer. */ 227 230 double backingScaleFactor() const { return m_dBackingScaleFactor; } … … 230 233 231 234 protected slots: 232 233 /** Handles the scale-factor change. */234 void sltHandleScaleFactorChange(const QString &strMachineID);235 235 236 236 #ifdef RT_OS_DARWIN -
trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp
r53857 r53859 239 239 /* Assign new frame-buffer logical-size taking the scale-factor into account: */ 240 240 const double dScaleFactor = gEDataManager->scaleFactor(vboxGlobal().managedVMUuid()); 241 frameBuffer()->setScale dSize(dScaleFactor == 1.0 ? QSize() : QSize(iWidth * dScaleFactor, iHeight * dScaleFactor));241 frameBuffer()->setScaleFactor(dScaleFactor); 242 242 display().NotifyScaleFactorChange(m_uScreenId, 243 243 (uint32_t)(dScaleFactor * VBOX_OGL_SCALE_FACTOR_MULTIPLIER), … … 511 511 # endif /* !VBOX_WITH_VIDEOHWACCEL */ 512 512 m_pFrameBuffer->setHiDPIOptimizationType(uisession()->hiDPIOptimizationType()); 513 m_pFrameBuffer->setScaledSize(dScaleFactor == 1.0 ? QSize() : 514 QSize(m_pFrameBuffer->width() * dScaleFactor, 515 m_pFrameBuffer->height() * dScaleFactor)); 513 m_pFrameBuffer->setScaleFactor(dScaleFactor); 516 514 display().NotifyScaleFactorChange(m_uScreenId, 517 515 (uint32_t)(dScaleFactor * VBOX_OGL_SCALE_FACTOR_MULTIPLIER), … … 559 557 { 560 558 frameBuffer()->resizeEvent(size.width(), size.height()); 561 frameBuffer()->setScaledSize(dScaleFactor == 1 ? QSize() : 562 QSize(frameBuffer()->width() * dScaleFactor, 563 frameBuffer()->height() * dScaleFactor)); 559 frameBuffer()->setScaleFactor(dScaleFactor); 564 560 display().NotifyScaleFactorChange(m_uScreenId, 565 561 (uint32_t)(dScaleFactor * VBOX_OGL_SCALE_FACTOR_MULTIPLIER),
Note:
See TracChangeset
for help on using the changeset viewer.

