[Libreoffice-commits] core.git: officecfg/registry sw/source sw/uiconfig

Michal Siedlaczek michal.siedlaczek at gmail.com
Tue May 20 07:30:13 PDT 2014


 officecfg/registry/schema/org/openoffice/Office/Writer.xcs |   26 
 sw/source/core/uibase/inc/optload.hxx                      |   37 
 sw/source/core/uibase/inc/wordcountdialog.hxx              |    4 
 sw/source/ui/config/optload.cxx                            |   40 
 sw/source/ui/dialog/wordcountdialog.cxx                    |   27 
 sw/uiconfig/swriter/ui/optgeneralpage.ui                   |  600 +++++++------
 sw/uiconfig/swriter/ui/wordcount.ui                        |   52 +
 7 files changed, 500 insertions(+), 286 deletions(-)

New commits:
commit 43cd2f79da7a639d09fe43e6194f7568cbc78970
Author: Michal Siedlaczek <michal.siedlaczek at gmail.com>
Date:   Sat Jan 25 11:19:16 2014 +0100

    Displaying the number of standardized pages in the Word count window
    
    The number of standardized pages (unit defined in the options)
    for the entire document and the selected area is displayed
    (if enabled in options) in the Word count window.
    The number of pages of size P for an area containing N characters equals P/N.
    This value is a float with one decimal place precision.
    The default size of the standardized page is 1800 characters
    (including whitespace characters).
    
    The configuration can be altered in Options->Writer->General.
    
    Conflicts:
    	sw/source/ui/config/optload.cxx
    
    Change-Id: If13e87c73cb7706ff6618fa0352ba29c7c670aec
    Reviewed-on: https://gerrit.libreoffice.org/7642
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/officecfg/registry/schema/org/openoffice/Office/Writer.xcs b/officecfg/registry/schema/org/openoffice/Office/Writer.xcs
index b59764c..409e7d1 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Writer.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Writer.xcs
@@ -5463,6 +5463,32 @@
         </info>
         <value>—–</value>
       </prop>
+      <prop oor:name="ShowStandardizedPageCount" oor:type="xs:boolean" oor:nillable="false">
+        <info>
+          <desc>configures if standardized page count should be displayed on the Word Count window</desc>
+          <label>Show Standardized Page Count</label>
+        </info>
+        <value>false</value>
+      </prop>
+      <prop oor:name="StandardizedPageSize" oor:type="xs:int" oor:nillable="false">
+        <info>
+          <desc>configures how many characters is considered one standardized page</desc>
+          <label>Characters Per Standardized Page</label>
+        </info>
+        <constraints>
+          <minInclusive oor:value="1">
+            <info>
+              <desc>Specifies the minimum value allowed.</desc>
+            </info>
+          </minInclusive>
+          <maxInclusive oor:value="100000">
+            <info>
+              <desc>Specifies the maximum value allowed.</desc>
+            </info>
+          </maxInclusive>
+        </constraints>
+        <value>1800</value>
+      </prop>
     </group>
     <group oor:name="Navigator">
       <info>
