summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2020-01-27 09:33:12 +0000
committerCaolán McNamara <caolanm@redhat.com>2020-01-27 15:51:55 +0100
commita439167552c1d9e02f3b50759fdbfbea0a3a5709 (patch)
tree87708ab77944f3d07a98d2755da1ed6f21cdfc26
parent556c689a2167d2e383dc896a9b0627b02027338a (diff)
weld LayoutToolbarMenu
Change-Id: I779f631a1c6de42357b53a56582680cf3a7f559d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87507 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--include/svtools/valueset.hxx8
-rw-r--r--include/vcl/controllayout.hxx3
-rw-r--r--sd/UIConfig_simpress.mk1
-rw-r--r--sd/source/ui/controller/slidelayoutcontroller.cxx200
-rw-r--r--sd/source/ui/controller/slidelayoutcontroller.hxx6
-rw-r--r--sd/uiconfig/simpress/ui/layoutwindow.ui147
-rw-r--r--solenv/sanitizers/ui/modules/simpress.suppr1
-rw-r--r--svx/uiconfig/ui/numberingwindow.ui8
8 files changed, 257 insertions, 117 deletions
diff --git a/include/svtools/valueset.hxx b/include/svtools/valueset.hxx
index ad5d408475f9..0044f74d3f72 100644
--- a/include/svtools/valueset.hxx
+++ b/include/svtools/valueset.hxx
@@ -514,7 +514,15 @@ public:
void EnableFullItemMode( bool bFullMode );
void SetColCount( sal_uInt16 nNewCols = 1 );
+ sal_uInt16 GetColCount() const
+ {
+ return mnUserCols;
+ }
void SetLineCount( sal_uInt16 nNewLines = 0 );
+ sal_uInt16 GetLineCount() const
+ {
+ return mnUserVisLines;
+ }
void SetItemWidth( long nItemWidth );
void SetItemHeight( long nLineHeight );
diff --git a/include/vcl/controllayout.hxx b/include/vcl/controllayout.hxx
index 13dd67d4cec0..9f1cf50b40f2 100644
--- a/include/vcl/controllayout.hxx
+++ b/include/vcl/controllayout.hxx
@@ -24,7 +24,8 @@
#include <tools/gen.hxx>
#include <vector>
#include <vcl/dllapi.h>
-#include <vcl/ctrl.hxx>
+
+class Control;
namespace vcl
{
diff --git a/sd/UIConfig_simpress.mk b/sd/UIConfig_simpress.mk
index c5526412d883..09d97c630000 100644
--- a/sd/UIConfig_simpress.mk
+++ b/sd/UIConfig_simpress.mk
@@ -127,6 +127,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/simpress,\
sd/uiconfig/simpress/ui/interactiondialog \
sd/uiconfig/simpress/ui/interactionpage \
sd/uiconfig/simpress/ui/layoutmenu \
+ sd/uiconfig/simpress/ui/layoutwindow \
sd/uiconfig/simpress/ui/masterlayoutdlg \
sd/uiconfig/simpress/ui/mastermenu \
sd/uiconfig/simpress/ui/navigatorpanel \
diff --git a/sd/source/ui/controller/slidelayoutcontroller.cxx b/sd/source/ui/controller/slidelayoutcontroller.cxx
index 4b06d78c73af..3652b74da289 100644
--- a/sd/source/ui/controller/slidelayoutcontroller.cxx
+++ b/sd/source/ui/controller/slidelayoutcontroller.cxx
@@ -50,22 +50,29 @@ namespace sd
namespace {
-class LayoutToolbarMenu : public svtools::ToolbarMenu
+class LayoutToolbarMenu : public WeldToolbarPopup
{
public:
- LayoutToolbarMenu( SlideLayoutController& rController, vcl::Window* pParent, const bool bInsertPage );
- virtual ~LayoutToolbarMenu() override;
- virtual void dispose() override;
+ LayoutToolbarMenu(SlideLayoutController* pController, weld::Widget* pParent, const bool bInsertPage, const OUString& rCommand);
+ virtual void GrabFocus() override
+ {
+ mxLayoutSet1->GrabFocus();
+ }
protected:
- DECL_LINK( SelectToolbarMenuHdl, ToolbarMenu*, void );
- DECL_LINK( SelectValueSetHdl, ValueSet*, void );
- void SelectHdl(void const *);
+ DECL_LINK(SelectToolbarMenuHdl, weld::Button&, void);
+ DECL_LINK(SelectValueSetHdl, SvtValueSet*, void);
+ void SelectHdl(AutoLayout eLayout);
private:
- SlideLayoutController& mrController;
+ rtl::Reference<SlideLayoutController> mxControl;
bool const mbInsertPage;
- VclPtr<ValueSet> mpLayoutSet1;
- VclPtr<ValueSet> mpLayoutSet2;
+ std::unique_ptr<weld::Frame> mxFrame1;
+ std::unique_ptr<SvtValueSet> mxLayoutSet1;
+ std::unique_ptr<weld::CustomWeld> mxLayoutSetWin1;
+ std::unique_ptr<weld::Frame> mxFrame2;
+ std::unique_ptr<SvtValueSet> mxLayoutSet2;
+ std::unique_ptr<weld::CustomWeld> mxLayoutSetWin2;
+ std::unique_ptr<weld::Button> mxMoreButton;
};
struct snewfoil_value_info_layout
@@ -121,7 +128,7 @@ static const snewfoil_value_info_layout v_standard[] =
{nullptr, nullptr, AUTOLAYOUT_NONE}
};
-static void fillLayoutValueSet( ValueSet* pValue, const snewfoil_value_info_layout* pInfo )
+static void fillLayoutValueSet( SvtValueSet* pValue, const snewfoil_value_info_layout* pInfo )
{
Size aLayoutItemSize;
for( ; pInfo->mpStrResId; pInfo++ )
@@ -134,23 +141,38 @@ static void fillLayoutValueSet( ValueSet* pValue, const snewfoil_value_info_layo
}
aLayoutItemSize = pValue->CalcItemSizePixel( aLayoutItemSize );
- pValue->SetSizePixel( pValue->CalcWindowSizePixel( aLayoutItemSize ) );
+ Size aSize(pValue->CalcWindowSizePixel(aLayoutItemSize));
+
+ const sal_Int32 LAYOUT_BORDER_PIX = 7;
+
+ aSize.AdjustWidth((pValue->GetColCount() + 1) * LAYOUT_BORDER_PIX);
+ aSize.AdjustHeight((pValue->GetLineCount() +1) * LAYOUT_BORDER_PIX);
+
+ pValue->GetDrawingArea()->set_size_request(aSize.Width(), aSize.Height());
+ pValue->SetOutputSizePixel(aSize);
}
-LayoutToolbarMenu::LayoutToolbarMenu( SlideLayoutController& rController, vcl::Window* pParent, const bool bInsertPage )
-: svtools::ToolbarMenu( rController.getFrameInterface(), pParent, WB_CLIPCHILDREN )
-, mrController( rController )
-, mbInsertPage( bInsertPage )
-, mpLayoutSet1( nullptr )
-, mpLayoutSet2( nullptr )
+LayoutToolbarMenu::LayoutToolbarMenu(SlideLayoutController* pControl, weld::Widget* pParent, const bool bInsertPage, const OUString& rCommand)
+ : WeldToolbarPopup(pControl->getFrameInterface(), pParent, "modules/simpress/ui/layoutwindow.ui", "LayoutWindow")
+ , mxControl(pControl)
+ , mbInsertPage(bInsertPage)
+ , mxFrame1(m_xBuilder->weld_frame("horiframe"))
+ , mxLayoutSet1(new SvtValueSet(nullptr))
+ , mxLayoutSetWin1(new weld::CustomWeld(*m_xBuilder, "valueset1", *mxLayoutSet1))
+ , mxFrame2(m_xBuilder->weld_frame("vertframe"))
+ , mxLayoutSet2(new SvtValueSet(nullptr))
+ , mxLayoutSetWin2(new weld::CustomWeld(*m_xBuilder, "valueset2", *mxLayoutSet2))
+ , mxMoreButton(m_xBuilder->weld_button("more"))
{
+ mxLayoutSet1->SetStyle(WB_TABSTOP | WB_MENUSTYLEVALUESET | WB_FLATVALUESET | WB_NOBORDER | WB_NO_DIRECTSELECT);
+ mxLayoutSet2->SetStyle(WB_TABSTOP | WB_MENUSTYLEVALUESET | WB_FLATVALUESET | WB_NOBORDER | WB_NO_DIRECTSELECT);
+
DrawViewMode eMode = DrawViewMode_DRAW;
- Reference< XFrame > xFrame( rController.getFrameInterface() );
// find out which view is running
- if( xFrame.is() ) try
+ if( mxFrame.is() ) try
{
- Reference< XPropertySet > xControllerSet( xFrame->getController(), UNO_QUERY_THROW );
+ Reference< XPropertySet > xControllerSet( mxFrame->getController(), UNO_QUERY_THROW );
xControllerSet->getPropertyValue( "DrawViewMode" ) >>= eMode;
}
catch( Exception& )
@@ -158,18 +180,10 @@ LayoutToolbarMenu::LayoutToolbarMenu( SlideLayoutController& rController, vcl::W
OSL_ASSERT(false);
}
- const sal_Int32 LAYOUT_BORDER_PIX = 7;
-
- OUString aTitle1( SdResId( STR_GLUE_ESCDIR_HORZ ) );
- OUString aTitle2( SdResId( STR_GLUE_ESCDIR_VERT ) );
-
SvtLanguageOptions aLanguageOptions;
const bool bVerticalEnabled = aLanguageOptions.IsVerticalTextEnabled();
- SetSelectHdl( LINK( this, LayoutToolbarMenu, SelectToolbarMenuHdl ) );
-
- mpLayoutSet1 = createEmptyValueSetControl();
- mpLayoutSet1->SetSelectHdl( LINK( this, LayoutToolbarMenu, SelectValueSetHdl ) );
+ mxLayoutSet1->SetSelectHdl( LINK( this, LayoutToolbarMenu, SelectValueSetHdl ) );
const snewfoil_value_info_layout* pInfo = nullptr;
sal_Int16 nColCount = 4;
@@ -181,108 +195,73 @@ LayoutToolbarMenu::LayoutToolbarMenu( SlideLayoutController& rController, vcl::W
default: assert(false); // can't happen, will crash later otherwise
}
- mpLayoutSet1->SetColCount( nColCount );
+ mxLayoutSet1->SetColCount( nColCount );
- fillLayoutValueSet( mpLayoutSet1, pInfo );
+ fillLayoutValueSet( mxLayoutSet1.get(), pInfo );
- Size aSize( mpLayoutSet1->GetOutputSizePixel() );
- aSize.AdjustWidth((mpLayoutSet1->GetColCount() + 1) * LAYOUT_BORDER_PIX );
- aSize.AdjustHeight((mpLayoutSet1->GetLineCount() +1) * LAYOUT_BORDER_PIX );
- mpLayoutSet1->SetOutputSizePixel( aSize );
-
- if( bVerticalEnabled && (eMode == DrawViewMode_DRAW) )
- appendEntry( -1, aTitle1 );
- appendEntry( 0, mpLayoutSet1 );
-
- if( bVerticalEnabled && (eMode == DrawViewMode_DRAW) )
+ bool bUseUILabel = (bVerticalEnabled && eMode == DrawViewMode_DRAW);
+ if (!bUseUILabel)
{
- mpLayoutSet2 = VclPtr<ValueSet>::Create( this, WB_TABSTOP | WB_MENUSTYLEVALUESET | WB_FLATVALUESET | WB_NOBORDER | WB_NO_DIRECTSELECT );
-
- mpLayoutSet2->SetSelectHdl( LINK( this, LayoutToolbarMenu, SelectValueSetHdl ) );
- mpLayoutSet2->SetColCount( 4 );
- mpLayoutSet2->EnableFullItemMode( false );
- mpLayoutSet2->SetColor( GetControlBackground() );
+ auto aProperties = vcl::CommandInfoProvider::GetCommandProperties(rCommand, mxControl->getModuleName());
+ mxFrame1->set_label(vcl::CommandInfoProvider::GetLabelForCommand(aProperties));
+ }
- fillLayoutValueSet( mpLayoutSet2, &v_standard[0] );
+ if (bVerticalEnabled && eMode == DrawViewMode_DRAW)
+ {
+ mxLayoutSet2->SetSelectHdl( LINK( this, LayoutToolbarMenu, SelectValueSetHdl ) );
+ mxLayoutSet2->SetColCount( 4 );
+ mxLayoutSet2->EnableFullItemMode( false );
- aSize = mpLayoutSet2->GetOutputSizePixel();
- aSize.AdjustWidth((mpLayoutSet2->GetColCount() + 1) * LAYOUT_BORDER_PIX );
- aSize.AdjustHeight((mpLayoutSet2->GetLineCount() + 1) * LAYOUT_BORDER_PIX );
- mpLayoutSet2->SetOutputSizePixel( aSize );
+ fillLayoutValueSet( mxLayoutSet2.get(), &v_standard[0] );
- appendEntry( -1, aTitle2 );
- appendEntry( 1, mpLayoutSet2 );
+ mxFrame2->show();
}
if( eMode == DrawViewMode_DRAW )
{
- appendSeparator();
-
- OUString sSlotStr;
- Image aSlotImage;
- if( xFrame.is() )
+ if( mxFrame.is() )
{
+ OUString sSlotStr;
+
if( bInsertPage )
sSlotStr = ".uno:DuplicatePage";
else
sSlotStr = ".uno:Undo";
- aSlotImage = vcl::CommandInfoProvider::GetImageForCommand(sSlotStr, xFrame);
+
+ css::uno::Reference<css::graphic::XGraphic> xSlotImage = vcl::CommandInfoProvider::GetXGraphicForCommand(sSlotStr, mxFrame);
OUString sSlotTitle;
if( bInsertPage )
{
- auto aProperties = vcl::CommandInfoProvider::GetCommandProperties(sSlotStr, rController.getModuleName());
+ auto aProperties = vcl::CommandInfoProvider::GetCommandProperties(sSlotStr, mxControl->getModuleName());
sSlotTitle = vcl::CommandInfoProvider::GetLabelForCommand(aProperties);
}
else
sSlotTitle = SdResId( STR_RESET_LAYOUT );
- appendEntry( 2, sSlotTitle, aSlotImage);
+
+ mxMoreButton->set_label(sSlotTitle);
+ mxMoreButton->set_image(xSlotImage);
+ mxMoreButton->connect_clicked(LINK(this, LayoutToolbarMenu, SelectToolbarMenuHdl));
+ mxMoreButton->show();
}
}
-
- SetOutputSizePixel( getMenuSize() );
}
-LayoutToolbarMenu::~LayoutToolbarMenu()
+IMPL_LINK(LayoutToolbarMenu, SelectValueSetHdl, SvtValueSet*, pLayoutSet, void)
{
- disposeOnce();
+ SelectHdl(static_cast<AutoLayout>(pLayoutSet->GetSelectedItemId()-1));
}
-void LayoutToolbarMenu::dispose()
+IMPL_LINK_NOARG(LayoutToolbarMenu, SelectToolbarMenuHdl, weld::Button&, void)
{
- mpLayoutSet1.clear();
- mpLayoutSet2.clear();
- svtools::ToolbarMenu::dispose();
+ SelectHdl(AUTOLAYOUT_END);
}
-IMPL_LINK( LayoutToolbarMenu, SelectValueSetHdl, ValueSet*, pControl, void )
+void LayoutToolbarMenu::SelectHdl(AutoLayout eLayout)
{
- SelectHdl(pControl);
-}
-IMPL_LINK( LayoutToolbarMenu, SelectToolbarMenuHdl, ToolbarMenu *, pControl, void )
-{
- SelectHdl(pControl);
-}
-
-void LayoutToolbarMenu::SelectHdl(void const * pControl)
-{
- if ( IsInPopupMode() )
- EndPopupMode();
-
Sequence< PropertyValue > aArgs;
- AutoLayout eLayout = AUTOLAYOUT_END;
-
- OUString sCommandURL( mrController.getCommandURL() );
-
- if( pControl == mpLayoutSet1 )
- {
- eLayout = static_cast< AutoLayout >(mpLayoutSet1->GetSelectedItemId()-1);
- }
- else if( pControl == mpLayoutSet2 )
- {
- eLayout = static_cast< AutoLayout >(mpLayoutSet2->GetSelectedItemId()-1);
- }
+ OUString sCommandURL( mxControl->getCommandURL() );
if( eLayout != AUTOLAYOUT_END )
{
@@ -295,9 +274,12 @@ void LayoutToolbarMenu::SelectHdl(void const * pControl)
sCommandURL = ".uno:DuplicatePage";
}
- mrController.dispatchCommand( sCommandURL, aArgs );
+ mxControl->dispatchCommand( sCommandURL, aArgs );
+
+ mxControl->EndPopupMode();
}
+
/// @throws css::uno::RuntimeException
static OUString SlideLayoutController_getImplementationName()
{
@@ -324,10 +306,9 @@ static Sequence< OUString > InsertSlideController_getSupportedServiceNames()
return aSNS;
}
-
-SlideLayoutController::SlideLayoutController( const Reference< uno::XComponentContext >& rxContext, const OUString& sCommandURL, bool bInsertPage )
-: svt::PopupWindowController( rxContext, Reference< frame::XFrame >(), sCommandURL )
-, mbInsertPage( bInsertPage )
+SlideLayoutController::SlideLayoutController(const Reference< uno::XComponentContext >& rxContext, bool bInsertPage)
+ : svt::PopupWindowController(rxContext, nullptr, OUString())
+ , mbInsertPage(bInsertPage)
{
}
@@ -346,9 +327,19 @@ void SAL_CALL SlideLayoutController::initialize( const css::uno::Sequence< css::
}
}
+std::unique_ptr<WeldToolbarPopup> SlideLayoutController::weldPopupWindow()
+{
+ return std::make_unique<sd::LayoutToolbarMenu>(this, m_pToolbar, mbInsertPage, m_aCommandURL);
+}
+
VclPtr<vcl::Window> SlideLayoutController::createVclPopupWindow( vcl::Window* pParent )
{
- return VclPtr<sd::LayoutToolbarMenu>::Create( *this, pParent, mbInsertPage );
+ mxInterimPopover = VclPtr<InterimToolbarPopup>::Create(getFrameInterface(), pParent,
+ std::make_unique<sd::LayoutToolbarMenu>(this, pParent->GetFrameWeld(), mbInsertPage, m_aCommandURL));
+
+ mxInterimPopover->Show();
+
+ return mxInterimPopover;
}
// XServiceInfo
@@ -371,19 +362,18 @@ Sequence< OUString > SAL_CALL SlideLayoutController::getSupportedServiceNames(
}
-
extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface*
com_sun_star_comp_sd_SlideLayoutController_get_implementation(css::uno::XComponentContext* context,
css::uno::Sequence<css::uno::Any> const &)
{
- return cppu::acquire(new sd::SlideLayoutController(context, ".uno:AssignLayout", false));
+ return cppu::acquire(new sd::SlideLayoutController(context, false));
}
extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface*
com_sun_star_comp_sd_InsertSlideController_get_implementation(css::uno::XComponentContext* context,
css::uno::Sequence<css::uno::Any> const &)
{
- return cppu::acquire(new sd::SlideLayoutController(context, ".uno:InsertPage", true));
+ return cppu::acquire(new sd::SlideLayoutController(context, true));
}
diff --git a/sd/source/ui/controller/slidelayoutcontroller.hxx b/sd/source/ui/controller/slidelayoutcontroller.hxx
index c5f6cbf189f1..d4f6ca791aae 100644
--- a/sd/source/ui/controller/slidelayoutcontroller.hxx
+++ b/sd/source/ui/controller/slidelayoutcontroller.hxx
@@ -28,10 +28,10 @@ namespace sd
class SlideLayoutController : public svt::PopupWindowController
{
public:
- SlideLayoutController( const css::uno::Reference< css::uno::XComponentContext >& rxContext,
- const OUString& sCommandURL,
- bool bInsertPage );
+ SlideLayoutController(const css::uno::Reference<css::uno::XComponentContext>& rxContext,
+ bool bInsertPage);
+ virtual std::unique_ptr<WeldToolbarPopup> weldPopupWindow() override;
virtual VclPtr<vcl::Window> createVclPopupWindow( vcl::Window* pParent ) override;
// XInitialization
diff --git a/sd/uiconfig/simpress/ui/layoutwindow.ui b/sd/uiconfig/simpress/ui/layoutwindow.ui
new file mode 100644
index 000000000000..359cd42e758f
--- /dev/null
+++ b/sd/uiconfig/simpress/ui/layoutwindow.ui
@@ -0,0 +1,147 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.22.1 -->
+<interface domain="sd">
+ <requires lib="gtk+" version="3.18"/>
+ <object class="GtkPopover" id="LayoutWindow">
+ <property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
+ <property name="border_width">4</property>
+ <child>
+ <object class="GtkBox" id="container">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkFrame" id="horiframe">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <child>
+ <object class="GtkScrolledWindow" id="valuesetwin1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="hscrollbar_policy">never</property>
+ <property name="vscrollbar_policy">never</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkViewport">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkDrawingArea" id="valueset1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="events">GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_STRUCTURE_MASK</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes" context="layoutwindow|label5">Horizontal</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="vertframe">
+ <property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <child>
+ <object class="GtkScrolledWindow" id="valuesetwin2">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="hscrollbar_policy">never</property>
+ <property name="vscrollbar_policy">never</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkViewport">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkDrawingArea" id="valueset2">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="events">GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_STRUCTURE_MASK</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes" context="layoutwindow|label6">Vertical</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="more">
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="no_show_all">True</property>
+ <property name="always_show_image">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+</interface>
diff --git a/solenv/sanitizers/ui/modules/simpress.suppr b/solenv/sanitizers/ui/modules/simpress.suppr
index 5b4f2a641cd7..2a8c37a1487d 100644
--- a/solenv/sanitizers/ui/modules/simpress.suppr
+++ b/solenv/sanitizers/ui/modules/simpress.suppr
@@ -16,6 +16,7 @@ sd/uiconfig/simpress/ui/interactionpage.ui://GtkEntry[@id='bookmark'] no-labelle
sd/uiconfig/simpress/ui/interactionpage.ui://GtkEntry[@id='document'] no-labelled-by
sd/uiconfig/simpress/ui/interactionpage.ui://GtkEntry[@id='program'] no-labelled-by
sd/uiconfig/simpress/ui/interactionpage.ui://GtkEntry[@id='macro'] no-labelled-by
+sd/uiconfig/simpress/ui/layoutwindow.ui://GtkButton[@id='more'] button-no-label
sd/uiconfig/simpress/ui/notebookbar_groups.ui://GtkLabel[@id='filegrouplabel'] orphan-label
sd/uiconfig/simpress/ui/notebookbar_groups.ui://GtkLabel[@id='clipboardgrouplabel'] orphan-label
sd/uiconfig/simpress/ui/notebookbar_groups.ui://svtlo-FontNameBox[@id='fontnamelist'] no-labelled-by
diff --git a/svx/uiconfig/ui/numberingwindow.ui b/svx/uiconfig/ui/numberingwindow.ui
index 3985407910dc..e079de354b90 100644
--- a/svx/uiconfig/ui/numberingwindow.ui
+++ b/svx/uiconfig/ui/numberingwindow.ui
@@ -59,12 +59,4 @@
</object>
</child>
</object>
- <object class="GtkTreeStore" id="liststore1">
- <columns>
- <!-- column-name text -->
- <column type="gchararray"/>
- <!-- column-name id -->
- <column type="gchararray"/>
- </columns>
- </object>
</interface>