[Libreoffice-commits] core.git: cui/source

Andras Timar andras.timar at collabora.com
Wed Feb 10 14:09:31 UTC 2016


 cui/source/options/optaccessibility.cxx |   62 ++++++++++++++++++--------------
 cui/source/options/optaccessibility.hxx |    3 -
 2 files changed, 36 insertions(+), 29 deletions(-)

New commits:
commit 76d34bbc2696fdcfe9719f6fa70c4ef81af0c2be
Author: Andras Timar <andras.timar at collabora.com>
Date:   Wed Feb 10 10:51:54 2016 +0100

    tdf#46037 clean up Options - LibreOffice - Accessibility page
    
    switch to new config access and handle read-only state, too
    
    Change-Id: I499363ae59163ffcea4f7d3b0fe72289b88ffb79
    Reviewed-on: https://gerrit.libreoffice.org/22261
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Andras Timar <andras.timar at collabora.com>

diff --git a/cui/source/options/optaccessibility.cxx b/cui/source/options/optaccessibility.cxx
index 3509d76..fe0e37a 100644
--- a/cui/source/options/optaccessibility.cxx
+++ b/cui/source/options/optaccessibility.cxx
@@ -20,22 +20,14 @@
 #include <optaccessibility.hxx>
 #include <dialmgr.hxx>
 #include <cuires.hrc>
-#include <svtools/accessibilityoptions.hxx>
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
-
-struct SvxAccessibilityOptionsTabPage_Impl
-{
-    SvtAccessibilityOptions     m_aConfig;
-    SvxAccessibilityOptionsTabPage_Impl()
-            : m_aConfig(){}
-};
+#include <officecfg/Office/Common.hxx>
 
 SvxAccessibilityOptionsTabPage::SvxAccessibilityOptionsTabPage(vcl::Window* pParent,
     const SfxItemSet& rSet)
     : SfxTabPage(pParent, "OptAccessibilityPage",
         "cui/ui/optaccessibilitypage.ui", &rSet)