diff --git a/sw/source/core/uibase/inc/optload.hxx b/sw/source/core/uibase/inc/optload.hxx
index 0159999..2c1f739 100644
--- a/sw/source/core/uibase/inc/optload.hxx
+++ b/sw/source/core/uibase/inc/optload.hxx
@@ -39,25 +39,28 @@ class SwWrtShell;
 class SwLoadOptPage : public SfxTabPage
 {
 private:
-    RadioButton* m_pAlwaysRB;
-    RadioButton* m_pRequestRB;
-    RadioButton* m_pNeverRB;
-
-    CheckBox*    m_pAutoUpdateFields;
-    CheckBox*    m_pAutoUpdateCharts;
-
-    ListBox*     m_pMetricLB;
-    FixedText*   m_pTabFT;
-    MetricField* m_pTabMF;
-    CheckBox*    m_pUseSquaredPageMode;
-    CheckBox*    m_pUseCharUnit;
-    Edit*        m_pWordCountED;
-
-    SwWrtShell*  m_pWrtShell;
-    sal_uInt16   m_nLastTab;
-    sal_Int32    m_nOldLinkMode;
+    RadioButton*     m_pAlwaysRB;
+    RadioButton*     m_pRequestRB;
+    RadioButton*     m_pNeverRB;
+
+    CheckBox*        m_pAutoUpdateFields;
+    CheckBox*        m_pAutoUpdateCharts;
+
+    ListBox*         m_pMetricLB;
+    FixedText*       m_pTabFT;
+    MetricField*     m_pTabMF;
+    CheckBox*        m_pUseSquaredPageMode;
+    CheckBox*        m_pUseCharUnit;
+    Edit*            m_pWordCountED;
+    CheckBox*        m_pShowStandardizedPageCount;
+    NumericField*    m_pStandardizedPageSizeNF;
+
+    SwWrtShell*      m_pWrtShell;
+    sal_uInt16       m_nLastTab;
+    sal_Int32        m_nOldLinkMode;
 
     DECL_LINK(MetricHdl, void *);
+    DECL_LINK(StandardizedPageCountCheckHdl, void *);
 
 public:
     SwLoadOptPage(Window* pParent, const SfxItemSet& rSet);
diff --git a/sw/source/core/uibase/inc/wordcountdialog.hxx b/sw/source/core/uibase/inc/wordcountdialog.hxx
index 9656015..fef9d92 100644
--- a/sw/source/core/uibase/inc/wordcountdialog.hxx
+++ b/sw/source/core/uibase/inc/wordcountdialog.hxx
@@ -31,18 +31,22 @@ class SwWordCountFloatDlg : public SfxModelessDialog
     virtual void    Activate() SAL_OVERRIDE;
     void SetValues(const SwDocStat& rCurrent, const SwDocStat& rDoc);
     void showCJK(bool bShowCJK);
+    void showStandardizedPages(bool bShowStandardizedPages);
 
     FixedText* m_pCurrentWordFT;
     FixedText* m_pCurrentCharacterFT;
     FixedText* m_pCurrentCharacterExcludingSpacesFT;
     FixedText* m_pCurrentCjkcharsFT;
+    FixedText* m_pCurrentStandardizedPagesFT;
 
     FixedText* m_pDocWordFT;
     FixedText* m_pDocCharacterFT;
     FixedText* m_pDocCharacterExcludingSpacesFT;
     FixedText* m_pDocCjkcharsFT;
+    FixedText* m_pDocStandardizedPagesFT;
 
     FixedText* m_pCjkcharsLabelFT;
+    FixedText* m_pStandardizedPagesLabelFT;
 
     CloseButton* m_pClosePB;
 
diff --git a/sw/source/ui/config/optload.cxx b/sw/source/ui/config/optload.cxx
index baf04a4..d4db9ff 100644
--- a/sw/source/ui/config/optload.cxx
+++ b/sw/source/ui/config/optload.cxx
@@ -81,6 +81,8 @@ SwLoadOptPage::SwLoadOptPage(Window* pParent, const SfxItemSet& rSet)
     get(m_pUseSquaredPageMode, "squaremode");
     get(m_pUseCharUnit, "usecharunit");
     get(m_pWordCountED, "wordcount");
+    get(m_pShowStandardizedPageCount, "standardizedpageshow");
+    get(m_pStandardizedPageSizeNF, "standardpagesize");
 
     SvxStringArray aMetricArr( SW_RES( STR_ARR_METRIC ) );
     for ( sal_uInt32 i = 0; i < aMetricArr.Count(); ++i )
@@ -119,6 +121,9 @@ SwLoadOptPage::SwLoadOptPage(Window* pParent, const SfxItemSet& rSet)
         m_pUseSquaredPageMode->Hide();
         m_pUseCharUnit->Hide();
     }
