cui/source/options/optgdlg.cxx |   12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

New commits:
commit 6d2363a553c9e275f9430510d70bc4b84e02aad8
Author:     Eike Rathke <er...@redhat.com>
AuthorDate: Sun Oct 23 22:12:40 2022 +0200
Commit:     Eike Rathke <er...@redhat.com>
CommitDate: Mon Oct 24 00:37:58 2022 +0200

    Related: tdf#147817 validateDatePatterns() also when 
(re-)setting/initializing
    
    ... so a bad pattern possibly stored in configuration gives a
    visual indicator already on first view.
    
    Also reset the edit indicator to normal when initializing from a
    locale's default patterns.
    
    Change-Id: Ib87b01e057bc1409eba6ccb4d2717a731d0773d2
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141689
    Reviewed-by: Eike Rathke <er...@redhat.com>
    Tested-by: Jenkins

diff --git a/cui/source/options/optgdlg.cxx b/cui/source/options/optgdlg.cxx
index 38b6ae8181e6..db81f8565923 100644
--- a/cui/source/options/optgdlg.cxx
+++ b/cui/source/options/optgdlg.cxx
@@ -1508,10 +1508,17 @@ void OfaLanguagesTabPage::Reset( const SfxItemSet* rSet 
)
     {
         const LocaleDataWrapper& rLocaleWrapper( 
Application::GetSettings().GetLocaleDataWrapper() );
         aDatePatternsString = lcl_getDatePatternsConfigString( rLocaleWrapper);
+        // Let's assume patterns are valid at this point.
+        m_bDatePatternsValid = true;
+    }
+    else
+    {
+        bool bModified = false;
+        m_bDatePatternsValid = validateDatePatterns( bModified, 
aDatePatternsString);
     }
-    // Let's assume patterns are valid at this point.
-    m_bDatePatternsValid = true;
     m_xDatePatternsED->set_text(aDatePatternsString);
+    m_xDatePatternsED->set_message_type( m_bDatePatternsValid ?
+            weld::EntryMessageType::Normal : weld::EntryMessageType::Error);
     bReadonly = 
pLangConfig->aSysLocaleOptions.IsReadOnly(SvtSysLocaleOptions::EOption::DatePatterns);
     m_xDatePatternsED->set_sensitive(!bReadonly);
     m_xDatePatternsFT->set_sensitive(!bReadonly);
@@ -1691,6 +1698,7 @@ IMPL_LINK_NOARG(OfaLanguagesTabPage, LocaleSettingHdl, 
weld::ComboBox&, void)
     OUString aDatePatternsString = lcl_getDatePatternsConfigString( 
aLocaleWrapper);
     m_bDatePatternsValid = true;
     m_xDatePatternsED->set_text( aDatePatternsString);
+    m_xDatePatternsED->set_message_type(weld::EntryMessageType::Normal);
 }
 
 IMPL_LINK( OfaLanguagesTabPage, DatePatternsHdl, weld::Entry&, rEd, void )

Reply via email to