-    , m_pImpl(new SvxAccessibilityOptionsTabPage_Impl)
 {
     get(m_pAccessibilityTool, "acctool");
     get(m_pTextSelectionInReadonly, "textselinreadonly");
@@ -59,8 +51,6 @@ SvxAccessibilityOptionsTabPage::~SvxAccessibilityOptionsTabPage()
 
 void SvxAccessibilityOptionsTabPage::dispose()
 {
-    delete m_pImpl;
-    m_pImpl = nullptr;
     m_pAccessibilityTool.clear();
     m_pTextSelectionInReadonly.clear();
     m_pAnimatedGraphics.clear();
@@ -78,14 +68,20 @@ VclPtr<SfxTabPage> SvxAccessibilityOptionsTabPage::Create( vcl::Window* pParent,
 
 bool SvxAccessibilityOptionsTabPage::FillItemSet( SfxItemSet* )
 {
-    //aConfig.Set... from controls
-
-    m_pImpl->m_aConfig.SetIsForPagePreviews( m_pPagePreviews->IsChecked() );
-    m_pImpl->m_aConfig.SetIsAllowAnimatedGraphics( m_pAnimatedGraphics->IsChecked() );
-    m_pImpl->m_aConfig.SetIsAllowAnimatedText( m_pAnimatedTexts->IsChecked() );
-    m_pImpl->m_aConfig.SetIsAutomaticFontColor( m_pAutomaticFontColor->IsChecked() );
-    m_pImpl->m_aConfig.SetSelectionInReadonly( m_pTextSelectionInReadonly->IsChecked());
-    m_pImpl->m_aConfig.SetAutoDetectSystemHC( m_pAutoDetectHC->IsChecked());
+    std::shared_ptr<comphelper::ConfigurationChanges> batch( comphelper::ConfigurationChanges::create() );
+    if ( !officecfg::Office::Common::Accessibility::IsForPagePreviews::isReadOnly() )
+        officecfg::Office::Common::Accessibility::IsForPagePreviews::set(m_pPagePreviews->IsChecked(), batch);
+    if ( !officecfg::Office::Common::Accessibility::IsAllowAnimatedGraphics::isReadOnly() )
+        officecfg::Office::Common::Accessibility::IsAllowAnimatedGraphics::set(m_pAnimatedGraphics->IsChecked(), batch);
+    if ( !officecfg::Office::Common::Accessibility::IsAllowAnimatedText::isReadOnly() )
+        officecfg::Office::Common::Accessibility::IsAllowAnimatedText::set(m_pAnimatedTexts->IsChecked(), batch);
+    if ( !officecfg::Office::Common::Accessibility::IsAutomaticFontColor::isReadOnly() )
+        officecfg::Office::Common::Accessibility::IsAutomaticFontColor::set(m_pAutomaticFontColor->IsChecked(), batch);
+    if ( !officecfg::Office::Common::Accessibility::IsSelectionInReadonly::isReadOnly() )
+        officecfg::Office::Common::Accessibility::IsSelectionInReadonly::set(m_pTextSelectionInReadonly->IsChecked(), batch);
+    if ( !officecfg::Office::Common::Accessibility::AutoDetectSystemHC::isReadOnly() )
+        officecfg::Office::Common::Accessibility::AutoDetectSystemHC::set(m_pAutoDetectHC->IsChecked(), batch);
+    batch->commit();
 
     AllSettings aAllSettings = Application::GetSettings();
     MiscSettings aMiscSettings = aAllSettings.GetMiscSettings();
@@ -101,15 +97,29 @@ bool SvxAccessibilityOptionsTabPage::FillItemSet( SfxItemSet* )
 
 void SvxAccessibilityOptionsTabPage::Reset( const SfxItemSet* )
 {
-    //set controls from aConfig.Get...
+    m_pPagePreviews->Check( officecfg::Office::Common::Accessibility::IsForPagePreviews::get() );
+    if( officecfg::Office::Common::Accessibility::IsForPagePreviews::isReadOnly() )
+        m_pPagePreviews->Disable();
+
+    m_pAnimatedGraphics->Check( officecfg::Office::Common::Accessibility::IsAllowAnimatedGraphics::get() );
+    if( officecfg::Office::Common::Accessibility::IsAllowAnimatedGraphics::isReadOnly() )
+        m_pAnimatedGraphics->Disable();
+
+    m_pAnimatedTexts->Check( officecfg::Office::Common::Accessibility::IsAllowAnimatedText::get() );
+    if( officecfg::Office::Common::Accessibility::IsAllowAnimatedText::isReadOnly() )
+        m_pAnimatedTexts->Disable();
+
+    m_pAutomaticFontColor->Check( officecfg::Office::Common::Accessibility::IsAutomaticFontColor::get() );
+    if( officecfg::Office::Common::Accessibility::IsAutomaticFontColor::isReadOnly() )
+        m_pAutomaticFontColor->Disable();
 
-    m_pPagePreviews->Check(            m_pImpl->m_aConfig.GetIsForPagePreviews() );
-    m_pAnimatedGraphics->Check(        m_pImpl->m_aConfig.GetIsAllowAnimatedGraphics() );
-    m_pAnimatedTexts->Check(           m_pImpl->m_aConfig.GetIsAllowAnimatedText() );
-    m_pAutomaticFontColor->Check(      m_pImpl->m_aConfig.GetIsAutomaticFontColor() );
-    m_pTextSelectionInReadonly->Check( m_pImpl->m_aConfig.IsSelectionInReadonly() );
-    m_pAutoDetectHC->Check(            m_pImpl->m_aConfig.GetAutoDetectSystemHC() );
+    m_pTextSelectionInReadonly->Check( officecfg::Office::Common::Accessibility::IsSelectionInReadonly::get() );
+    if( officecfg::Office::Common::Accessibility::IsSelectionInReadonly::isReadOnly() )
+        m_pTextSelectionInReadonly->Disable();
 
+    m_pAutoDetectHC->Check( officecfg::Office::Common::Accessibility::AutoDetectSystemHC::get() );
+    if( officecfg::Office::Common::Accessibility::AutoDetectSystemHC::isReadOnly() )
+        m_pAutoDetectHC->Disable();
 
     AllSettings aAllSettings = Application::GetSettings();
     MiscSettings aMiscSettings = aAllSettings.GetMiscSettings();
diff --git a/cui/source/options/optaccessibility.hxx b/cui/source/options/optaccessibility.hxx
index 11d2a75..cdf0f51 100644
--- a/cui/source/options/optaccessibility.hxx
+++ b/cui/source/options/optaccessibility.hxx
@@ -22,7 +22,6 @@
 #include <sfx2/tabdlg.hxx>
 #include <vcl/fixed.hxx>
 #include <vcl/field.hxx>
-struct SvxAccessibilityOptionsTabPage_Impl;
 class SvxAccessibilityOptionsTabPage : public SfxTabPage
 {
     VclPtr<CheckBox>       m_pAccessibilityTool;
@@ -33,8 +32,6 @@ class SvxAccessibilityOptionsTabPage : public SfxTabPage
     VclPtr<CheckBox>       m_pAutomaticFontColor;
     VclPtr<CheckBox>       m_pPagePreviews;
 
-    SvxAccessibilityOptionsTabPage_Impl* m_pImpl;
-
 public:
     SvxAccessibilityOptionsTabPage( vcl::Window* pParent, const SfxItemSet& rSet );
     virtual ~SvxAccessibilityOptionsTabPage();


More information about the Libreoffice-commits mailing list