+
+    Link aLink = LINK(this, SwLoadOptPage, StandardizedPageCountCheckHdl);
+    m_pShowStandardizedPageCount->SetClickHdl(aLink);
 }
 
 SfxTabPage* SwLoadOptPage::Create( Window* pParent,
@@ -127,6 +132,12 @@ SfxTabPage* SwLoadOptPage::Create( Window* pParent,
     return new SwLoadOptPage(pParent, rAttrSet );
 }
 
+IMPL_LINK_NOARG(SwLoadOptPage, StandardizedPageCountCheckHdl)
+{
+    m_pStandardizedPageSizeNF->Enable(m_pShowStandardizedPageCount->IsChecked());
+    return 0;
+}
+
 bool SwLoadOptPage::FillItemSet( SfxItemSet& rSet )
 {
     bool bRet = false;
@@ -198,8 +209,30 @@ bool SwLoadOptPage::FillItemSet( SfxItemSet& rSet )
         bRet = true;
     }
 
+    if (m_pShowStandardizedPageCount->GetState() != m_pShowStandardizedPageCount->GetSavedValue())
+    {
+        boost::shared_ptr< comphelper::ConfigurationChanges > batch(
+            comphelper::ConfigurationChanges::create());
+        officecfg::Office::Writer::WordCount::ShowStandardizedPageCount::set(
+          m_pShowStandardizedPageCount->IsChecked(),
+          batch);
+        batch->commit();
+        bRet = sal_True;
+    }
+
+    if (m_pStandardizedPageSizeNF->GetText() != m_pStandardizedPageSizeNF->GetSavedValue())
+    {
+        boost::shared_ptr< comphelper::ConfigurationChanges > batch(
+            comphelper::ConfigurationChanges::create());
+        officecfg::Office::Writer::WordCount::StandardizedPageSize::set(
+          m_pStandardizedPageSizeNF->GetValue(),
+          batch);
+        batch->commit();
+        bRet = sal_True;
+    }
+
     bool bIsSquaredPageModeFlag = m_pUseSquaredPageMode->IsChecked();
-    if ( m_pUseSquaredPageMode->IsValueChangedFromSaved() )
+    if ( bIsSquaredPageModeFlag != m_pUseSquaredPageMode->GetSavedValue() )
     {
         pMod->ApplyDefaultPageMode( bIsSquaredPageModeFlag );
         if ( m_pWrtShell )
@@ -291,6 +324,11 @@ void SwLoadOptPage::Reset( const SfxItemSet& rSet)
 
     m_pWordCountED->SetText(officecfg::Office::Writer::WordCount::AdditionalSeparators::get());
     m_pWordCountED->SaveValue();
+    m_pShowStandardizedPageCount->Check(officecfg::Office::Writer::WordCount::ShowStandardizedPageCount::get());
+    m_pShowStandardizedPageCount->SaveValue();
+    m_pStandardizedPageSizeNF->SetValue(officecfg::Office::Writer::WordCount::StandardizedPageSize::get());
+    m_pStandardizedPageSizeNF->SaveValue();
+    m_pStandardizedPageSizeNF->Enable(m_pShowStandardizedPageCount->IsChecked());
 }
 
 IMPL_LINK_NOARG(SwLoadOptPage, MetricHdl)
diff --git a/sw/source/ui/dialog/wordcountdialog.cxx b/sw/source/ui/dialog/wordcountdialog.cxx
index 7fe4ec6..2ff4f41 100644
--- a/sw/source/ui/dialog/wordcountdialog.cxx
+++ b/sw/source/ui/dialog/wordcountdialog.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <officecfg/Office/Writer.hxx>
 #include <swtypes.hxx>
 #include <wordcountdialog.hxx>
 #include <docstat.hxx>
@@ -54,6 +55,12 @@ namespace
     {
         pWidget->SetText(rLocaleData.getNum(nValue, 0));
     }
+
+    void setDoubleValue(FixedText *pWidget, double fValue)
+    {
+        OUString sValue(OUString::number(::rtl::math::round(fValue, 1)));
+        pWidget->SetText(sValue);
+    }
 }
 
 void SwWordCountFloatDlg::SetValues(const SwDocStat& rCurrent, const SwDocStat& rDoc)
