From a96acacb91197a04e8fd9114d8c4bcda24372f54 Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Tue, 17 Feb 2015 11:44:29 +0000 Subject: Resolves: tdf#89417 disable hardware accel checkbox if property is readonly Change-Id: Ie99643ba29a3b47dd47d2fb1359d573a52f4c64a --- cui/source/options/optgdlg.cxx | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'cui/source/options/optgdlg.cxx') diff --git a/cui/source/options/optgdlg.cxx b/cui/source/options/optgdlg.cxx index 207addc847b7..a4474744e73b 100644 --- a/cui/source/options/optgdlg.cxx +++ b/cui/source/options/optgdlg.cxx @@ -78,6 +78,7 @@ #include #include #include +#include #include #include #include @@ -456,6 +457,7 @@ public: bool IsHardwareAccelerationEnabled() const; bool IsHardwareAccelerationAvailable() const; + bool IsHardwareAccelerationRO() const; void EnabledHardwareAcceleration( bool _bEnabled ) const; private: @@ -583,6 +585,17 @@ bool CanvasSettings::IsHardwareAccelerationEnabled() const return !bForceLastEntry; } +bool CanvasSettings::IsHardwareAccelerationRO() const +{ + Reference< XPropertySet > xSet(mxForceFlagNameAccess, UNO_QUERY); + if (!xSet.is()) + return true; + + Reference< XPropertySetInfo > xInfo = xSet->getPropertySetInfo(); + Property aProp = xInfo->getPropertyByName("ForceSafeServiceImpl"); + return ((aProp.Attributes & css::beans::PropertyAttribute::READONLY ) == css::beans::PropertyAttribute::READONLY); +} + void CanvasSettings::EnabledHardwareAcceleration( bool _bEnabled ) const { Reference< XNameReplace > xNameReplace( @@ -949,6 +962,7 @@ void OfaViewTabPage::Reset( const SfxItemSet* ) if(pCanvasSettings->IsHardwareAccelerationAvailable()) { m_pUseHardwareAccell->Check(pCanvasSettings->IsHardwareAccelerationEnabled()); + m_pUseHardwareAccell->Enable(!pCanvasSettings->IsHardwareAccelerationRO()); } else { -- cgit