summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2018-09-10 13:51:08 +0100
committerCaolán McNamara <caolanm@redhat.com>2018-09-10 18:20:55 +0200
commita27ae800fed5a974c9b255f7ce2b38ec2dbaa426 (patch)
treedb7d03ac8da2a73b9424da635ad91b144b1d55d4
parent17cbd1dcd12b140fd22477635edcb9874fbc439a (diff)
weld SvxSingleNumPickTabPage
Change-Id: I6d8cf1d63b30472072e2d464c3ba6f173f4d030f Reviewed-on: https://gerrit.libreoffice.org/60264 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--cui/source/inc/numpages.hxx12
-rw-r--r--cui/source/tabpages/numpages.cxx42
-rw-r--r--cui/uiconfig/ui/picknumberingpage.ui22
3 files changed, 46 insertions, 30 deletions
diff --git a/cui/source/inc/numpages.hxx b/cui/source/inc/numpages.hxx
index 2d22a18b8076..bef652167040 100644
--- a/cui/source/inc/numpages.hxx
+++ b/cui/source/inc/numpages.hxx
@@ -88,7 +88,6 @@ class SvxSingleNumPickTabPage final : public SfxTabPage
using TabPage::ActivatePage;
using TabPage::DeactivatePage;
- VclPtr<SvxNumValueSet> m_pExamplesVS;
SvxNumSettingsArr_Impl aNumSettingsArr;
std::unique_ptr<SvxNumRule> pActNum;
std::unique_ptr<SvxNumRule> pSaveNum;
@@ -98,12 +97,14 @@ class SvxSingleNumPickTabPage final : public SfxTabPage
sal_uInt16 nNumItemId;
- DECL_LINK(NumSelectHdl_Impl, ValueSet*, void);
- DECL_LINK(DoubleClickHdl_Impl, ValueSet*, void);
+ std::unique_ptr<NumValueSet> m_xExamplesVS;
+ std::unique_ptr<weld::CustomWeld> m_xExamplesVSWin;
+
+ DECL_LINK(NumSelectHdl_Impl, SvtValueSet*, void);
+ DECL_LINK(DoubleClickHdl_Impl, SvtValueSet*, void);
public:
- SvxSingleNumPickTabPage(vcl::Window* pParent,
- const SfxItemSet& rSet);
+ SvxSingleNumPickTabPage(TabPageParent pParent, const SfxItemSet& rSet);
virtual ~SvxSingleNumPickTabPage() override;
virtual void dispose() override;
@@ -116,7 +117,6 @@ public:
virtual void Reset( const SfxItemSet* rSet ) override;
};
-
class SvxBulletPickTabPage final : public SfxTabPage
{
using TabPage::ActivatePage;
diff --git a/cui/source/tabpages/numpages.cxx b/cui/source/tabpages/numpages.cxx
index aa40c183bc51..f8a411f9ff4f 100644
--- a/cui/source/tabpages/numpages.cxx
+++ b/cui/source/tabpages/numpages.cxx
@@ -170,19 +170,19 @@ static const vcl::Font& lcl_GetDefaultBulletFont()
return aDefBulletFont;
}
-SvxSingleNumPickTabPage::SvxSingleNumPickTabPage(vcl::Window* pParent,
- const SfxItemSet& rSet)
- : SfxTabPage(pParent, "PickNumberingPage", "cui/ui/picknumberingpage.ui", &rSet)
+SvxSingleNumPickTabPage::SvxSingleNumPickTabPage(TabPageParent pParent, const SfxItemSet& rSet)
+ : SfxTabPage(pParent, "cui/ui/picknumberingpage.ui", "PickNumberingPage", &rSet)
, nActNumLvl(SAL_MAX_UINT16)
, bModified(false)
, bPreset(false)
, nNumItemId(SID_ATTR_NUMBERING_RULE)
+ , m_xExamplesVS(new NumValueSet)
+ , m_xExamplesVSWin(new weld::CustomWeld(*m_xBuilder, "valueset", *m_xExamplesVS))
{
SetExchangeSupport();
- get(m_pExamplesVS, "valueset");
- m_pExamplesVS->init(NumberingPageType::SINGLENUM);
- m_pExamplesVS->SetSelectHdl(LINK(this, SvxSingleNumPickTabPage, NumSelectHdl_Impl));
- m_pExamplesVS->SetDoubleClickHdl(LINK(this, SvxSingleNumPickTabPage, DoubleClickHdl_Impl));
+ m_xExamplesVS->init(NumberingPageType::SINGLENUM);
+ m_xExamplesVS->SetSelectHdl(LINK(this, SvxSingleNumPickTabPage, NumSelectHdl_Impl));
+ m_xExamplesVS->SetDoubleClickHdl(LINK(this, SvxSingleNumPickTabPage, DoubleClickHdl_Impl));
Reference<XDefaultNumberingProvider> xDefNum = SvxNumOptionsTabPageHelper::GetNumberingProvider();
if(xDefNum.is())
@@ -208,7 +208,7 @@ SvxSingleNumPickTabPage::SvxSingleNumPickTabPage(vcl::Window* pParent,
{
}
Reference<XNumberingFormatter> xFormat(xDefNum, UNO_QUERY);
- m_pExamplesVS->SetNumberingSettings(aNumberings, xFormat, rLocale);
+ m_xExamplesVS->SetNumberingSettings(aNumberings, xFormat, rLocale);
}
}
@@ -219,16 +219,15 @@ SvxSingleNumPickTabPage::~SvxSingleNumPickTabPage()
void SvxSingleNumPickTabPage::dispose()
{
- pActNum.reset();
- pSaveNum.reset();
- m_pExamplesVS.clear();
+ m_xExamplesVSWin.reset();
+ m_xExamplesVS.reset();
SfxTabPage::dispose();
}
-VclPtr<SfxTabPage> SvxSingleNumPickTabPage::Create( TabPageParent pParent,
- const SfxItemSet* rAttrSet)
+VclPtr<SfxTabPage> SvxSingleNumPickTabPage::Create(TabPageParent pParent,
+ const SfxItemSet* rAttrSet)
{
- return VclPtr<SvxSingleNumPickTabPage>::Create(pParent.pParent, *rAttrSet);
+ return VclPtr<SvxSingleNumPickTabPage>::Create(pParent, *rAttrSet);
}
bool SvxSingleNumPickTabPage::FillItemSet( SfxItemSet* rSet )
@@ -263,13 +262,13 @@ void SvxSingleNumPickTabPage::ActivatePage(const SfxItemSet& rSet)
if(pActNum && *pSaveNum != *pActNum)
{
*pActNum = *pSaveNum;
- m_pExamplesVS->SetNoSelection();
+ m_xExamplesVS->SetNoSelection();
}
if(pActNum && (!lcl_IsNumFmtSet(pActNum.get(), nActNumLvl) || bIsPreset))
{
- m_pExamplesVS->SelectItem(1);
- NumSelectHdl_Impl(m_pExamplesVS);
+ m_xExamplesVS->SelectItem(1);
+ NumSelectHdl_Impl(m_xExamplesVS.get());
bPreset = true;
}
bPreset |= bIsPreset;
@@ -310,13 +309,13 @@ void SvxSingleNumPickTabPage::Reset( const SfxItemSet* rSet )
*pActNum = *pSaveNum;
}
-IMPL_LINK_NOARG(SvxSingleNumPickTabPage, NumSelectHdl_Impl, ValueSet*, void)
+IMPL_LINK_NOARG(SvxSingleNumPickTabPage, NumSelectHdl_Impl, SvtValueSet*, void)
{
if(pActNum)
{
bPreset = false;
bModified = true;
- sal_uInt16 nIdx = m_pExamplesVS->GetSelectedItemId() - 1;
+ sal_uInt16 nIdx = m_xExamplesVS->GetSelectedItemId() - 1;
DBG_ASSERT(aNumSettingsArr.size() > nIdx, "wrong index");
if(aNumSettingsArr.size() <= nIdx)
return;
@@ -349,14 +348,13 @@ IMPL_LINK_NOARG(SvxSingleNumPickTabPage, NumSelectHdl_Impl, ValueSet*, void)
}
}
-IMPL_LINK_NOARG(SvxSingleNumPickTabPage, DoubleClickHdl_Impl, ValueSet*, void)
+IMPL_LINK_NOARG(SvxSingleNumPickTabPage, DoubleClickHdl_Impl, SvtValueSet*, void)
{
- NumSelectHdl_Impl(m_pExamplesVS);
+ NumSelectHdl_Impl(m_xExamplesVS.get());
PushButton& rOk = GetTabDialog()->GetOKButton();
rOk.GetClickHdl().Call(&rOk);
}
-
SvxBulletPickTabPage::SvxBulletPickTabPage(TabPageParent pParent, const SfxItemSet& rSet)
: SfxTabPage(pParent, "cui/ui/pickbulletpage.ui", "PickBulletPage", &rSet)
, nActNumLvl(SAL_MAX_UINT16)
diff --git a/cui/uiconfig/ui/picknumberingpage.ui b/cui/uiconfig/ui/picknumberingpage.ui
index 13eb0317c380..1dc87446970b 100644
--- a/cui/uiconfig/ui/picknumberingpage.ui
+++ b/cui/uiconfig/ui/picknumberingpage.ui
@@ -18,11 +18,29 @@
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <object class="svxlo-SvxNumValueSet" id="valueset">
+ <object class="GtkScrolledWindow" id="valuesetwin">
<property name="visible">True</property>
- <property name="can_focus">False</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="valueset">
+ <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>