@@ -68,6 +75,15 @@ void SwWordCountFloatDlg::SetValues(const SwDocStat& rCurrent, const SwDocStat&
     setValue(m_pDocCharacterExcludingSpacesFT, rDoc.nCharExcludingSpaces, rLocaleData);
     setValue(m_pDocCjkcharsFT, rDoc.nAsianWord, rLocaleData);
 
+    if (m_pStandardizedPagesLabelFT->IsVisible())
+    {
+        sal_Int64 nCharsPerStandardizedPage = officecfg::Office::Writer::WordCount::StandardizedPageSize::get();
+        setDoubleValue(m_pCurrentStandardizedPagesFT,
+            (double)rCurrent.nChar / nCharsPerStandardizedPage);
+        setDoubleValue(m_pDocStandardizedPagesFT,
+            (double)rDoc.nChar / nCharsPerStandardizedPage);
+    }
+
     bool bShowCJK = (SvtCJKOptions().IsAnyEnabled() || rDoc.nAsianWord);
     bool bToggleCJK = m_pCurrentCjkcharsFT->IsVisible() != bShowCJK;
     if (bToggleCJK)
@@ -84,6 +100,13 @@ void SwWordCountFloatDlg::showCJK(bool bShowCJK)
     m_pCjkcharsLabelFT->Show(bShowCJK);
 }
 
