summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/svx/dialogs.hrc3
-rw-r--r--include/svx/spacinglistbox.hxx35
-rw-r--r--svx/AllLangResTarget_svx.mk1
-rw-r--r--svx/Library_svxcore.mk1
-rw-r--r--svx/source/dialog/spacing.src16
-rw-r--r--svx/source/dialog/spacinglistbox.cxx48
-rw-r--r--sw/source/uibase/sidebar/PageFooterPanel.hxx11
-rw-r--r--sw/source/uibase/sidebar/PageHeaderPanel.cxx1
-rw-r--r--sw/source/uibase/sidebar/PageHeaderPanel.hxx11
-rw-r--r--sw/source/uibase/sidebar/WrapPropertyPanel.hxx3
-rw-r--r--sw/uiconfig/swriter/ui/pagefooterpanel.ui48
-rw-r--r--sw/uiconfig/swriter/ui/pageheaderpanel.ui48
-rw-r--r--sw/uiconfig/swriter/ui/sidebarwrap.ui54
13 files changed, 122 insertions, 158 deletions
diff --git a/include/svx/dialogs.hrc b/include/svx/dialogs.hrc
index 8e87be9b576f..c7eb35202f30 100644
--- a/include/svx/dialogs.hrc
+++ b/include/svx/dialogs.hrc
@@ -1084,9 +1084,10 @@
#define RID_SVXSTRARY_PAPERSIZE_STD (RID_SVX_START + 1395)
#define RID_SVXSTRARY_PAPERSIZE_DRAW (RID_SVX_START + 1396)
#define RID_SVXSTRARY_PAGE_NUMBERING (RID_SVX_START + 1397)
+#define RID_SVXSTRARY_SPACING (RID_SVX_START + 1398)
// !!! IMPORTANT: consider and update RID_SVXSTR_NEXTFREE when introducing new RIDs for Strings !!!
-#define RID_SVXSTR_NEXTFREE (RID_SVX_START + 1398)
+#define RID_SVXSTR_NEXTFREE (RID_SVX_START + 1399)
// if we have _a_lot_ time, we should group the resource ids by type, instead
// of grouping them by semantics. The reason is that resource ids have to be
diff --git a/include/svx/spacinglistbox.hxx b/include/svx/spacinglistbox.hxx
new file mode 100644
index 000000000000..eb8ebe427439
--- /dev/null
+++ b/include/svx/spacinglistbox.hxx
@@ -0,0 +1,35 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef INCLUDED_SVX_SPACINGLISTBOXHELPER_HXX
+#define INCLUDED_SVX_SPACINGLISTBOXHELPER_HXX
+
+#include <svx/svxdllapi.h>
+#include <vcl/lstbox.hxx>
+
+/// Custom Widget ListBox to hold entries for Spacing & Margin settings of Header/Footer
+class SVX_DLLPUBLIC SpacingListBox : public ListBox
+{
+public:
+ SpacingListBox( vcl::Window* pParent, WinBits nBits = WB_BORDER | WB_DROPDOWN );
+ Size GetOptimalSize() const override;
+};
+
+#endif
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svx/AllLangResTarget_svx.mk b/svx/AllLangResTarget_svx.mk
index d33f37d31023..c7ee81f9748c 100644
--- a/svx/AllLangResTarget_svx.mk
+++ b/svx/AllLangResTarget_svx.mk
@@ -49,6 +49,7 @@ $(eval $(call gb_SrsTarget_add_files,svx/res,\
svx/source/dialog/passwd.src \
svx/source/dialog/prtqry.src \
svx/source/dialog/ruler.src \
+ svx/source/dialog/spacing.src \
svx/source/dialog/sdstring.src \
svx/source/dialog/srchdlg.src \
svx/source/dialog/svxbmpnumvalueset.src \
diff --git a/svx/Library_svxcore.mk b/svx/Library_svxcore.mk
index 87b44e84bd2c..228c8f32e43c 100644
--- a/svx/Library_svxcore.mk
+++ b/svx/Library_svxcore.mk
@@ -120,6 +120,7 @@ $(eval $(call gb_Library_add_exception_objects,svxcore,\
svx/source/dialog/langbox \
svx/source/dialog/pagenumberlistbox \
svx/source/dialog/papersizelistbox \
+ svx/source/dialog/spacinglistbox \
svx/source/dialog/stddlg \
svx/source/dialog/svxdlg \
svx/source/dialog/SvxNumOptionsTabPageHelper \
diff --git a/svx/source/dialog/spacing.src b/svx/source/dialog/spacing.src
new file mode 100644
index 000000000000..f7e10ee69c99
--- /dev/null
+++ b/svx/source/dialog/spacing.src
@@ -0,0 +1,16 @@
+#include <svx/dialogs.hrc>
+
+StringArray RID_SVXSTRARY_SPACING
+{
+ ItemList [ en-US ] =
+ {
+ < "None" ; 0; > ;
+ < "Extra Small (1/16\")"; 91; > ;
+ < "Small (1/8\")"; 181; > ;
+ < "Small Medium (1/4\")"; 363; > ;
+ < "Medium (3/8\")"; 539; > ;
+ < "Medium Large (1/2\")"; 720; > ;
+ < "Large (3/4\")"; 1077; > ;
+ < "Extra Large (1\")"; 1440; > ;
+ };
+}; \ No newline at end of file
diff --git a/svx/source/dialog/spacinglistbox.cxx b/svx/source/dialog/spacinglistbox.cxx
new file mode 100644
index 000000000000..363385f2a030
--- /dev/null
+++ b/svx/source/dialog/spacinglistbox.cxx
@@ -0,0 +1,48 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#include <svx/dialogs.hrc>
+#include <svx/dialmgr.hxx>
+#include <svx/spacinglistbox.hxx>
+#include <tools/resary.hxx>
+#include <vcl/builderfactory.hxx>
+
+SpacingListBox::SpacingListBox(vcl::Window* pParent, WinBits nStyle)
+ : ListBox( pParent, nStyle)
+{
+ ResStringArray aSpacingAry( SVX_RES( RID_SVXSTRARY_SPACING ) );
+ sal_uInt32 nCnt = aSpacingAry.Count();
+
+ for ( sal_uInt32 i = 0; i < nCnt; ++i )
+ {
+ OUString aStr = aSpacingAry.GetString(i);
+ sal_uInt16 nData = aSpacingAry.GetValue(i);
+ sal_Int32 nPos = InsertEntry( aStr );
+ SetEntryData( nPos, reinterpret_cast<void*>((sal_uLong)nData) );
+ }
+ SetDropDownLineCount(8);
+ SelectEntryPos(0);
+}
+
+VCL_BUILDER_FACTORY(SpacingListBox);
+
+Size SpacingListBox::GetOptimalSize() const
+{
+ return Size(150, ListBox::GetOptimalSize().Height());
+}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/uibase/sidebar/PageFooterPanel.hxx b/sw/source/uibase/sidebar/PageFooterPanel.hxx
index 67385256c22d..10d645955bf5 100644
--- a/sw/source/uibase/sidebar/PageFooterPanel.hxx
+++ b/sw/source/uibase/sidebar/PageFooterPanel.hxx
@@ -43,6 +43,7 @@
#include <tools/fldunit.hxx>
#include <svl/poolitem.hxx>
#include <svl/eitem.hxx>
+#include <svx/spacinglistbox.hxx>
namespace sw { namespace sidebar {
@@ -79,11 +80,11 @@ private:
::sfx2::sidebar::ControllerItem maFooterSpacingController;
::sfx2::sidebar::ControllerItem maFooterLayoutController;
- VclPtr<CheckBox> mpFooterToggle;
- VclPtr<ListBox> mpFooterSpacingLB;
- VclPtr<ListBox> mpFooterLayoutLB;
- VclPtr<ListBox> mpFooterMarginPresetLB;
- VclPtr<FixedText> mpCustomEntry;
+ VclPtr<CheckBox> mpFooterToggle;
+ VclPtr<SpacingListBox> mpFooterSpacingLB;
+ VclPtr<SpacingListBox> mpFooterMarginPresetLB;
+ VclPtr<ListBox> mpFooterLayoutLB;
+ VclPtr<FixedText> mpCustomEntry;
OUString aCustomEntry;
void Initialize();
diff --git a/sw/source/uibase/sidebar/PageHeaderPanel.cxx b/sw/source/uibase/sidebar/PageHeaderPanel.cxx
index ae84c2e3b78a..c88960ba6b9b 100644
--- a/sw/source/uibase/sidebar/PageHeaderPanel.cxx
+++ b/sw/source/uibase/sidebar/PageHeaderPanel.cxx
@@ -251,7 +251,6 @@ IMPL_LINK_NOARG_TYPED( PageHeaderPanel, HeaderSpacingHdl, ListBox&, void )
mpHeaderSpacingItem->SetLower(nVal);
GetBindings()->GetDispatcher()->ExecuteList( SID_ATTR_PAGE_HEADER_SPACING,
SfxCallMode::RECORD, { mpHeaderSpacingItem.get() } );
-
}
IMPL_LINK_NOARG_TYPED( PageHeaderPanel, HeaderLayoutHdl, ListBox&, void )
{
diff --git a/sw/source/uibase/sidebar/PageHeaderPanel.hxx b/sw/source/uibase/sidebar/PageHeaderPanel.hxx
index 54b94e23d771..2cfde07ceb20 100644
--- a/sw/source/uibase/sidebar/PageHeaderPanel.hxx
+++ b/sw/source/uibase/sidebar/PageHeaderPanel.hxx
@@ -43,6 +43,7 @@
#include <tools/fldunit.hxx>
#include <svl/poolitem.hxx>
#include <svl/eitem.hxx>
+#include <svx/spacinglistbox.hxx>
namespace sw { namespace sidebar {
@@ -79,11 +80,11 @@ private:
::sfx2::sidebar::ControllerItem maHeaderSpacingController;
::sfx2::sidebar::ControllerItem maHeaderLayoutController;
- VclPtr<CheckBox> mpHeaderToggle;
- VclPtr<ListBox> mpHeaderSpacingLB;
- VclPtr<ListBox> mpHeaderLayoutLB;
- VclPtr<ListBox> mpHeaderMarginPresetLB;
- VclPtr<FixedText> mpCustomEntry;
+ VclPtr<CheckBox> mpHeaderToggle;
+ VclPtr<SpacingListBox> mpHeaderSpacingLB;
+ VclPtr<SpacingListBox> mpHeaderMarginPresetLB;
+ VclPtr<ListBox> mpHeaderLayoutLB;
+ VclPtr<FixedText> mpCustomEntry;
OUString aCustomEntry;
void Initialize();
diff --git a/sw/source/uibase/sidebar/WrapPropertyPanel.hxx b/sw/source/uibase/sidebar/WrapPropertyPanel.hxx
index 5dd4caa5ff09..a0a62a8831ec 100644
--- a/sw/source/uibase/sidebar/WrapPropertyPanel.hxx
+++ b/sw/source/uibase/sidebar/WrapPropertyPanel.hxx
@@ -26,6 +26,7 @@
#include <sfx2/sidebar/ControllerItem.hxx>
#include <com/sun/star/frame/XFrame.hpp>
#include <vcl/lstbox.hxx>
+#include <svx/spacinglistbox.hxx>
namespace sw { namespace sidebar {
@@ -65,7 +66,7 @@ namespace sw { namespace sidebar {
VclPtr<RadioButton> mpRBIdealWrap;
VclPtr<Button> mpEditContour;
VclPtr<CheckBox> mpEnableContour;
- VclPtr<ListBox> mpSpacingLB;
+ VclPtr<SpacingListBox> mpSpacingLB;
VclPtr<FixedText> mpCustomEntry;
//Spacing
diff --git a/sw/uiconfig/swriter/ui/pagefooterpanel.ui b/sw/uiconfig/swriter/ui/pagefooterpanel.ui
index a709475c73f7..0297daf05786 100644
--- a/sw/uiconfig/swriter/ui/pagefooterpanel.ui
+++ b/sw/uiconfig/swriter/ui/pagefooterpanel.ui
@@ -2,48 +2,6 @@
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.12"/>
- <object class="GtkListStore" id="spacinglist">
- <columns>
- <!-- column-name gchararray1 -->
- <column type="gchararray"/>
- <!-- column-name gint1 -->
- <column type="gint"/>
- </columns>
- <data>
- <row>
- <col id="0" translatable="yes">None</col>
- <col id="1">0</col>
- </row>
- <row>
- <col id="0" translatable="yes">Extra Small (0.16cm)</col>
- <col id="1">91</col>
- </row>
- <row>
- <col id="0" translatable="yes">Small (0.32cm)</col>
- <col id="1">181</col>
- </row>
- <row>
- <col id="0" translatable="yes">Small Medium (0.64cm)</col>
- <col id="1">363</col>
- </row>
- <row>
- <col id="0" translatable="yes">Medium (0.95cm)</col>
- <col id="1">539</col>
- </row>
- <row>
- <col id="0" translatable="yes">Medium Large (1.27cm)</col>
- <col id="1">720</col>
- </row>
- <row>
- <col id="0" translatable="yes">Large (1.9cm)</col>
- <col id="1">1077</col>
- </row>
- <row>
- <col id="0" translatable="yes">Extra Large (2.54cm)</col>
- <col id="1">1440</col>
- </row>
- </data>
- </object>
<object class="GtkGrid" id="PageFooterPanel">
<property name="visible">True</property>
<property name="can_focus">False</property>
@@ -131,8 +89,7 @@
</packing>
</child>
<child>
- <object class="GtkComboBox" id="footermarginpreset">
- <property name="width_request">150</property>
+ <object class="svxcorelo-SpacingListBox" id="footermarginpreset">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="halign">end</property>
@@ -144,8 +101,7 @@
</packing>
</child>
<child>
- <object class="GtkComboBox" id="spacingpreset">
- <property name="width_request">150</property>
+ <object class="svxcorelo-SpacingListBox" id="spacingpreset">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="halign">end</property>
diff --git a/sw/uiconfig/swriter/ui/pageheaderpanel.ui b/sw/uiconfig/swriter/ui/pageheaderpanel.ui
index 90bfb4fb405a..ae0de2874b83 100644
--- a/sw/uiconfig/swriter/ui/pageheaderpanel.ui
+++ b/sw/uiconfig/swriter/ui/pageheaderpanel.ui
@@ -2,48 +2,6 @@
<!-- Generated with glade 3.16.1 -->
<interface>
<requires lib="gtk+" version="3.12"/>
- <object class="GtkListStore" id="spacinglist">
- <columns>
- <!-- column-name gchararray1 -->
- <column type="gchararray"/>
- <!-- column-name gint1 -->
- <column type="gint"/>
- </columns>
- <data>
- <row>
- <col id="0" translatable="yes">None</col>
- <col id="1">0</col>
- </row>
- <row>
- <col id="0" translatable="yes">Extra Small (0.16cm)</col>
- <col id="1">91</col>
- </row>
- <row>
- <col id="0" translatable="yes">Small (0.32cm)</col>
- <col id="1">181</col>
- </row>
- <row>
- <col id="0" translatable="yes">Small Medium (0.64cm)</col>
- <col id="1">363</col>
- </row>
- <row>
- <col id="0" translatable="yes">Medium (0.95cm)</col>
- <col id="1">539</col>
- </row>
- <row>
- <col id="0" translatable="yes">Medium Large (1.27cm)</col>
- <col id="1">720</col>
- </row>
- <row>
- <col id="0" translatable="yes">Large (1.9cm)</col>
- <col id="1">1077</col>
- </row>
- <row>
- <col id="0" translatable="yes">Extra Large (2.54cm)</col>
- <col id="1">1440</col>
- </row>
- </data>
- </object>
<object class="GtkGrid" id="PageHeaderPanel">
<property name="visible">True</property>
<property name="can_focus">False</property>
@@ -131,8 +89,7 @@
</packing>
</child>
<child>
- <object class="GtkComboBox" id="headermarginpreset">
- <property name="width_request">150</property>
+ <object class="svxcorelo-SpacingListBox" id="headermarginpreset">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="halign">end</property>
@@ -144,8 +101,7 @@
</packing>
</child>
<child>
- <object class="GtkComboBox" id="spacingpreset">
- <property name="width_request">150</property>
+ <object class="svxcorelo-SpacingListBox" id="spacingpreset">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="halign">end</property>
diff --git a/sw/uiconfig/swriter/ui/sidebarwrap.ui b/sw/uiconfig/swriter/ui/sidebarwrap.ui
index 0b9b2df70a35..c846adfdc5c4 100644
--- a/sw/uiconfig/swriter/ui/sidebarwrap.ui
+++ b/sw/uiconfig/swriter/ui/sidebarwrap.ui
@@ -2,48 +2,6 @@
<!-- Generated with glade 3.20.0 -->
<interface>
<requires lib="gtk+" version="3.0"/>
- <object class="GtkListStore" id="spacinglist">
- <columns>
- <!-- column-name gchararray1 -->
- <column type="gchararray"/>
- <!-- column-name gint1 -->
- <column type="gint"/>
- </columns>
- <data>
- <row>
- <col id="0" translatable="yes">None</col>
- <col id="1">0</col>
- </row>
- <row>
- <col id="0" translatable="yes">Extra Small (0.16cm)</col>
- <col id="1">91</col>
- </row>
- <row>
- <col id="0" translatable="yes">Small (0.32cm)</col>
- <col id="1">181</col>
- </row>
- <row>
- <col id="0" translatable="yes">Small Medium (0.64cm)</col>
- <col id="1">363</col>
- </row>
- <row>
- <col id="0" translatable="yes">Medium (0.95cm)</col>
- <col id="1">539</col>
- </row>
- <row>
- <col id="0" translatable="yes">Medium Large (1.27cm)</col>
- <col id="1">720</col>
- </row>
- <row>
- <col id="0" translatable="yes">Large (1.9cm)</col>
- <col id="1">1077</col>
- </row>
- <row>
- <col id="0" translatable="yes">Extra Large (2.54cm)</col>
- <col id="1">1440</col>
- </row>
- </data>
- </object>
<object class="GtkGrid" id="WrapPropertyPanel">
<property name="visible">True</property>
<property name="can_focus">False</property>
@@ -68,7 +26,6 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
- <property name="tooltip_markup" translatable="yes">None</property>
<property name="tooltip_text" translatable="yes">None</property>
<property name="action_name">.uno:WrapOff</property>
<property name="xalign">0</property>
@@ -92,7 +49,6 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
- <property name="tooltip_markup" translatable="yes">Parallel</property>
<property name="tooltip_text" translatable="yes">Parallel</property>
<property name="action_name">.uno:WrapOn</property>
<property name="xalign">0</property>
@@ -116,7 +72,6 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
- <property name="tooltip_markup" translatable="yes">Optimal</property>
<property name="tooltip_text" translatable="yes">Optimal</property>
<property name="action_name">.uno:WrapIdeal</property>
<property name="xalign">0</property>
@@ -140,7 +95,6 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
- <property name="tooltip_markup" translatable="yes">Before</property>
<property name="tooltip_text" translatable="yes">Before</property>
<property name="action_name">.uno:WrapLeft</property>
<property name="xalign">0</property>
@@ -164,7 +118,6 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
- <property name="tooltip_markup" translatable="yes">After</property>
<property name="tooltip_text" translatable="yes">After</property>
<property name="action_name">.uno:WrapRight</property>
<property name="xalign">0</property>
@@ -188,7 +141,6 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
- <property name="tooltip_markup" translatable="yes">Through</property>
<property name="tooltip_text" translatable="yes">Through</property>
<property name="action_name">.uno:WrapThrough</property>
<property name="xalign">0</property>
@@ -224,7 +176,6 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
- <property name="tooltip_markup" translatable="yes">Click to automatically trim unnecessary parts of the image</property>
<property name="tooltip_text" translatable="yes">Click to automatically trim unnecessary parts of the image</property>
<property name="xalign">0</property>
<property name="draw_indicator">True</property>
@@ -241,7 +192,6 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
- <property name="tooltip_markup" translatable="yes">Edit the trimmed area of the image</property>
<property name="tooltip_text" translatable="yes">Edit the trimmed area of the image</property>
</object>
<packing>
@@ -275,12 +225,10 @@
</packing>
</child>
<child>
- <object class="GtkComboBox" id="spacingLB">
+ <object class="svxcorelo-SpacingListBox" id="spacingLB">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="tooltip_markup" translatable="yes">Set the amount of space between the image and surrounding text</property>
<property name="tooltip_text" translatable="yes">Set the amount of space between the image and surrounding text</property>
- <property name="model">spacinglist</property>
</object>
<packing>
<property name="expand">False</property>