summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/editeng/editids.hrc5
-rw-r--r--include/svx/ParaSpacingControl.hxx47
-rw-r--r--svx/sdi/svx.sdi98
-rw-r--r--svx/source/sidebar/paragraph/ParaSpacingControl.cxx91
-rw-r--r--svx/source/sidebar/paragraph/ParaSpacingWindow.cxx58
-rw-r--r--svx/source/sidebar/paragraph/ParaSpacingWindow.hxx44
-rw-r--r--svx/uiconfig/ui/paralrspacing.ui81
-rw-r--r--svx/uiconfig/ui/paraulspacing.ui62
-rw-r--r--sw/sdi/_annotsh.sdi25
-rw-r--r--sw/sdi/_textsh.sdi12
-rw-r--r--sw/sdi/_viewsh.sdi25
-rw-r--r--sw/sdi/drwtxtsh.sdi25
-rw-r--r--sw/source/uibase/app/swmodule.cxx7
-rw-r--r--sw/source/uibase/shells/annotsh.cxx16
-rw-r--r--sw/source/uibase/shells/drwtxtex.cxx14
-rw-r--r--sw/source/uibase/shells/txtattr.cxx5
-rw-r--r--sw/source/uibase/uiview/viewtab.cxx14
-rw-r--r--sw/uiconfig/swriter/ui/notebookbar.ui91
18 files changed, 567 insertions, 153 deletions
diff --git a/include/editeng/editids.hrc b/include/editeng/editids.hrc
index 3f2fd5f65d66..94099c8943a5 100644
--- a/include/editeng/editids.hrc
+++ b/include/editeng/editids.hrc
@@ -68,8 +68,13 @@
#define SID_ATTR_PARA_WIDOWS ( SID_SVX_START + 41 )
#define SID_ATTR_PARA_ULSPACE ( SID_SVX_START + 42 )
#define SID_ATTR_PARA_LRSPACE ( SID_SVX_START + 43 )
+#define SID_ATTR_PARA_LEFTSPACE ( SID_SVX_START + 44 )
+#define SID_ATTR_PARA_RIGHTSPACE ( SID_SVX_START + 45 )
+#define SID_ATTR_PARA_FIRSTLINESPACE ( SID_SVX_START + 46 )
+#define SID_ATTR_PARA_BELOWSPACE ( SID_SVX_START + 47 )
#define SID_ATTR_LRSPACE ( SID_SVX_START + 48 )
#define SID_ATTR_ULSPACE ( SID_SVX_START + 49 )
+#define SID_ATTR_PARA_ABOVESPACE ( SID_SVX_START + 64 )
#define SID_ATTR_PARA_MODEL ( SID_SVX_START + 65 )
#define SID_ATTR_PARA_KEEP ( SID_SVX_START + 66 )
#define SID_ATTR_CHAR_AUTOKERN ( SID_SVX_START + 67 )
diff --git a/include/svx/ParaSpacingControl.hxx b/include/svx/ParaSpacingControl.hxx
index 6efecb8b5289..cefcc81dee30 100644
--- a/include/svx/ParaSpacingControl.hxx
+++ b/include/svx/ParaSpacingControl.hxx
@@ -38,6 +38,24 @@ public:
virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState,
const SfxPoolItem* pState) override;
+ virtual VclPtr<vcl::Window> CreateItemWindow(vcl::Window* pParent) override = 0;
+};
+
+class SVX_DLLPUBLIC ParaAboveSpacingControl : public ParaULSpacingControl
+{
+public:
+ SFX_DECL_TOOLBOX_CONTROL();
+
+ ParaAboveSpacingControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx);
+ virtual VclPtr<vcl::Window> CreateItemWindow(vcl::Window* pParent) override;
+};
+
+class SVX_DLLPUBLIC ParaBelowSpacingControl : public ParaULSpacingControl
+{
+public:
+ SFX_DECL_TOOLBOX_CONTROL();
+
+ ParaBelowSpacingControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx);
virtual VclPtr<vcl::Window> CreateItemWindow(vcl::Window* pParent) override;
};
@@ -54,7 +72,7 @@ public:
virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState,
const SfxPoolItem* pState) override;
- virtual VclPtr<vcl::Window> CreateItemWindow(vcl::Window* pParent) override;
+ virtual VclPtr<vcl::Window> CreateItemWindow(vcl::Window* pParent) override = 0;
// XContextChangeEventListener
virtual void SAL_CALL notifyContextChangeEvent(const css::ui::ContextChangeEventObject& rEvent) override;
@@ -71,6 +89,33 @@ private:
css::uno::Reference<css::ui::XContextChangeEventMultiplexer> m_xMultiplexer;
};
+class SVX_DLLPUBLIC ParaLeftSpacingControl : public ParaLRSpacingControl
+{
+public:
+ SFX_DECL_TOOLBOX_CONTROL();
+
+ ParaLeftSpacingControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx);
+ virtual VclPtr<vcl::Window> CreateItemWindow(vcl::Window* pParent) override;
+};
+
+class SVX_DLLPUBLIC ParaRightSpacingControl : public ParaLRSpacingControl
+{
+public:
+ SFX_DECL_TOOLBOX_CONTROL();
+
+ ParaRightSpacingControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx);
+ virtual VclPtr<vcl::Window> CreateItemWindow(vcl::Window* pParent) override;
+};
+
+class SVX_DLLPUBLIC ParaFirstLineSpacingControl : public ParaLRSpacingControl
+{
+public:
+ SFX_DECL_TOOLBOX_CONTROL();
+
+ ParaFirstLineSpacingControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx);
+ virtual VclPtr<vcl::Window> CreateItemWindow(vcl::Window* pParent) override;
+};
+
}
#endif
diff --git a/svx/sdi/svx.sdi b/svx/sdi/svx.sdi
index 5cd64b4fb6e6..3356f768c946 100644
--- a/svx/sdi/svx.sdi
+++ b/svx/sdi/svx.sdi
@@ -5195,6 +5195,66 @@ SfxVoidItem LeftRightParaMargin SID_ATTR_PARA_LRSPACE
]
+SfxVoidItem LeftParaMargin SID_ATTR_PARA_LEFTSPACE
+
+[
+ AutoUpdate = FALSE,
+ FastCall = TRUE,
+ ReadOnlyDoc = FALSE,
+ Toggle = FALSE,
+ Container = FALSE,
+ RecordAbsolute = FALSE,
+ RecordPerSet;
+
+ SlotType = SvxLRSpaceItem
+
+ AccelConfig = FALSE,
+ MenuConfig = FALSE,
+ ToolBoxConfig = FALSE,
+ GroupId = GID_FORMAT;
+]
+
+
+SfxVoidItem FirstLineParaMargin SID_ATTR_PARA_FIRSTLINESPACE
+
+[
+ AutoUpdate = FALSE,
+ FastCall = TRUE,
+ ReadOnlyDoc = FALSE,
+ Toggle = FALSE,
+ Container = FALSE,
+ RecordAbsolute = FALSE,
+ RecordPerSet;
+
+ SlotType = SvxLRSpaceItem
+
+ AccelConfig = FALSE,
+ MenuConfig = FALSE,
+ ToolBoxConfig = FALSE,
+ GroupId = GID_FORMAT;
+]
+
+
+SfxVoidItem RightParaMargin SID_ATTR_PARA_RIGHTSPACE
+
+[
+ AutoUpdate = FALSE,
+ FastCall = TRUE,
+ ReadOnlyDoc = FALSE,
+ Toggle = FALSE,
+ Container = FALSE,
+ RecordAbsolute = FALSE,
+ RecordPerSet;
+
+ SlotType = SvxLRSpaceItem
+
+ AccelConfig = FALSE,
+ MenuConfig = FALSE,
+ ToolBoxConfig = FALSE,
+ GroupId = GID_FORMAT;
+]
+
+
SfxVoidItem LeftRightParaMargin_Vertical SID_ATTR_PARA_LRSPACE_VERTICAL
(SvxLRSpaceItem LRSpace SID_ATTR_PARA_LRSPACE_VERTICAL)
[
@@ -5506,6 +5566,44 @@ SvxULSpaceItem ULSpacing SID_ATTR_PARA_ULSPACE
]
+SvxULSpaceItem AboveSpacing SID_ATTR_PARA_ABOVESPACE
+
+[
+ AutoUpdate = FALSE,
+ FastCall = FALSE,
+ ReadOnlyDoc = FALSE,
+ Toggle = FALSE,
+ Container = FALSE,
+ RecordAbsolute = FALSE,
+ RecordPerSet;
+
+
+ AccelConfig = FALSE,
+ MenuConfig = FALSE,
+ ToolBoxConfig = FALSE,
+ GroupId = GID_FORMAT;
+]
+
+
+SvxULSpaceItem BelowSpacing SID_ATTR_PARA_BELOWSPACE
+
+[
+ AutoUpdate = FALSE,
+ FastCall = FALSE,
+ ReadOnlyDoc = FALSE,
+ Toggle = FALSE,
+ Container = FALSE,
+ RecordAbsolute = FALSE,
+ RecordPerSet;
+
+
+ AccelConfig = FALSE,
+ MenuConfig = FALSE,
+ ToolBoxConfig = FALSE,
+ GroupId = GID_FORMAT;
+]
+
+
SvxLineItem LineStyle SID_FRAME_LINESTYLE
[
diff --git a/svx/source/sidebar/paragraph/ParaSpacingControl.cxx b/svx/source/sidebar/paragraph/ParaSpacingControl.cxx
index b966cd9fbc13..eea13fb4d039 100644
--- a/svx/source/sidebar/paragraph/ParaSpacingControl.cxx
+++ b/svx/source/sidebar/paragraph/ParaSpacingControl.cxx
@@ -30,8 +30,12 @@
using namespace svx;
-SFX_IMPL_TOOLBOX_CONTROL(ParaULSpacingControl, SvxULSpaceItem);
-SFX_IMPL_TOOLBOX_CONTROL(ParaLRSpacingControl, SvxLRSpaceItem);
+SFX_IMPL_TOOLBOX_CONTROL(ParaAboveSpacingControl, SvxULSpaceItem);
+SFX_IMPL_TOOLBOX_CONTROL(ParaBelowSpacingControl, SvxULSpaceItem);
+
+SFX_IMPL_TOOLBOX_CONTROL(ParaLeftSpacingControl, SvxLRSpaceItem);
+SFX_IMPL_TOOLBOX_CONTROL(ParaRightSpacingControl, SvxLRSpaceItem);
+SFX_IMPL_TOOLBOX_CONTROL(ParaFirstLineSpacingControl, SvxLRSpaceItem);
ParaULSpacingControl::ParaULSpacingControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx)
: SfxToolBoxControl(nSlotId, nId, rTbx)
@@ -64,13 +68,38 @@ void ParaULSpacingControl::StateChanged(sal_uInt16 nSID, SfxItemState eState,
const SfxUInt16Item* pMetricItem = static_cast<const SfxUInt16Item*>(pState);
pWindow->SetUnit((FieldUnit)pMetricItem->GetValue());
}
- else if(nSID == SID_ATTR_PARA_ULSPACE && pState && eState >= SfxItemState::DEFAULT)
+ else if((nSID == SID_ATTR_PARA_ULSPACE
+ || nSID == SID_ATTR_PARA_ABOVESPACE
+ || nSID == SID_ATTR_PARA_BELOWSPACE )
+ && pState && eState >= SfxItemState::DEFAULT)
pWindow->SetValue(static_cast<const SvxULSpaceItem*>(pState));
}
-VclPtr<vcl::Window> ParaULSpacingControl::CreateItemWindow(vcl::Window* pParent)
+// ParaAboveSpacingControl
+
+ParaAboveSpacingControl::ParaAboveSpacingControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx)
+ : ParaULSpacingControl(nSlotId, nId, rTbx)
+{
+}
+
+VclPtr<vcl::Window> ParaAboveSpacingControl::CreateItemWindow(vcl::Window* pParent)
+{
+ VclPtr<ParaAboveSpacingWindow> pWindow = VclPtr<ParaAboveSpacingWindow>::Create(pParent, m_xFrame);
+ pWindow->Show();
+
+ return pWindow;
+}
+
+// ParaBelowSpacingControl
+
+ParaBelowSpacingControl::ParaBelowSpacingControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx)
+ : ParaULSpacingControl(nSlotId, nId, rTbx)
+{
+}
+
+VclPtr<vcl::Window> ParaBelowSpacingControl::CreateItemWindow(vcl::Window* pParent)
{
- VclPtr<ParaULSpacingWindow> pWindow = VclPtr<ParaULSpacingWindow>::Create(pParent, m_xFrame);
+ VclPtr<ParaBelowSpacingWindow> pWindow = VclPtr<ParaBelowSpacingWindow>::Create(pParent, m_xFrame);
pWindow->Show();
return pWindow;
@@ -113,13 +142,12 @@ void ParaLRSpacingControl::StateChanged(sal_uInt16 nSID, SfxItemState eState,
else
pWindow->Enable();
- if(!m_xMultiplexer.is())
+ if(!m_xMultiplexer.is() && m_xFrame.is())
{
m_xMultiplexer = css::ui::ContextChangeEventMultiplexer::get(
::comphelper::getProcessComponentContext());
- if(m_xFrame.is())
- m_xMultiplexer->addContextChangeEventListener(this, m_xFrame->getController());
+ m_xMultiplexer->addContextChangeEventListener(this, m_xFrame->getController());
}
if(nSID == SID_ATTR_METRIC && pState && eState >= SfxItemState::DEFAULT)
@@ -127,7 +155,11 @@ void ParaLRSpacingControl::StateChanged(sal_uInt16 nSID, SfxItemState eState,
const SfxUInt16Item* pMetricItem = static_cast<const SfxUInt16Item*>(pState);
pWindow->SetUnit((FieldUnit)pMetricItem->GetValue());
}
- else if(nSID == SID_ATTR_PARA_LRSPACE)
+ else if(nSID == SID_ATTR_PARA_LRSPACE
+ || nSID == SID_ATTR_PARA_LEFTSPACE
+ || nSID == SID_ATTR_PARA_RIGHTSPACE
+ || nSID == SID_ATTR_PARA_FIRSTLINESPACE
+ )
{
pWindow->SetValue(eState, pState);
}
@@ -172,9 +204,46 @@ void SAL_CALL ParaLRSpacingControl::release() throw ()
SfxToolBoxControl::release();
}
-VclPtr<vcl::Window> ParaLRSpacingControl::CreateItemWindow(vcl::Window* pParent)
+// ParaLeftSpacingControl
+
+ParaLeftSpacingControl::ParaLeftSpacingControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx)
+: ParaLRSpacingControl(nSlotId, nId, rTbx)
+{
+}
+
+VclPtr<vcl::Window> ParaLeftSpacingControl::CreateItemWindow(vcl::Window* pParent)
+{
+ VclPtr<ParaLeftSpacingWindow> pWindow = VclPtr<ParaLeftSpacingWindow>::Create(pParent, m_xFrame);
+ pWindow->Show();
+
+ return pWindow;
+}
+
+// ParaRightSpacingControl
+
+ParaRightSpacingControl::ParaRightSpacingControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx)
+: ParaLRSpacingControl(nSlotId, nId, rTbx)
+{
+}
+
+VclPtr<vcl::Window> ParaRightSpacingControl::CreateItemWindow(vcl::Window* pParent)
+{
+ VclPtr<ParaRightSpacingWindow> pWindow = VclPtr<ParaRightSpacingWindow>::Create(pParent, m_xFrame);
+ pWindow->Show();
+
+ return pWindow;
+}
+
+// ParaFirstLineSpacingControl
+
+ParaFirstLineSpacingControl::ParaFirstLineSpacingControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx)
+: ParaLRSpacingControl(nSlotId, nId, rTbx)
+{
+}
+
+VclPtr<vcl::Window> ParaFirstLineSpacingControl::CreateItemWindow(vcl::Window* pParent)
{
- VclPtr<ParaLRSpacingWindow> pWindow = VclPtr<ParaLRSpacingWindow>::Create(pParent, m_xFrame);
+ VclPtr<ParaFirstLineSpacingWindow> pWindow = VclPtr<ParaFirstLineSpacingWindow>::Create(pParent, m_xFrame);
pWindow->Show();
return pWindow;
diff --git a/svx/source/sidebar/paragraph/ParaSpacingWindow.cxx b/svx/source/sidebar/paragraph/ParaSpacingWindow.cxx
index 8225df98ebf2..542fcfe034dd 100644
--- a/svx/source/sidebar/paragraph/ParaSpacingWindow.cxx
+++ b/svx/source/sidebar/paragraph/ParaSpacingWindow.cxx
@@ -45,6 +45,8 @@ ParaULSpacingWindow::ParaULSpacingWindow(vcl::Window* pParent, css::uno::Referen
get(m_pAboveSpacing, "aboveparaspacing");
get(m_pBelowSpacing, "belowparaspacing");
+ get(m_pAboveContainer, "above");
+ get(m_pBelowContainer, "below");
Link<Edit&,void> aLink = LINK(this, ParaULSpacingWindow, ModifySpacingHdl);
m_pAboveSpacing->SetModifyHdl(aLink);
@@ -60,6 +62,8 @@ void ParaULSpacingWindow::dispose()
{
m_pAboveSpacing.clear();
m_pBelowSpacing.clear();
+ m_pAboveContainer.clear();
+ m_pBelowContainer.clear();
disposeBuilder();
VclVBox::dispose();
@@ -101,6 +105,24 @@ IMPL_LINK_NOARG(ParaULSpacingWindow, ModifySpacingHdl, Edit&, void)
}
}
+// ParaAboveSpacingWindow
+
+ParaAboveSpacingWindow::ParaAboveSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame)
+ : ParaULSpacingWindow(pParent, xFrame)
+{
+ m_pAboveContainer->Show();
+ m_pBelowContainer->Hide();
+}
+
+// ParaBelowSpacingWindow
+
+ParaBelowSpacingWindow::ParaBelowSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame)
+ : ParaULSpacingWindow(pParent, xFrame)
+{
+ m_pAboveContainer->Hide();
+ m_pBelowContainer->Show();
+}
+
// ParaLRSpacingWindow
ParaLRSpacingWindow::ParaLRSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame)
@@ -115,6 +137,9 @@ ParaLRSpacingWindow::ParaLRSpacingWindow(vcl::Window* pParent, css::uno::Referen
get(m_pBeforeSpacing, "beforetextindent");
get(m_pAfterSpacing, "aftertextindent");
get(m_pFLSpacing, "firstlineindent");
+ get(m_pBeforeContainer, "before");
+ get(m_pAfterContainer, "after");
+ get(m_pFirstLineContainer, "firstline");
Link<Edit&,void> aLink = LINK(this, ParaLRSpacingWindow, ModifySpacingHdl);
m_pBeforeSpacing->SetModifyHdl(aLink);
@@ -132,6 +157,9 @@ void ParaLRSpacingWindow::dispose()
m_pBeforeSpacing.clear();
m_pAfterSpacing.clear();
m_pFLSpacing.clear();
+ m_pBeforeContainer.clear();
+ m_pAfterContainer.clear();
+ m_pFirstLineContainer.clear();
disposeBuilder();
VclVBox::dispose();
@@ -264,4 +292,34 @@ IMPL_LINK_NOARG(ParaLRSpacingWindow, ModifySpacingHdl, Edit&, void)
}
}
+// ParaLeftSpacingWindow
+
+ParaLeftSpacingWindow::ParaLeftSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame)
+ : ParaLRSpacingWindow(pParent, xFrame)
+{
+ m_pBeforeContainer->Show();
+ m_pAfterContainer->Hide();
+ m_pFirstLineContainer->Hide();
+}
+
+// ParaRightSpacingWindow
+
+ParaRightSpacingWindow::ParaRightSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame)
+ : ParaLRSpacingWindow(pParent, xFrame)
+{
+ m_pBeforeContainer->Hide();
+ m_pAfterContainer->Show();
+ m_pFirstLineContainer->Hide();
+}
+
+// ParaFirstLineSpacingWindow
+
+ParaFirstLineSpacingWindow::ParaFirstLineSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame)
+ : ParaLRSpacingWindow(pParent, xFrame)
+{
+ m_pBeforeContainer->Hide();
+ m_pAfterContainer->Hide();
+ m_pFirstLineContainer->Show();
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svx/source/sidebar/paragraph/ParaSpacingWindow.hxx b/svx/source/sidebar/paragraph/ParaSpacingWindow.hxx
index b0fbcea4d4ec..ecce558671f6 100644
--- a/svx/source/sidebar/paragraph/ParaSpacingWindow.hxx
+++ b/svx/source/sidebar/paragraph/ParaSpacingWindow.hxx
@@ -38,27 +38,40 @@ class ParaULSpacingWindow : public VclVBox,
{
public:
- explicit ParaULSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame);
virtual ~ParaULSpacingWindow() override;
virtual void dispose() override;
void SetValue(const SvxULSpaceItem* pItem);
void SetUnit(FieldUnit eUnit);
-private:
+protected:
+ ParaULSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame);
VclPtr<SvxRelativeField> m_pAboveSpacing;
VclPtr<SvxRelativeField> m_pBelowSpacing;
+ VclPtr<VclHBox> m_pAboveContainer;
+ VclPtr<VclHBox> m_pBelowContainer;
MapUnit m_eUnit;
DECL_LINK(ModifySpacingHdl, Edit&, void);
};
+class ParaAboveSpacingWindow : public ParaULSpacingWindow
+{
+public:
+ explicit ParaAboveSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame);
+};
+
+class ParaBelowSpacingWindow : public ParaULSpacingWindow
+{
+public:
+ explicit ParaBelowSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame);
+};
+
class ParaLRSpacingWindow : public VclVBox,
public VclBuilderContainer
{
public:
- explicit ParaLRSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame);
virtual ~ParaLRSpacingWindow() override;
virtual void dispose() override;
@@ -66,10 +79,15 @@ public:
void SetUnit(FieldUnit eUnit);
void SetContext(const vcl::EnumContext& eContext);
-private:
+protected:
+ ParaLRSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame);
+
VclPtr<SvxRelativeField> m_pBeforeSpacing;
VclPtr<SvxRelativeField> m_pAfterSpacing;
VclPtr<SvxRelativeField> m_pFLSpacing;
+ VclPtr<VclHBox> m_pBeforeContainer;
+ VclPtr<VclHBox> m_pAfterContainer;
+ VclPtr<VclHBox> m_pFirstLineContainer;
MapUnit m_eUnit;
@@ -78,6 +96,24 @@ private:
DECL_LINK(ModifySpacingHdl, Edit&, void);
};
+class ParaLeftSpacingWindow : public ParaLRSpacingWindow
+{
+public:
+ explicit ParaLeftSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame);
+};
+
+class ParaRightSpacingWindow : public ParaLRSpacingWindow
+{
+public:
+ explicit ParaRightSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame);
+};
+
+class ParaFirstLineSpacingWindow : public ParaLRSpacingWindow
+{
+public:
+ explicit ParaFirstLineSpacingWindow(vcl::Window* pParent, css::uno::Reference<css::frame::XFrame>& xFrame);
+};
+
}
#endif
diff --git a/svx/uiconfig/ui/paralrspacing.ui b/svx/uiconfig/ui/paralrspacing.ui
index a8da5617d745..0e0cd5b45929 100644
--- a/svx/uiconfig/ui/paralrspacing.ui
+++ b/svx/uiconfig/ui/paralrspacing.ui
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.18.3 -->
+<!-- Generated with glade 3.20.0 -->
<interface>
<requires lib="gtk+" version="3.10"/>
<requires lib="LibreOffice" version="1.0"/>
@@ -11,10 +11,8 @@
<object class="GtkGrid" id="grid1">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="row_spacing">1</property>
- <property name="column_spacing">6</property>
<child>
- <object class="GtkBox" id="box67">
+ <object class="GtkBox" id="before">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">6</property>
@@ -24,7 +22,7 @@
<property name="can_focus">False</property>
<property name="halign">center</property>
<property name="valign">center</property>
- <property name="pixbuf">svx/res/symphony/Indent4.png</property>
+ <property name="pixbuf">svx/res/symphony/Indent2.png</property>
</object>
<packing>
<property name="expand">False</property>
@@ -33,15 +31,18 @@
</packing>
</child>
<child>
- <object class="GtkLabel" id="label11">
+ <object class="svxlo-SvxRelativeField" id="beforetextindent">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">Before</property>
+ <property name="can_focus">True</property>
+ <property name="tooltip_text" translatable="yes">Before Text Indent</property>
+ <property name="invisible_char">•</property>
+ <property name="text">0</property>
+ <property name="progress_fraction">0.10000000000000001</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
- <property name="position">1</property>
+ <property name="position">2</property>
</packing>
</child>
</object>
@@ -51,21 +52,7 @@
</packing>
</child>
<child>
- <object class="svxlo-SvxRelativeField" id="beforetextindent">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="tooltip_text" translatable="yes">Before Text Indent</property>
- <property name="invisible_char">•</property>
- <property name="text">0</property>
- <property name="progress_fraction">0.10000000000000001</property>
- </object>
- <packing>
- <property name="left_attach">1</property>
- <property name="top_attach">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox" id="box66">
+ <object class="GtkBox" id="after">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">6</property>
@@ -75,7 +62,7 @@
<property name="can_focus">False</property>
<property name="halign">center</property>
<property name="valign">center</property>
- <property name="pixbuf">svx/res/symphony/Indent3.png</property>
+ <property name="pixbuf">svx/res/symphony/Indent2.png</property>
</object>
<packing>
<property name="expand">False</property>
@@ -84,15 +71,17 @@
</packing>
</child>
<child>
- <object class="GtkLabel" id="label12">
+ <object class="svxlo-SvxRelativeField" id="aftertextindent">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">After</property>
+ <property name="can_focus">True</property>
+ <property name="tooltip_text" translatable="yes">After Text Indent</property>
+ <property name="invisible_char">•</property>
+ <property name="text">0</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
- <property name="position">1</property>
+ <property name="position">2</property>
</packing>
</child>
</object>
@@ -102,20 +91,7 @@
</packing>
</child>
<child>
- <object class="svxlo-SvxRelativeField" id="aftertextindent">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="tooltip_text" translatable="yes">After Text Indent</property>
- <property name="invisible_char">•</property>
- <property name="text">0</property>
- </object>
- <packing>
- <property name="left_attach">1</property>
- <property name="top_attach">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox" id="box30">
+ <object class="GtkBox" id="firstline">
<property name="can_focus">False</property>
<property name="spacing">6</property>
<child>
@@ -133,18 +109,6 @@
</packing>
</child>
<child>
- <object class="GtkLabel" id="label13">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">First line</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
<object class="svxlo-SvxRelativeField" id="firstlineindent">
<property name="visible">True</property>
<property name="can_focus">True</property>
@@ -160,13 +124,10 @@
</child>
</object>
<packing>
- <property name="left_attach">2</property>
- <property name="top_attach">0</property>
+ <property name="left_attach">0</property>
+ <property name="top_attach">2</property>
</packing>
</child>
- <child>
- <placeholder/>
- </child>
</object>
<packing>
<property name="expand">False</property>
diff --git a/svx/uiconfig/ui/paraulspacing.ui b/svx/uiconfig/ui/paraulspacing.ui
index c81bb6a8b377..db62128f1a4f 100644
--- a/svx/uiconfig/ui/paraulspacing.ui
+++ b/svx/uiconfig/ui/paraulspacing.ui
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.18.3 -->
+<!-- Generated with glade 3.20.0 -->
<interface>
<requires lib="gtk+" version="3.10"/>
<requires lib="LibreOffice" version="1.0"/>
@@ -19,7 +19,7 @@
<property name="row_spacing">1</property>
<property name="column_spacing">6</property>
<child>
- <object class="GtkBox" id="box27">
+ <object class="GtkBox" id="above">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">6</property>
@@ -29,7 +29,7 @@
<property name="can_focus">False</property>
<property name="halign">center</property>
<property name="valign">center</property>
- <property name="pixbuf">svx/res/symphony/spacing1.png</property>
+ <property name="pixbuf">svx/res/symphony/spacing2.png</property>
</object>
<packing>
<property name="expand">False</property>
@@ -38,15 +38,19 @@
</packing>
</child>
<child>
- <object class="GtkLabel" id="label2">
+ <object class="svxlo-SvxRelativeField" id="aboveparaspacing">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">Above</property>
+ <property name="can_focus">True</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip_text" translatable="yes">Above Paragraph Spacing</property>
+ <property name="invisible_char">•</property>
+ <property name="text">0</property>
+ <property name="adjustment">adjustment1</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
- <property name="position">1</property>
+ <property name="position">2</property>
</packing>
</child>
</object>
@@ -56,7 +60,7 @@
</packing>
</child>
<child>
- <object class="GtkBox" id="box28">
+ <object class="GtkBox" id="below">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">6</property>
@@ -75,15 +79,19 @@
</packing>
</child>
<child>
- <object class="GtkLabel" id="label10">
+ <object class="svxlo-SvxRelativeField" id="belowparaspacing">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">Below</property>
+ <property name="can_focus">True</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip_text" translatable="yes">Below Paragraph Spacing</property>
+ <property name="invisible_char">•</property>
+ <property name="text">0</property>
+ <property name="adjustment">adjustment1</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
- <property name="position">1</property>
+ <property name="position">2</property>
</packing>
</child>
</object>
@@ -92,36 +100,6 @@
<property name="top_attach">1</property>
</packing>
</child>
- <child>
- <object class="svxlo-SvxRelativeField" id="aboveparaspacing">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="has_tooltip">True</property>
- <property name="tooltip_text" translatable="yes">Above Paragraph Spacing</property>
- <property name="invisible_char">•</property>
- <property name="text">0</property>
- <property name="adjustment">adjustment1</property>
- </object>
- <packing>
- <property name="left_attach">1</property>
- <property name="top_attach">0</property>
- </packing>
- </child>
- <child>
- <object class="svxlo-SvxRelativeField" id="belowparaspacing">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="has_tooltip">True</property>
- <property name="tooltip_text" translatable="yes">Below Paragraph Spacing</property>
- <property name="invisible_char">•</property>
- <property name="text">0</property>
- <property name="adjustment">adjustment1</property>
- </object>
- <packing>
- <property name="left_attach">1</property>
- <property name="top_attach">1</property>
- </packing>
- </child>
</object>
<packing>
<property name="expand">False</property>
diff --git a/sw/sdi/_annotsh.sdi b/sw/sdi/_annotsh.sdi
index e3f9164ea03c..58c5c9581c10 100644
--- a/sw/sdi/_annotsh.sdi
+++ b/sw/sdi/_annotsh.sdi
@@ -190,6 +190,21 @@ interface _Annotation
StateMethod = GetState ;
]
+ SID_ATTR_PARA_LEFTSPACE
+ [
+ StateMethod = GetState ;
+ ]
+
+ SID_ATTR_PARA_RIGHTSPACE
+ [
+ StateMethod = GetState ;
+ ]
+
+ SID_ATTR_PARA_FIRSTLINESPACE
+ [
+ StateMethod = GetState ;
+ ]
+
SID_ATTR_PARA_LINESPACE
[
ExecMethod = Exec;
@@ -202,6 +217,16 @@ interface _Annotation
StateMethod = GetState ;
]
+ SID_ATTR_PARA_ABOVESPACE
+ [
+ StateMethod = GetState ;
+ ]
+
+ SID_ATTR_PARA_BELOWSPACE
+ [
+ StateMethod = GetState ;
+ ]
+
SID_PARASPACE_INCREASE
[
ExecMethod = Exec;
diff --git a/sw/sdi/_textsh.sdi b/sw/sdi/_textsh.sdi
index d691e8e216e1..b15de6f2cfeb 100644
--- a/sw/sdi/_textsh.sdi
+++ b/sw/sdi/_textsh.sdi
@@ -1233,6 +1233,18 @@ interface BaseText
ExecMethod = Execute ;
StateMethod = GetAttrState;
]
+ SID_ATTR_PARA_LEFTSPACE
+ [
+ StateMethod = GetAttrState ;
+ ]
+ SID_ATTR_PARA_RIGHTSPACE
+ [
+ StateMethod = GetAttrState ;
+ ]
+ SID_ATTR_PARA_FIRSTLINESPACE
+ [
+ StateMethod = GetAttrState ;
+ ]
FN_SELECT_PARA // status(final|play)
[
ExecMethod = Execute ;
diff --git a/sw/sdi/_viewsh.sdi b/sw/sdi/_viewsh.sdi
index 8c85e38b7b19..bc40a4dd8940 100644
--- a/sw/sdi/_viewsh.sdi
+++ b/sw/sdi/_viewsh.sdi
@@ -213,6 +213,21 @@ interface BaseTextEditView
StateMethod = StateTabWin ;
DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
]
+ SID_ATTR_PARA_LEFTSPACE
+ [
+ StateMethod = StateTabWin ;
+ DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
+ ]
+ SID_ATTR_PARA_RIGHTSPACE
+ [
+ StateMethod = StateTabWin ;
+ DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
+ ]
+ SID_ATTR_PARA_FIRSTLINESPACE
+ [
+ StateMethod = StateTabWin ;
+ DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
+ ]
SID_ATTR_PARA_LRSPACE_VERTICAL // status()
[
ExecMethod = ExecTabWin ;
@@ -428,6 +443,16 @@ interface BaseTextEditView
StateMethod = StateTabWin ;
]
+ SID_ATTR_PARA_ABOVESPACE
+ [
+ StateMethod = StateTabWin ;
+ ]
+
+ SID_ATTR_PARA_BELOWSPACE
+ [
+ StateMethod = StateTabWin ;
+ ]
+
SID_PARASPACE_INCREASE
[
ExecMethod = ExecTabWin;
diff --git a/sw/sdi/drwtxtsh.sdi b/sw/sdi/drwtxtsh.sdi
index 80085545b181..c2898fb066e0 100644
--- a/sw/sdi/drwtxtsh.sdi
+++ b/sw/sdi/drwtxtsh.sdi
@@ -213,6 +213,21 @@ interface TextDrawText
StateMethod = GetState ;
]
+ SID_ATTR_PARA_LEFTSPACE
+ [
+ StateMethod = GetState ;
+ ]
+
+ SID_ATTR_PARA_RIGHTSPACE
+ [
+ StateMethod = GetState ;
+ ]
+
+ SID_ATTR_PARA_FIRSTLINESPACE
+ [
+ StateMethod = GetState ;
+ ]
+
SID_PARASPACE_INCREASE
[
ExecMethod = Execute;
@@ -239,6 +254,16 @@ interface TextDrawText
StateMethod = GetState ;
]
+ SID_ATTR_PARA_BELOWSPACE
+ [
+ StateMethod = GetState ;
+ ]
+
+ SID_ATTR_PARA_ABOVESPACE
+ [
+ StateMethod = GetState ;
+ ]
+
SID_ATTR_PARA_ADJUST_LEFT // api:
[
ExecMethod = Execute ;
diff --git a/sw/source/uibase/app/swmodule.cxx b/sw/source/uibase/app/swmodule.cxx
index 88ef18e5cdb8..bdbcd5fef3a8 100644
--- a/sw/source/uibase/app/swmodule.cxx
+++ b/sw/source/uibase/app/swmodule.cxx
@@ -290,8 +290,11 @@ void SwDLL::RegisterControls()
svx::ParaLineSpacingPopup::RegisterControl(SID_ATTR_PARA_LINESPACE, pMod);
svx::TextCharacterSpacingPopup::RegisterControl(SID_ATTR_CHAR_KERNING, pMod);
svx::TextUnderlinePopup::RegisterControl(SID_ATTR_CHAR_UNDERLINE, pMod);
- svx::ParaULSpacingControl::RegisterControl(SID_ATTR_PARA_ULSPACE, pMod);
- svx::ParaLRSpacingControl::RegisterControl(SID_ATTR_PARA_LRSPACE, pMod);
+ svx::ParaAboveSpacingControl::RegisterControl(SID_ATTR_PARA_ABOVESPACE, pMod);
+ svx::ParaBelowSpacingControl::RegisterControl(SID_ATTR_PARA_BELOWSPACE, pMod);
+ svx::ParaLeftSpacingControl::RegisterControl(SID_ATTR_PARA_LEFTSPACE, pMod);
+ svx::ParaRightSpacingControl::RegisterControl(SID_ATTR_PARA_RIGHTSPACE, pMod);
+ svx::ParaFirstLineSpacingControl::RegisterControl(SID_ATTR_PARA_FIRSTLINESPACE, pMod);
PageMarginPopup::RegisterControl(SID_ATTR_PAGE_MARGIN, pMod);
PageOrientationPopup::RegisterControl(SID_ATTR_PAGE_ORIENTATION, pMod);
PageColumnPopup::RegisterControl(SID_ATTR_PAGE_COLUMN, pMod);
diff --git a/sw/source/uibase/shells/annotsh.cxx b/sw/source/uibase/shells/annotsh.cxx
index 296345a4d3b6..93a10ee30cac 100644
--- a/sw/source/uibase/shells/annotsh.cxx
+++ b/sw/source/uibase/shells/annotsh.cxx
@@ -642,12 +642,15 @@ void SwAnnotationShell::GetState(SfxItemSet& rSet)
switch( nSlotId )
{
case SID_ATTR_PARA_LRSPACE:
+ case SID_ATTR_PARA_LEFTSPACE:
+ case SID_ATTR_PARA_RIGHTSPACE:
+ case SID_ATTR_PARA_FIRSTLINESPACE:
{
SfxItemState eState = aEditAttr.GetItemState( EE_PARA_LRSPACE );
if( eState >= SfxItemState::DEFAULT )
{
SvxLRSpaceItem aLR = static_cast<const SvxLRSpaceItem&>( aEditAttr.Get( EE_PARA_LRSPACE ) );
- aLR.SetWhich(SID_ATTR_PARA_LRSPACE);
+ aLR.SetWhich(nSlotId);
rSet.Put(aLR);
}
else
@@ -667,6 +670,8 @@ void SwAnnotationShell::GetState(SfxItemSet& rSet)
}
break;
case SID_ATTR_PARA_ULSPACE:
+ case SID_ATTR_PARA_ABOVESPACE:
+ case SID_ATTR_PARA_BELOWSPACE:
case SID_PARASPACE_INCREASE:
case SID_PARASPACE_DECREASE:
{
@@ -678,9 +683,12 @@ void SwAnnotationShell::GetState(SfxItemSet& rSet)
rSet.DisableItem( SID_PARASPACE_DECREASE );
else if ( aULSpace.GetUpper() >= 5670 && aULSpace.GetLower() >= 5670 )
rSet.DisableItem( SID_PARASPACE_INCREASE );
- if ( nSlotId == SID_ATTR_PARA_ULSPACE )
+ if ( nSlotId == SID_ATTR_PARA_ULSPACE
+ || nSlotId == SID_ATTR_PARA_BELOWSPACE
+ || nSlotId == SID_ATTR_PARA_ABOVESPACE
+ )
{
- aULSpace.SetWhich(SID_ATTR_PARA_ULSPACE);
+ aULSpace.SetWhich(nSlotId);
rSet.Put(aULSpace);
}
}
@@ -689,6 +697,8 @@ void SwAnnotationShell::GetState(SfxItemSet& rSet)
rSet.DisableItem( SID_PARASPACE_INCREASE );
rSet.DisableItem( SID_PARASPACE_DECREASE );
rSet.InvalidateItem( SID_ATTR_PARA_ULSPACE );
+ rSet.InvalidateItem( SID_ATTR_PARA_ABOVESPACE );
+ rSet.InvalidateItem( SID_ATTR_PARA_BELOWSPACE );
}
}
break;
diff --git a/sw/source/uibase/shells/drwtxtex.cxx b/sw/source/uibase/shells/drwtxtex.cxx
index 59d12c4fcb97..04e1b6738a46 100644
--- a/sw/source/uibase/shells/drwtxtex.cxx
+++ b/sw/source/uibase/shells/drwtxtex.cxx
@@ -647,6 +647,9 @@ ASK_ADJUST:
break;
case SID_ATTR_PARA_LRSPACE:
+ case SID_ATTR_PARA_LEFTSPACE:
+ case SID_ATTR_PARA_RIGHTSPACE:
+ case SID_ATTR_PARA_FIRSTLINESPACE:
{
SfxItemState eState = aEditAttr.GetItemState(EE_PARA_LRSPACE);
if( eState >= SfxItemState::DEFAULT )
@@ -674,6 +677,8 @@ ASK_ADJUST:
}
break;
case SID_ATTR_PARA_ULSPACE:
+ case SID_ATTR_PARA_BELOWSPACE:
+ case SID_ATTR_PARA_ABOVESPACE:
case SID_PARASPACE_INCREASE:
case SID_PARASPACE_DECREASE:
{
@@ -685,9 +690,12 @@ ASK_ADJUST:
rSet.DisableItem( SID_PARASPACE_DECREASE );
else if ( aULSpace.GetUpper() >= 5670 && aULSpace.GetLower() >= 5670 )
rSet.DisableItem( SID_PARASPACE_INCREASE );
- if ( nSlotId == SID_ATTR_PARA_ULSPACE )
+ if ( nSlotId == SID_ATTR_PARA_ULSPACE
+ || nSlotId == SID_ATTR_PARA_ABOVESPACE
+ || nSlotId == SID_ATTR_PARA_BELOWSPACE
+ )
{
- aULSpace.SetWhich(SID_ATTR_PARA_ULSPACE);
+ aULSpace.SetWhich(nSlotId);
rSet.Put(aULSpace);
}
}
@@ -696,6 +704,8 @@ ASK_ADJUST:
rSet.DisableItem( SID_PARASPACE_INCREASE );
rSet.DisableItem( SID_PARASPACE_DECREASE );
rSet.InvalidateItem( SID_ATTR_PARA_ULSPACE );
+ rSet.InvalidateItem( SID_ATTR_PARA_ABOVESPACE );
+ rSet.InvalidateItem( SID_ATTR_PARA_BELOWSPACE );
}
nSlotId = 0;
}
diff --git a/sw/source/uibase/shells/txtattr.cxx b/sw/source/uibase/shells/txtattr.cxx
index 5b478b23348a..a2313ff8bca3 100644
--- a/sw/source/uibase/shells/txtattr.cxx
+++ b/sw/source/uibase/shells/txtattr.cxx
@@ -718,12 +718,15 @@ void SwTextShell::GetAttrState(SfxItemSet &rSet)
nSlot = 0;
break;
case SID_ATTR_PARA_LRSPACE:
+ case SID_ATTR_PARA_LEFTSPACE:
+ case SID_ATTR_PARA_RIGHTSPACE:
+ case SID_ATTR_PARA_FIRSTLINESPACE:
{
eState = aCoreSet.GetItemState(RES_LR_SPACE);
if( eState >= SfxItemState::DEFAULT )
{
SvxLRSpaceItem aLR = static_cast<const SvxLRSpaceItem&>( aCoreSet.Get( RES_LR_SPACE ) );
- aLR.SetWhich(SID_ATTR_PARA_LRSPACE);
+ aLR.SetWhich(nSlot);
rSet.Put(aLR);
}
else
diff --git a/sw/source/uibase/uiview/viewtab.cxx b/sw/source/uibase/uiview/viewtab.cxx
index 91d61c453fb5..d30dbdb9be68 100644
--- a/sw/source/uibase/uiview/viewtab.cxx
+++ b/sw/source/uibase/uiview/viewtab.cxx
@@ -1423,6 +1423,9 @@ void SwView::StateTabWin(SfxItemSet& rSet)
case SID_ATTR_PARA_LRSPACE_VERTICAL:
case SID_ATTR_PARA_LRSPACE:
+ case SID_ATTR_PARA_LEFTSPACE:
+ case SID_ATTR_PARA_RIGHTSPACE:
+ case SID_ATTR_PARA_FIRSTLINESPACE:
{
if ( nSelType & nsSelectionType::SEL_GRF ||
nSelType & nsSelectionType::SEL_FRM ||
@@ -1462,6 +1465,8 @@ void SwView::StateTabWin(SfxItemSet& rSet)
}
case SID_ATTR_PARA_ULSPACE:
+ case SID_ATTR_PARA_ABOVESPACE:
+ case SID_ATTR_PARA_BELOWSPACE:
case SID_PARASPACE_INCREASE:
case SID_PARASPACE_DECREASE:
{
@@ -1473,9 +1478,12 @@ void SwView::StateTabWin(SfxItemSet& rSet)
rSet.DisableItem( SID_PARASPACE_DECREASE );
else if ( aUL.GetUpper() >= 5670 && aUL.GetLower() >= 5670 )
rSet.DisableItem( SID_PARASPACE_INCREASE );
- if ( nWhich == SID_ATTR_PARA_ULSPACE )
+ if ( nWhich == SID_ATTR_PARA_ULSPACE
+ || nWhich == SID_ATTR_PARA_ABOVESPACE
+ || nWhich == SID_ATTR_PARA_BELOWSPACE
+ )
{
- aUL.SetWhich( SID_ATTR_PARA_ULSPACE );
+ aUL.SetWhich( nWhich );
rSet.Put( aUL );
}
}
@@ -1484,6 +1492,8 @@ void SwView::StateTabWin(SfxItemSet& rSet)
rSet.DisableItem( SID_PARASPACE_INCREASE );
rSet.DisableItem( SID_PARASPACE_DECREASE );
rSet.InvalidateItem( SID_ATTR_PARA_ULSPACE );
+ rSet.InvalidateItem( SID_ATTR_PARA_ABOVESPACE );
+ rSet.InvalidateItem( SID_ATTR_PARA_BELOWSPACE );
}
}
break;
diff --git a/sw/uiconfig/swriter/ui/notebookbar.ui b/sw/uiconfig/swriter/ui/notebookbar.ui
index 9313942dc3b7..9b53ceefd75d 100644
--- a/sw/uiconfig/swriter/ui/notebookbar.ui
+++ b/sw/uiconfig/swriter/ui/notebookbar.ui
@@ -2653,26 +2653,35 @@
<property name="orientation">horizontal</property>
<property name="valign">center</property>
<child>
- <object class="sfxlo-NotebookbarToolBox" id="ulspacing">
- <property name="width_request">200</property>
- <property name="height_request">75</property>
+ <object class="GtkBox" id="box160">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="has_tooltip">True</property>
- <property name="tooltip_text" translatable="yes">Indent</property>
+ <property name="orientation">vertical</property>
<child>
- <object class="GtkToolButton" id="ULSpacing">
- <property name="use_action_appearance">False</property>
+ <object class="sfxlo-NotebookbarToolBox" id="ulspacing">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="halign">start</property>
- <property name="is_important">True</property>
- <property name="action_name">.uno:ULSpacing</property>
- <property name="use_underline">True</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip_text" translatable="yes">Indent</property>
+ <child>
+ <object class="GtkToolButton" id="ULSpacing">
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">start</property>
+ <property name="is_important">True</property>
+ <property name="action_name">.uno:ULSpacing</property>
+ <property name="use_underline">True</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="expand">False</property>
- <property name="homogeneous">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
</object>
@@ -2683,33 +2692,65 @@
</packing>
</child>
<child>
- <object class="sfxlo-NotebookbarToolBox" id="lrspacing">
- <property name="width_request">200</property>
- <property name="height_request">75</property>
+ <object class="GtkBox" id="box161">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="has_tooltip">True</property>
- <property name="tooltip_text" translatable="yes">Indent</property>
+ <property name="orientation">vertical</property>
<child>
- <object class="GtkToolButton" id="LeftRightParaMargin">
- <property name="use_action_appearance">False</property>
+ <object class="sfxlo-NotebookbarToolBox" id="leftspacing">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="halign">start</property>
- <property name="is_important">True</property>
- <property name="action_name">.uno:LeftRightParaMargin</property>
- <property name="use_underline">True</property>
+ <child>
+ <object class="GtkToolButton" id="LeftParaMargin">
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">start</property>
+ <property name="is_important">True</property>
+ <property name="action_name">.uno:LeftParaMargin</property>
+ <property name="use_underline">True</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="expand">False</property>
- <property name="homogeneous">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="sfxlo-NotebookbarToolBox" id="rightspacing">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkToolButton" id="RightParaMargin">
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">start</property>
+ <property name="is_important">True</property>
+ <property name="action_name">.uno:RightParaMargin</property>
+ <property name="use_underline">True</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
- <property name="position">1</property>
+ <property name="position">0</property>
</packing>
</child>
</object>