+void SwWordCountFloatDlg::showStandardizedPages(bool bShowStandardizedPages)
+{
+    m_pCurrentStandardizedPagesFT->Show(bShowStandardizedPages);
+    m_pDocStandardizedPagesFT->Show(bShowStandardizedPages);
+    m_pStandardizedPagesLabelFT->Show(bShowStandardizedPages);
+}
+
 SwWordCountFloatDlg::SwWordCountFloatDlg(SfxBindings* _pBindings,
                                          SfxChildWindow* pChild,
                                          Window *pParent,
@@ -94,17 +117,21 @@ SwWordCountFloatDlg::SwWordCountFloatDlg(SfxBindings* _pBindings,
     get(m_pCurrentCharacterFT, "selectchars");
     get(m_pCurrentCharacterExcludingSpacesFT, "selectcharsnospaces");
     get(m_pCurrentCjkcharsFT, "selectcjkchars");
+    get(m_pCurrentStandardizedPagesFT, "selectstandardizedpages");
 
     get(m_pDocWordFT, "docwords");
     get(m_pDocCharacterFT, "docchars");
     get(m_pDocCharacterExcludingSpacesFT, "doccharsnospaces");
     get(m_pDocCjkcharsFT, "doccjkchars");
+    get(m_pDocStandardizedPagesFT, "docstandardizedpages");
 
     get(m_pCjkcharsLabelFT, "cjkcharsft");
+    get(m_pStandardizedPagesLabelFT, "standardizedpages");
 
     get(m_pClosePB, "close");
 
     showCJK(SvtCJKOptions().IsAnyEnabled());
+    showStandardizedPages(officecfg::Office::Writer::WordCount::ShowStandardizedPageCount::get());
 
     Initialize(pInfo);
 
diff --git a/sw/uiconfig/swriter/ui/optgeneralpage.ui b/sw/uiconfig/swriter/ui/optgeneralpage.ui
index 19e24ea..2a3d13c 100644
--- a/sw/uiconfig/swriter/ui/optgeneralpage.ui
+++ b/sw/uiconfig/swriter/ui/optgeneralpage.ui
@@ -8,55 +8,244 @@
     <property name="step_increment">0.10000000000000001</property>
     <property name="page_increment">10</property>
   </object>
-  <object class="GtkBox" id="OptGeneralPage">
+  <object class="GtkAdjustment" id="adjustment-sps">
+    <property name="lower">1</property>
+    <property name="upper">100000</property>
+    <property name="value">1800</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkScrolledWindow" id="scrolledwindow1">
     <property name="visible">True</property>
-    <property name="can_focus">False</property>
+    <property name="can_focus">True</property>
     <property name="hexpand">True</property>
-    <property name="border_width">6</property>
-    <property name="orientation">vertical</property>
-    <property name="spacing">12</property>
+    <property name="vexpand">True</property>
+    <property name="shadow_type">in</property>
+    <property name="vscrollbar_policy">always</property>
     <child>
-      <object class="GtkGrid" id="grid1">
+      <object class="GtkBox" id="OptGeneralPage">
         <property name="visible">True</property>
         <property name="can_focus">False</property>
         <property name="hexpand">True</property>
-        <property name="row_spacing">18</property>
-        <property name="column_spacing">12</property>
+        <property name="border_width">6</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">12</property>
         <child>
-          <object class="GtkGrid" id="grid2">
+          <object class="GtkGrid" id="grid1">
             <property name="visible">True</property>
             <property name="can_focus">False</property>
             <property name="hexpand">True</property>
+            <property name="row_spacing">18</property>
             <property name="column_spacing">12</property>
             <child>
-              <object class="GtkFrame" id="frame1">
+              <object class="GtkGrid" id="grid2">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="hexpand">True</property>
+                <property name="column_spacing">12</property>
+                <child>
+                  <object class="GtkFrame" id="frame1">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="hexpand">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment1">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkGrid" id="grid3">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="row_spacing">6</property>
+                            <child>
+                              <object class="GtkRadioButton" id="always">
+                                <property name="label" translatable="yes">_Always</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">False</property>
+                                <property name="use_underline">True</property>
+                                <property name="xalign">0</property>
+                                <property name="active">True</property>
+                                <property name="draw_indicator">True</property>
+                                <property name="group">onrequest</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">0</property>
+                                <property name="top_attach">0</property>
+                                <property name="width">1</property>
+                                <property name="height">1</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkRadioButton" id="onrequest">
+                                <property name="label" translatable="yes">_On request</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">False</property>
+                                <property name="use_underline">True</property>
+                                <property name="xalign">0</property>
+                                <property name="draw_indicator">True</property>
+                                <property name="group">never</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">0</property>
+                                <property name="top_attach">1</property>
+                                <property name="width">1</property>
+                                <property name="height">1</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkRadioButton" id="never">
+                                <property name="label" translatable="yes">_Never</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">False</property>
+                                <property name="use_underline">True</property>
+                                <property name="xalign">0</property>
+                                <property name="draw_indicator">True</property>
+                                <property name="group">always</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">0</property>
+                                <property name="top_attach">2</property>
+                                <property name="width">1</property>
+                                <property name="height">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label1">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="label" translatable="yes">Update links when loading</property>
+                        <attributes>
+                          <attribute name="weight" value="bold"/>
+                        </attributes>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">0</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkFrame" id="frame2">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="hexpand">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment2">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkGrid" id="grid4">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="row_spacing">6</property>
+                            <child>
+                              <object class="GtkCheckButton" id="updatefields">
+                                <property name="label" translatable="yes">_Fields</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">False</property>
+                                <property name="use_underline">True</property>
+                                <property name="xalign">0</property>
+                                <property name="draw_indicator">True</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">0</property>
+                                <property name="top_attach">0</property>
+                                <property name="width">1</property>
+                                <property name="height">1</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkCheckButton" id="updatecharts">
+                                <property name="label" translatable="yes">_Charts</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">False</property>
+                                <property name="use_underline">True</property>
+                                <property name="xalign">0</property>
+                                <property name="draw_indicator">True</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">0</property>
+                                <property name="top_attach">1</property>
+                                <property name="width">1</property>
+                                <property name="height">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label2">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="label" translatable="yes">Automatically Update</property>
+                        <attributes>
+                          <attribute name="weight" value="bold"/>
+                        </attributes>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="left_attach">1</property>
+                    <property name="top_attach">0</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="left_attach">0</property>
+                <property name="top_attach">0</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkFrame" id="frame3">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
                 <property name="label_xalign">0</property>
                 <property name="shadow_type">none</property>
                 <child>
-                  <object class="GtkAlignment" id="alignment1">
+                  <object class="GtkAlignment" id="alignment3">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="top_padding">6</property>
                     <property name="left_padding">12</property>
                     <child>
-                      <object class="GtkGrid" id="grid3">
+                      <object class="GtkGrid" id="grid5">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="row_spacing">6</property>
+                        <property name="column_spacing">12</property>
                         <child>
-                          <object class="GtkRadioButton" id="always">
-                            <property name="label" translatable="yes">_Always</property>
+                          <object class="GtkLabel" id="label5">
                             <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="receives_default">False</property>
-                            <property name="use_underline">True</property>
+                            <property name="can_focus">False</property>
                             <property name="xalign">0</property>
-                            <property name="active">True</property>
-                            <property name="draw_indicator">True</property>
-                            <property name="group">onrequest</property>
+                            <property name="label" translatable="yes">_Measurement unit</property>
+                            <property name="use_underline">True</property>
+                            <property name="mnemonic_widget">metric</property>
                           </object>
                           <packing>
                             <property name="left_attach">0</property>
@@ -66,38 +255,83 @@
                           </packing>
                         </child>
                         <child>
-                          <object class="GtkRadioButton" id="onrequest">
-                            <property name="label" translatable="yes">_On request</property>
+                          <object class="GtkComboBoxText" id="metric">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="halign">start</property>
+                            <property name="entry_text_column">0</property>
+                            <property name="id_column">1</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">1</property>
+                            <property name="top_attach">0</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkLabel" id="tablabel">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="xalign">0</property>
+                            <property name="label" translatable="yes">_Tab stops</property>
+                            <property name="use_underline">True</property>
+                            <property name="mnemonic_widget">tab:0.00cm</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">0</property>
+                            <property name="top_attach">1</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkSpinButton" id="tab:0.00cm">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="halign">start</property>
+                            <property name="invisible_char">●</property>
+                            <property name="adjustment">adjustment1</property>
+                            <property name="digits">2</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">1</property>
+                            <property name="top_attach">1</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkCheckButton" id="usecharunit">
+                            <property name="label" translatable="yes">_Enable char unit</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
                             <property name="xalign">0</property>
                             <property name="draw_indicator">True</property>
-                            <property name="group">never</property>
                           </object>
                           <packing>
                             <property name="left_attach">0</property>
-                            <property name="top_attach">1</property>
-                            <property name="width">1</property>
+                            <property name="top_attach">2</property>
+                            <property name="width">2</property>
                             <property name="height">1</property>
                           </packing>
                         </child>
                         <child>
-                          <object class="GtkRadioButton" id="never">
-                            <property name="label" translatable="yes">_Never</property>
+                          <object class="GtkCheckButton" id="squaremode">
+                            <property name="label" translatable="yes">_Use square page mode for text grid</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
                             <property name="xalign">0</property>
                             <property name="draw_indicator">True</property>
-                            <property name="group">always</property>
                           </object>
                           <packing>
                             <property name="left_attach">0</property>
-                            <property name="top_attach">2</property>
-                            <property name="width">1</property>
+                            <property name="top_attach">3</property>
+                            <property name="width">2</property>
                             <property name="height">1</property>
                           </packing>
                         </child>
@@ -106,10 +340,10 @@
                   </object>
                 </child>
                 <child type="label">
-                  <object class="GtkLabel" id="label1">
+                  <object class="GtkLabel" id="label3">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="label" translatable="yes">Update links when loading</property>
+                    <property name="label" translatable="yes">Settings</property>
                     <attributes>
                       <attribute name="weight" value="bold"/>
                     </attributes>
@@ -118,38 +352,40 @@
               </object>
               <packing>
                 <property name="left_attach">0</property>
-                <property name="top_attach">0</property>
+                <property name="top_attach">1</property>
                 <property name="width">1</property>
                 <property name="height">1</property>
               </packing>
             </child>
             <child>
-              <object class="GtkFrame" id="frame2">
+              <object class="GtkFrame" id="frame4">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="hexpand">True</property>
                 <property name="label_xalign">0</property>
                 <property name="shadow_type">none</property>
                 <child>
-                  <object class="GtkAlignment" id="alignment2">
+                  <object class="GtkAlignment" id="alignment4">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
+                    <property name="hexpand">True</property>
                     <property name="top_padding">6</property>
                     <property name="left_padding">12</property>
                     <child>
-                      <object class="GtkGrid" id="grid4">
+                      <object class="GtkGrid" id="grid6">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
+                        <property name="hexpand">True</property>
                         <property name="row_spacing">6</property>
+                        <property name="column_spacing">12</property>
                         <child>
-                          <object class="GtkCheckButton" id="updatefields">
-                            <property name="label" translatable="yes">_Fields</property>
+                          <object class="GtkLabel" id="label7">
                             <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="receives_default">False</property>
-                            <property name="use_underline">True</property>
+                            <property name="can_focus">False</property>
                             <property name="xalign">0</property>
-                            <property name="draw_indicator">True</property>
+                            <property name="label" translatable="yes">_Additional separators</property>
+                            <property name="use_underline">True</property>
+                            <property name="mnemonic_widget">wordcount</property>
                           </object>
                           <packing>
                             <property name="left_attach">0</property>
@@ -159,8 +395,22 @@
                           </packing>
                         </child>
                         <child>
-                          <object class="GtkCheckButton" id="updatecharts">
-                            <property name="label" translatable="yes">_Charts</property>
+                          <object class="GtkEntry" id="wordcount">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="hexpand">True</property>
+                            <property name="invisible_char">●</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">1</property>
+                            <property name="top_attach">0</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkCheckButton" id="standardizedpageshow">
+                            <property name="label" translatable="yes">Show standardized page count</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
@@ -171,6 +421,38 @@
                           <packing>
                             <property name="left_attach">0</property>
                             <property name="top_attach">1</property>
+                            <property name="width">2</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkLabel" id="labelstandardpages">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="xalign">0</property>
+                            <property name="label" translatable="yes">Characters per standardized page</property>
+                            <property name="use_underline">True</property>
+                            <property name="mnemonic_widget">standardpagesize</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">0</property>
+                            <property name="top_attach">2</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkSpinButton" id="standardpagesize">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="halign">start</property>
+                            <property name="invisible_char">●</property>
+                            <property name="adjustment">adjustment-sps</property>
+                            <property name="digits">0</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">1</property>
+                            <property name="top_attach">2</property>
                             <property name="width">1</property>
                             <property name="height">1</property>
                           </packing>
@@ -180,10 +462,10 @@
                   </object>
                 </child>
                 <child type="label">
-                  <object class="GtkLabel" id="label2">
+                  <object class="GtkLabel" id="label4">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="label" translatable="yes">Automatically Update</property>
+                    <property name="label" translatable="yes">Word Count</property>
                     <attributes>
                       <attribute name="weight" value="bold"/>
                     </attributes>
@@ -191,236 +473,20 @@
                 </child>
               </object>
               <packing>
-                <property name="left_attach">1</property>
-                <property name="top_attach">0</property>
+                <property name="left_attach">0</property>
+                <property name="top_attach">2</property>
                 <property name="width">1</property>
                 <property name="height">1</property>
               </packing>
             </child>
           </object>
           <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">0</property>
-            <property name="width">1</property>
-            <property name="height">1</property>
-          </packing>
-        </child>
-        <child>
-          <object class="GtkFrame" id="frame3">
-            <property name="visible">True</property>
-            <property name="can_focus">False</property>
-            <property name="label_xalign">0</property>
-            <property name="shadow_type">none</property>
-            <child>
-              <object class="GtkAlignment" id="alignment3">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="top_padding">6</property>
-                <property name="left_padding">12</property>
-                <child>
-                  <object class="GtkGrid" id="grid5">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="row_spacing">6</property>
-                    <property name="column_spacing">12</property>
-                    <child>
-                      <object class="GtkLabel" id="label5">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">_Measurement unit</property>
-                        <property name="use_underline">True</property>
-                        <property name="mnemonic_widget">metric</property>
-                      </object>
-                      <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkComboBoxText" id="metric">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="halign">start</property>
-                        <property name="entry_text_column">0</property>
-                        <property name="id_column">1</property>
-                      </object>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkLabel" id="tablabel">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">_Tab stops</property>
-                        <property name="use_underline">True</property>
-                        <property name="mnemonic_widget">tab:0.00cm</property>
-                      </object>
-                      <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">1</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkSpinButton" id="tab:0.00cm">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="halign">start</property>
-                        <property name="invisible_char">●</property>
-                        <property name="adjustment">adjustment1</property>
-                        <property name="digits">2</property>
-                      </object>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="top_attach">1</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkCheckButton" id="usecharunit">
-                        <property name="label" translatable="yes">_Enable char unit</property>
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
-                        <property name="use_underline">True</property>
-                        <property name="xalign">0</property>
-                        <property name="draw_indicator">True</property>
-                      </object>
-                      <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">2</property>
-                        <property name="width">2</property>
-                        <property name="height">1</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkCheckButton" id="squaremode">
-                        <property name="label" translatable="yes">_Use square page mode for text grid</property>
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
-                        <property name="use_underline">True</property>
-                        <property name="xalign">0</property>
-                        <property name="draw_indicator">True</property>
-                      </object>
-                      <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">3</property>
-                        <property name="width">2</property>
-                        <property name="height">1</property>
-                      </packing>
-                    </child>
-                  </object>
-                </child>
-              </object>
-            </child>
-            <child type="label">
-              <object class="GtkLabel" id="label3">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="label" translatable="yes">Settings</property>
-                <attributes>
-                  <attribute name="weight" value="bold"/>
-                </attributes>
-              </object>
-            </child>
-          </object>
-          <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">1</property>
-            <property name="width">1</property>
-            <property name="height">1</property>
-          </packing>
-        </child>
-        <child>
-          <object class="GtkFrame" id="frame4">
-            <property name="visible">True</property>
-            <property name="can_focus">False</property>
-            <property name="hexpand">True</property>
-            <property name="label_xalign">0</property>
-            <property name="shadow_type">none</property>
-            <child>
-              <object class="GtkAlignment" id="alignment4">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="hexpand">True</property>
-                <property name="top_padding">6</property>
-                <property name="left_padding">12</property>
-                <child>
-                  <object class="GtkGrid" id="grid6">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="hexpand">True</property>
-                    <property name="row_spacing">6</property>
-                    <property name="column_spacing">12</property>
-                    <child>
-                      <object class="GtkLabel" id="label7">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">_Additional separators</property>
-                        <property name="use_underline">True</property>
-                        <property name="mnemonic_widget">wordcount</property>
-                      </object>
-                      <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkEntry" id="wordcount">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="hexpand">True</property>
-                        <property name="invisible_char">●</property>
-                      </object>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
-                      </packing>
-                    </child>
-                  </object>
-                </child>
-              </object>
-            </child>
-            <child type="label">
-              <object class="GtkLabel" id="label4">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="label" translatable="yes">Word Count</property>
-                <attributes>
-                  <attribute name="weight" value="bold"/>
-                </attributes>
-              </object>
-            </child>
-          </object>
-          <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">2</property>
-            <property name="width">1</property>
-            <property name="height">1</property>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">0</property>
           </packing>
         </child>
       </object>
-      <packing>
-        <property name="expand">False</property>
-        <property name="fill">True</property>
-        <property name="position">0</property>
-      </packing>
     </child>
   </object>
 </interface>
diff --git a/sw/uiconfig/swriter/ui/wordcount.ui b/sw/uiconfig/swriter/ui/wordcount.ui
index 464daa4..a74b2c5 100644
--- a/sw/uiconfig/swriter/ui/wordcount.ui
+++ b/sw/uiconfig/swriter/ui/wordcount.ui
@@ -291,6 +291,54 @@
               </packing>
             </child>
             <child>
+              <object class="GtkLabel" id="standardizedpages">
+                <property name="can_focus">False</property>
+                <property name="no_show_all">True</property>
+                <property name="xalign">1</property>
+                <property name="label" translatable="yes">Standardized pages</property>
+              </object>
+              <packing>
+                <property name="left_attach">0</property>
+                <property name="top_attach">5</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkLabel" id="selectstandardizedpages">
+                <property name="can_focus">False</property>
+                <property name="no_show_all">True</property>
+                <property name="halign">end</property>
+                <property name="hexpand">True</property>
+                <property name="xalign">1</property>
+                <property name="label">            0</property>
+                <property name="justify">right</property>
+              </object>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="top_attach">5</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkLabel" id="docstandardizedpages">
+                <property name="can_focus">False</property>
+                <property name="no_show_all">True</property>
+                <property name="halign">end</property>
+                <property name="hexpand">True</property>
+                <property name="xalign">1</property>
+                <property name="label">            0</property>
+                <property name="justify">right</property>
+              </object>
+              <packing>
+                <property name="left_attach">2</property>
+                <property name="top_attach">5</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
               <placeholder/>
             </child>
           </object>
@@ -313,11 +361,13 @@
       <widget name="selectwords"/>
       <widget name="selectchars"/>
       <widget name="selectcharsnospaces"/>
+      <widget name="selectcjkchars"/>
+      <widget name="selectstandardizedpages"/>
       <widget name="docwords"/>
       <widget name="docchars"/>
       <widget name="doccharsnospaces"/>
-      <widget name="selectcjkchars"/>
       <widget name="doccjkchars"/>
+      <widget name="docstandardizedpages"/>
     </widgets>
   </object>
 </interface>


More information about the Libreoffice-commits mailing list