24#include <com/sun/star/uno/Any.hxx>
26#include <com/sun/star/beans/XPropertySet.hpp>
27#include <com/sun/star/container/XNameAccess.hpp>
34#include <officecfg/Office/Common.hxx>
43#define HELP_TIP_TIMEOUT 0xffff
50 css::uno::Reference< css::container::XNameAccess >
m_xCfg;
51 css::uno::Reference< css::beans::XPropertySet >
m_xNode;
64 std::mutex& SingletonMutex()
66 static std::mutex SINGLETON;
81 "org.openoffice.Office.Common/Accessibility",
86 catch(
const css::uno::Exception&)
98 bool StyleSettingsChanged(
false);
100 bool bHelpTipsDisappear = officecfg::Office::Common::Accessibility::IsHelpTipsDisappear::get();
101 sal_Int16 nHelpTipSeconds = officecfg::Office::Common::Accessibility::HelpTipSeconds::get();
105 std::optional<sal_Int16> nEdgeBlendingCount(officecfg::Office::Common::Accessibility::EdgeBlending::get());
106 if (!nEdgeBlendingCount)
107 nEdgeBlendingCount = 35;
108 OSL_ENSURE(*nEdgeBlendingCount >= 0,
"OOps, negative values for EdgeBlending are not allowed (!)");
109 if (*nEdgeBlendingCount < 0)
110 nEdgeBlendingCount = 0;
115 StyleSettingsChanged =
true;
118 std::optional<sal_Int16> nMaxLineCount(officecfg::Office::Common::Accessibility::ListBoxMaximumLineCount::get());
121 OSL_ENSURE(*nMaxLineCount >= 0,
"OOps, negative values for ListBoxMaximumLineCount are not allowed (!)");
122 if (*nMaxLineCount < 0)
128 StyleSettingsChanged =
true;
132 std::optional<sal_Int16> nMaxColumnCount = 4;
134 std::optional<sal_Int16> nMaxColumnCount(officecfg::Office::Common::Accessibility::ColorValueSetColumnCount::get());
135 if (!nMaxColumnCount)
136 nMaxColumnCount = 12;
139 OSL_ENSURE(*nMaxColumnCount >= 0,
"OOps, negative values for ColorValueSetColumnCount are not allowed (!)");
140 if (*nMaxColumnCount < 0)
146 StyleSettingsChanged =
true;
149 const bool bPreviewUsesCheckeredBackground(officecfg::Office::Common::Accessibility::PreviewUsesCheckeredBackground::get());
154 StyleSettingsChanged =
true;
157 if(StyleSettingsChanged)
172 std::unique_lock aGuard( SingletonMutex() );
187 std::unique_lock aGuard( SingletonMutex() );
198 return officecfg::Office::Common::Accessibility::IsAllowAnimatedGraphics::get();
202 return officecfg::Office::Common::Accessibility::IsAllowAnimatedText::get();
206 return officecfg::Office::Common::Accessibility::IsAutomaticFontColor::get();
210 return officecfg::Office::Common::Accessibility::IsSelectionInReadonly::get();
void SetHelpSettings(const HelpSettings &rSet)
const HelpSettings & GetHelpSettings() const
const StyleSettings & GetStyleSettings() const
void SetStyleSettings(const StyleSettings &rSet)
static void MergeSystemSettings(AllSettings &rSettings)
static const AllSettings & GetSettings()
static void SetSettings(const AllSettings &rSettings)
void SetTipTimeout(sal_Int32 nTipTimeout)
void SetPreviewUsesCheckeredBackground(bool bNew)
bool GetPreviewUsesCheckeredBackground() const
void SetEdgeBlending(sal_uInt16 nCount)
sal_uInt16 GetListBoxMaximumLineCount() const
void SetListBoxMaximumLineCount(sal_uInt16 nCount)
sal_uInt16 GetEdgeBlending() const
sal_uInt16 GetColorValueSetColumnCount() const
void SetColorValueSetColumnCount(sal_uInt16 nCount)
css::uno::Reference< css::beans::XPropertySet > m_xNode
css::uno::Reference< css::container::XNameAccess > m_xCfg
SvtAccessibilityOptions_Impl()
static sal_Int32 sm_nAccessibilityRefCount
static bool IsSelectionInReadonly()
static bool GetIsAutomaticFontColor()
static void SetVCLSettings()
static bool GetIsAllowAnimatedGraphics()
static bool GetIsAllowAnimatedText()
SvtAccessibilityOptions()
static SvtAccessibilityOptions_Impl * sm_pSingleImplConfig
virtual ~SvtAccessibilityOptions() override
static css::uno::Reference< css::uno::XInterface > openConfig(const css::uno::Reference< css::uno::XComponentContext > &rxContext, const OUString &sPackage, EConfigurationModes eMode)
#define DBG_UNHANDLED_EXCEPTION(...)
Reference< XComponentContext > getProcessComponentContext()