[Libreoffice-commits] core.git: Branch 'feature/vclptr' - sc/source sd/source sw/source
Michael Meeks
michael.meeks at collabora.com
Tue Apr 14 01:14:02 PDT 2015
sc/source/ui/sidebar/AlignmentPropertyPanel.cxx | 10 ++--
sc/source/ui/sidebar/AlignmentPropertyPanel.hxx | 2
sc/source/ui/sidebar/CellAppearancePropertyPanel.cxx | 10 ++--
sc/source/ui/sidebar/CellAppearancePropertyPanel.hxx | 2
sc/source/ui/sidebar/NumberFormatPropertyPanel.cxx | 10 ++--
sc/source/ui/sidebar/NumberFormatPropertyPanel.hxx | 2
sc/source/ui/sidebar/ScPanelFactory.cxx | 46 +++++--------------
sd/source/ui/sidebar/AllMasterPagesSelector.cxx | 7 +-
sd/source/ui/sidebar/AllMasterPagesSelector.hxx | 2
sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx | 7 +-
sd/source/ui/sidebar/CurrentMasterPagesSelector.hxx | 2
sd/source/ui/sidebar/PanelFactory.cxx | 14 ++---
sd/source/ui/sidebar/RecentMasterPagesSelector.cxx | 7 +-
sd/source/ui/sidebar/RecentMasterPagesSelector.hxx | 2
sw/source/uibase/sidebar/PagePropertyPanel.cxx | 12 ++--
sw/source/uibase/sidebar/PagePropertyPanel.hxx | 2
sw/source/uibase/sidebar/SwPanelFactory.cxx | 8 +--
sw/source/uibase/sidebar/WrapPropertyPanel.cxx | 12 ++--
sw/source/uibase/sidebar/WrapPropertyPanel.hxx | 2
19 files changed, 73 insertions(+), 86 deletions(-)
New commits:
commit 0baadcea83272588f5a4d1d3a003986afe211a23
Author: Michael Meeks <michael.meeks at collabora.com>
Date: Tue Apr 14 07:49:22 2015 +0100
Re-work app side-bar code to manage objects correctly.
Change-Id: Ie0eb8fe41a9fd4f996f724c47d20d6edecba3672
diff --git a/sc/source/ui/sidebar/AlignmentPropertyPanel.cxx b/sc/source/ui/sidebar/AlignmentPropertyPanel.cxx
index 7bd1fbf..75d054c 100644
--- a/sc/source/ui/sidebar/AlignmentPropertyPanel.cxx
+++ b/sc/source/ui/sidebar/AlignmentPropertyPanel.cxx
@@ -218,7 +218,7 @@ IMPL_LINK(AlignmentPropertyPanel, CBOXWrapTextClkHdl, void*, EMPTYARG)
return 0;
}
-AlignmentPropertyPanel* AlignmentPropertyPanel::Create (
+VclPtr<vcl::Window> AlignmentPropertyPanel::Create (
vcl::Window* pParent,
const css::uno::Reference<css::frame::XFrame>& rxFrame,
SfxBindings* pBindings)
@@ -230,10 +230,10 @@ AlignmentPropertyPanel* AlignmentPropertyPanel::Create (
if (pBindings == NULL)
throw lang::IllegalArgumentException("no SfxBindings given to AlignmentPropertyPanel::Create", NULL, 2);
- return new AlignmentPropertyPanel(
- pParent,
- rxFrame,
- pBindings);
+ return VclPtr<vcl::Window>(
+ new AlignmentPropertyPanel(
+ pParent, rxFrame, pBindings),
+ SAL_NO_ACQUIRE);
}
void AlignmentPropertyPanel::DataChanged(
diff --git a/sc/source/ui/sidebar/AlignmentPropertyPanel.hxx b/sc/source/ui/sidebar/AlignmentPropertyPanel.hxx
index e41aab3..207b110 100644
--- a/sc/source/ui/sidebar/AlignmentPropertyPanel.hxx
+++ b/sc/source/ui/sidebar/AlignmentPropertyPanel.hxx
@@ -39,7 +39,7 @@ class AlignmentPropertyPanel
public ::sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface
{
public:
- static AlignmentPropertyPanel* Create(
+ static VclPtr<vcl::Window> Create(
vcl::Window* pParent,
const css::uno::Reference<css::frame::XFrame>& rxFrame,
SfxBindings* pBindings);
diff --git a/sc/source/ui/sidebar/CellAppearancePropertyPanel.cxx b/sc/source/ui/sidebar/CellAppearancePropertyPanel.cxx
index 2ca87de..4410c79 100644
--- a/sc/source/ui/sidebar/CellAppearancePropertyPanel.cxx
+++ b/sc/source/ui/sidebar/CellAppearancePropertyPanel.cxx
@@ -235,7 +235,7 @@ IMPL_LINK(CellAppearancePropertyPanel, CBOXGridShowClkHdl, void*, EMPTYARG)
return 0;
}
-CellAppearancePropertyPanel* CellAppearancePropertyPanel::Create (
+VclPtr<vcl::Window> CellAppearancePropertyPanel::Create (
vcl::Window* pParent,
const css::uno::Reference<css::frame::XFrame>& rxFrame,
SfxBindings* pBindings)
@@ -247,10 +247,10 @@ CellAppearancePropertyPanel* CellAppearancePropertyPanel::Create (
if (pBindings == NULL)
throw lang::IllegalArgumentException("no SfxBindings given to CellAppearancePropertyPanel::Create", NULL, 2);
- return new CellAppearancePropertyPanel(
- pParent,
- rxFrame,
- pBindings);
+ return VclPtr<vcl::Window>(
+ new CellAppearancePropertyPanel(
+ pParent, rxFrame, pBindings),
+ SAL_NO_ACQUIRE);
}
void CellAppearancePropertyPanel::DataChanged(
diff --git a/sc/source/ui/sidebar/CellAppearancePropertyPanel.hxx b/sc/source/ui/sidebar/CellAppearancePropertyPanel.hxx
index d31b0e2..8bdf1b4 100644
--- a/sc/source/ui/sidebar/CellAppearancePropertyPanel.hxx
+++ b/sc/source/ui/sidebar/CellAppearancePropertyPanel.hxx
@@ -50,7 +50,7 @@ private:
friend class CellBorderStyleControl;
public:
- static CellAppearancePropertyPanel* Create(
+ static VclPtr<vcl::Window> Create(
vcl::Window* pParent,
const css::uno::Reference<css::frame::XFrame>& rxFrame,
SfxBindings* pBindings);
diff --git a/sc/source/ui/sidebar/NumberFormatPropertyPanel.cxx b/sc/source/ui/sidebar/NumberFormatPropertyPanel.cxx
index fb70ac6..6efc79d 100644
--- a/sc/source/ui/sidebar/NumberFormatPropertyPanel.cxx
+++ b/sc/source/ui/sidebar/NumberFormatPropertyPanel.cxx
@@ -178,7 +178,7 @@ IMPL_LINK( NumberFormatPropertyPanel, NumFormatValueHdl, void*, EMPTYARG )
return 0L;
}
-NumberFormatPropertyPanel* NumberFormatPropertyPanel::Create (
+VclPtr<vcl::Window> NumberFormatPropertyPanel::Create (
vcl::Window* pParent,
const css::uno::Reference<css::frame::XFrame>& rxFrame,
SfxBindings* pBindings)
@@ -190,10 +190,10 @@ NumberFormatPropertyPanel* NumberFormatPropertyPanel::Create (
if (pBindings == NULL)
throw lang::IllegalArgumentException("no SfxBindings given to NumberFormatPropertyPanel::Create", NULL, 2);
- return new NumberFormatPropertyPanel(
- pParent,
- rxFrame,
- pBindings);
+ return VclPtr<vcl::Window>(
+ new NumberFormatPropertyPanel(
+ pParent, rxFrame, pBindings),
+ SAL_NO_ACQUIRE);
}
void NumberFormatPropertyPanel::DataChanged(
diff --git a/sc/source/ui/sidebar/NumberFormatPropertyPanel.hxx b/sc/source/ui/sidebar/NumberFormatPropertyPanel.hxx
index 8747f2d..ded7589 100644
--- a/sc/source/ui/sidebar/NumberFormatPropertyPanel.hxx
+++ b/sc/source/ui/sidebar/NumberFormatPropertyPanel.hxx
@@ -37,7 +37,7 @@ class NumberFormatPropertyPanel
{
public:
public:
- static NumberFormatPropertyPanel* Create(
+ static VclPtr<vcl::Window> Create(
vcl::Window* pParent,
const css::uno::Reference<css::frame::XFrame>& rxFrame,
SfxBindings* pBindings);
diff --git a/sc/source/ui/sidebar/ScPanelFactory.cxx b/sc/source/ui/sidebar/ScPanelFactory.cxx
index b0d4c8f..119eb66 100644
--- a/sc/source/ui/sidebar/ScPanelFactory.cxx
+++ b/sc/source/ui/sidebar/ScPanelFactory.cxx
@@ -108,51 +108,31 @@ Reference<ui::XUIElement> SAL_CALL ScPanelFactory::createUIElement (
"PanelFactory::createUIElement called without SfxBindings",
NULL);
+ sal_Int32 nMinimumSize = -1;
+ VclPtr<vcl::Window> pPanel;
if (rsResourceURL.endsWith("/AlignmentPropertyPanel"))
- {
- AlignmentPropertyPanel* pPanel = AlignmentPropertyPanel::Create( pParentWindow, xFrame, pBindings );
- xElement = sfx2::sidebar::SidebarPanelBase::Create(
- rsResourceURL,
- xFrame,
- pPanel,
- ui::LayoutSize(-1,-1,-1));
- }
+ pPanel = AlignmentPropertyPanel::Create( pParentWindow, xFrame, pBindings );
else if (rsResourceURL.endsWith("/CellAppearancePropertyPanel"))
- {
- CellAppearancePropertyPanel* pPanel = CellAppearancePropertyPanel::Create( pParentWindow, xFrame, pBindings );
- xElement = sfx2::sidebar::SidebarPanelBase::Create(
- rsResourceURL,
- xFrame,
- pPanel,
- ui::LayoutSize(-1,-1,-1));
- }
+ pPanel = CellAppearancePropertyPanel::Create( pParentWindow, xFrame, pBindings );
else if (rsResourceURL.endsWith("/NumberFormatPropertyPanel"))
- {
- NumberFormatPropertyPanel* pPanel = NumberFormatPropertyPanel::Create( pParentWindow, xFrame, pBindings );
- xElement = sfx2::sidebar::SidebarPanelBase::Create(
- rsResourceURL,
- xFrame,
- pPanel,
- ui::LayoutSize(-1,-1,-1));
- }
+ pPanel = NumberFormatPropertyPanel::Create( pParentWindow, xFrame, pBindings );
else if (rsResourceURL.endsWith("/NavigatorPanel"))
{
- vcl::Window* pPanel = new ScNavigatorDlg(pBindings, NULL, pParentWindow, false);
- xElement = sfx2::sidebar::SidebarPanelBase::Create(
- rsResourceURL,
- xFrame,
- pPanel,
- ui::LayoutSize(0,-1,-1));
+ pPanel = VclPtr<vcl::Window>(new ScNavigatorDlg(pBindings, NULL, pParentWindow, false), SAL_NO_ACQUIRE);
+ nMinimumSize = 0;
}
else if (rsResourceURL.endsWith("/FunctionsPanel"))
{
- vcl::Window* pPanel = new ScFunctionDockWin(pBindings, NULL, pParentWindow, ScResId(FID_FUNCTION_BOX));
+ pPanel = VclPtr<vcl::Window>(new ScFunctionDockWin(pBindings, NULL, pParentWindow, ScResId(FID_FUNCTION_BOX)), SAL_NO_ACQUIRE);;
+ nMinimumSize = 0;
+ }
+
+ if (pPanel)
xElement = sfx2::sidebar::SidebarPanelBase::Create(
rsResourceURL,
xFrame,
pPanel,
- ui::LayoutSize(0,-1,-1));
- }
+ ui::LayoutSize(nMinimumSize,-1,-1));
}
catch (const uno::RuntimeException &)
{
diff --git a/sd/source/ui/sidebar/AllMasterPagesSelector.cxx b/sd/source/ui/sidebar/AllMasterPagesSelector.cxx
index d633cfe..fc30395 100644
--- a/sd/source/ui/sidebar/AllMasterPagesSelector.cxx
+++ b/sd/source/ui/sidebar/AllMasterPagesSelector.cxx
@@ -77,7 +77,7 @@ public:
SortedMasterPageDescriptorList (void) {}
};
-MasterPagesSelector* AllMasterPagesSelector::Create (
+VclPtr<vcl::Window> AllMasterPagesSelector::Create (
vcl::Window* pParent,
ViewShellBase& rViewShellBase,
const css::uno::Reference<css::ui::XSidebar>& rxSidebar)
@@ -88,13 +88,14 @@ MasterPagesSelector* AllMasterPagesSelector::Create (
::boost::shared_ptr<MasterPageContainer> pContainer (new MasterPageContainer());
- MasterPagesSelector* pSelector(
+ VclPtr<MasterPagesSelector> pSelector(
new AllMasterPagesSelector (
pParent,
*pDocument,
rViewShellBase,
pContainer,
- rxSidebar));
+ rxSidebar),
+ SAL_NO_ACQUIRE);
pSelector->LateInit();
pSelector->SetHelpId(HID_SD_TASK_PANE_PREVIEW_ALL);
diff --git a/sd/source/ui/sidebar/AllMasterPagesSelector.hxx b/sd/source/ui/sidebar/AllMasterPagesSelector.hxx
index e313587..5e57415 100644
--- a/sd/source/ui/sidebar/AllMasterPagesSelector.hxx
+++ b/sd/source/ui/sidebar/AllMasterPagesSelector.hxx
@@ -37,7 +37,7 @@ class AllMasterPagesSelector
: public MasterPagesSelector
{
public:
- static MasterPagesSelector* Create (
+ static VclPtr<vcl::Window> Create (
vcl::Window* pParent,
ViewShellBase& rViewShellBase,
const css::uno::Reference<css::ui::XSidebar>& rxSidebar);
diff --git a/sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx b/sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx
index c07f096..16081f2 100644
--- a/sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx
+++ b/sd/source/ui/sidebar/CurrentMasterPagesSelector.cxx
@@ -42,7 +42,7 @@ using namespace ::com::sun::star;
namespace sd { namespace sidebar {
-MasterPagesSelector* CurrentMasterPagesSelector::Create (
+VclPtr<vcl::Window> CurrentMasterPagesSelector::Create (
vcl::Window* pParent,
ViewShellBase& rViewShellBase,
const css::uno::Reference<css::ui::XSidebar>& rxSidebar)
@@ -53,13 +53,14 @@ MasterPagesSelector* CurrentMasterPagesSelector::Create (
::boost::shared_ptr<MasterPageContainer> pContainer (new MasterPageContainer());
- MasterPagesSelector* pSelector(
+ VclPtr<MasterPagesSelector> pSelector(
new CurrentMasterPagesSelector (
pParent,
*pDocument,
rViewShellBase,
pContainer,
- rxSidebar));
+ rxSidebar),
+ SAL_NO_ACQUIRE);
pSelector->LateInit();
pSelector->SetHelpId( HID_SD_TASK_PANE_PREVIEW_CURRENT );
diff --git a/sd/source/ui/sidebar/CurrentMasterPagesSelector.hxx b/sd/source/ui/sidebar/CurrentMasterPagesSelector.hxx
index e1d2bb2..29d26cb 100644
--- a/sd/source/ui/sidebar/CurrentMasterPagesSelector.hxx
+++ b/sd/source/ui/sidebar/CurrentMasterPagesSelector.hxx
@@ -35,7 +35,7 @@ class CurrentMasterPagesSelector
public SfxListener
{
public:
- static MasterPagesSelector* Create (
+ static VclPtr<vcl::Window> Create (
vcl::Window* pParent,
ViewShellBase& rViewShellBase,
const css::uno::Reference<css::ui::XSidebar>& rxSidebar);
diff --git a/sd/source/ui/sidebar/PanelFactory.cxx b/sd/source/ui/sidebar/PanelFactory.cxx
index 03dbdda..20f4525 100644
--- a/sd/source/ui/sidebar/PanelFactory.cxx
+++ b/sd/source/ui/sidebar/PanelFactory.cxx
@@ -120,14 +120,14 @@ Reference<ui::XUIElement> SAL_CALL PanelFactory::createUIElement (
SfxBindings* pBindings = reinterpret_cast<SfxBindings*>(nBindingsValue);
// Create a framework view.
- vcl::Window* pControl = NULL;
+ VclPtr<vcl::Window> pControl;
css::ui::LayoutSize aLayoutSize (-1,-1,-1);
#define EndsWith(s,t) s.endsWithAsciiL(t,strlen(t))
if (EndsWith(rsUIElementResourceURL, gsResourceNameCustomAnimations))
- pControl = new CustomAnimationPanel(pParentWindow, *pBase, xFrame);
+ pControl = VclPtr<vcl::Window>(new CustomAnimationPanel(pParentWindow, *pBase, xFrame), SAL_NO_ACQUIRE);
else if (EndsWith(rsUIElementResourceURL, gsResourceNameLayouts))
- pControl = new LayoutMenu(pParentWindow, *pBase, xSidebar);
+ pControl = VclPtr<vcl::Window>(new LayoutMenu(pParentWindow, *pBase, xSidebar), SAL_NO_ACQUIRE);
else if (EndsWith(rsUIElementResourceURL, gsResourceNameAllMasterPages))
pControl = AllMasterPagesSelector::Create(pParentWindow, *pBase, xSidebar);
else if (EndsWith(rsUIElementResourceURL, gsResourceNameRecentMasterPages))
@@ -135,14 +135,14 @@ Reference<ui::XUIElement> SAL_CALL PanelFactory::createUIElement (
else if (EndsWith(rsUIElementResourceURL, gsResourceNameUsedMasterPages))
pControl = CurrentMasterPagesSelector::Create(pParentWindow, *pBase, xSidebar);
else if (EndsWith(rsUIElementResourceURL, gsResourceNameSlideTransitions))
- pControl = new SlideTransitionPanel(pParentWindow, *pBase, xFrame);
+ pControl = VclPtr<vcl::Window>(new SlideTransitionPanel(pParentWindow, *pBase, xFrame), SAL_NO_ACQUIRE);
else if (EndsWith(rsUIElementResourceURL, gsResourceNameTableDesign))
- pControl = new TableDesignPanel(pParentWindow, *pBase);
+ pControl = VclPtr<vcl::Window>(new TableDesignPanel(pParentWindow, *pBase), SAL_NO_ACQUIRE);
else if (EndsWith(rsUIElementResourceURL, gsResourceNameNavigator))
- pControl = new NavigatorWrapper(pParentWindow, *pBase, pBindings);
+ pControl = VclPtr<vcl::Window>(new NavigatorWrapper(pParentWindow, *pBase, pBindings), SAL_NO_ACQUIRE);
#undef EndsWith
- if (pControl == NULL)
+ if (!pControl)
throw lang::IllegalArgumentException();
// Create a wrapper around the control that implements the
diff --git a/sd/source/ui/sidebar/RecentMasterPagesSelector.cxx b/sd/source/ui/sidebar/RecentMasterPagesSelector.cxx
index e3b7b2a..348088b 100644
--- a/sd/source/ui/sidebar/RecentMasterPagesSelector.cxx
+++ b/sd/source/ui/sidebar/RecentMasterPagesSelector.cxx
@@ -32,7 +32,7 @@
namespace sd { namespace sidebar {
-MasterPagesSelector* RecentMasterPagesSelector::Create (
+VclPtr<vcl::Window> RecentMasterPagesSelector::Create (
vcl::Window* pParent,
ViewShellBase& rViewShellBase,
const css::uno::Reference<css::ui::XSidebar>& rxSidebar)
@@ -43,13 +43,14 @@ MasterPagesSelector* RecentMasterPagesSelector::Create (
::boost::shared_ptr<MasterPageContainer> pContainer (new MasterPageContainer());
- MasterPagesSelector* pSelector(
+ VclPtr<MasterPagesSelector> pSelector(
new RecentMasterPagesSelector (
pParent,
*pDocument,
rViewShellBase,
pContainer,
- rxSidebar));
+ rxSidebar),
+ SAL_NO_ACQUIRE);
pSelector->LateInit();
pSelector->SetHelpId(HID_SD_TASK_PANE_PREVIEW_RECENT);
diff --git a/sd/source/ui/sidebar/RecentMasterPagesSelector.hxx b/sd/source/ui/sidebar/RecentMasterPagesSelector.hxx
index 8f64a43..f565ec6 100644
--- a/sd/source/ui/sidebar/RecentMasterPagesSelector.hxx
+++ b/sd/source/ui/sidebar/RecentMasterPagesSelector.hxx
@@ -30,7 +30,7 @@ class RecentMasterPagesSelector
: public MasterPagesSelector
{
public:
- static MasterPagesSelector* Create (
+ static VclPtr<vcl::Window> Create (
vcl::Window* pParent,
ViewShellBase& rViewShellBase,
const css::uno::Reference<css::ui::XSidebar>& rxSidebar);
diff --git a/sw/source/uibase/sidebar/PagePropertyPanel.cxx b/sw/source/uibase/sidebar/PagePropertyPanel.cxx
index c04874d..53fd3af 100644
--- a/sw/source/uibase/sidebar/PagePropertyPanel.cxx
+++ b/sw/source/uibase/sidebar/PagePropertyPanel.cxx
@@ -83,7 +83,7 @@ namespace {
namespace sw { namespace sidebar {
-PagePropertyPanel* PagePropertyPanel::Create (
+VclPtr<vcl::Window> PagePropertyPanel::Create (
vcl::Window* pParent,
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame>& rxFrame,
SfxBindings* pBindings)
@@ -95,10 +95,12 @@ PagePropertyPanel* PagePropertyPanel::Create (
if (pBindings == NULL)
throw ::com::sun::star::lang::IllegalArgumentException("no SfxBindings given to PagePropertyPanel::Create", NULL, 2);
- return new PagePropertyPanel(
- pParent,
- rxFrame,
- pBindings);
+ return VclPtr<vcl::Window>(
+ new PagePropertyPanel(
+ pParent,
+ rxFrame,
+ pBindings),
+ SAL_NO_ACQUIRE);
}
PagePropertyPanel::PagePropertyPanel(
diff --git a/sw/source/uibase/sidebar/PagePropertyPanel.hxx b/sw/source/uibase/sidebar/PagePropertyPanel.hxx
index f9dd2c0..d97d27a 100644
--- a/sw/source/uibase/sidebar/PagePropertyPanel.hxx
+++ b/sw/source/uibase/sidebar/PagePropertyPanel.hxx
@@ -55,7 +55,7 @@ namespace sw { namespace sidebar {
public ::sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface
{
public:
- static PagePropertyPanel* Create(
+ static VclPtr<vcl::Window> Create(
vcl::Window* pParent,
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame>& rxFrame,
SfxBindings* pBindings );
diff --git a/sw/source/uibase/sidebar/SwPanelFactory.cxx b/sw/source/uibase/sidebar/SwPanelFactory.cxx
index cc79840..361978b 100644
--- a/sw/source/uibase/sidebar/SwPanelFactory.cxx
+++ b/sw/source/uibase/sidebar/SwPanelFactory.cxx
@@ -119,7 +119,7 @@ Reference<ui::XUIElement> SAL_CALL SwPanelFactory::createUIElement (
if (rsResourceURL.endsWith("/PagePropertyPanel"))
{
- sw::sidebar::PagePropertyPanel* pPanel = sw::sidebar::PagePropertyPanel::Create( pParentWindow, xFrame, pBindings );
+ VclPtr<vcl::Window> pPanel = sw::sidebar::PagePropertyPanel::Create( pParentWindow, xFrame, pBindings );
xElement = sfx2::sidebar::SidebarPanelBase::Create(
rsResourceURL,
xFrame,
@@ -128,7 +128,7 @@ Reference<ui::XUIElement> SAL_CALL SwPanelFactory::createUIElement (
}
else if (rsResourceURL.endsWith("/WrapPropertyPanel"))
{
- sw::sidebar::WrapPropertyPanel* pPanel = sw::sidebar::WrapPropertyPanel::Create( pParentWindow, xFrame, pBindings );
+ VclPtr<vcl::Window> pPanel = sw::sidebar::WrapPropertyPanel::Create( pParentWindow, xFrame, pBindings );
xElement = sfx2::sidebar::SidebarPanelBase::Create(
rsResourceURL,
xFrame,
@@ -137,7 +137,7 @@ Reference<ui::XUIElement> SAL_CALL SwPanelFactory::createUIElement (
}
else if (rsResourceURL.endsWith("/NavigatorPanel"))
{
- vcl::Window* pPanel = new SwNavigationPI(pBindings, NULL, pParentWindow);
+ VclPtr<vcl::Window> pPanel( new SwNavigationPI(pBindings, NULL, pParentWindow), SAL_NO_ACQUIRE );
xElement = sfx2::sidebar::SidebarPanelBase::Create(
rsResourceURL,
xFrame,
@@ -146,7 +146,7 @@ Reference<ui::XUIElement> SAL_CALL SwPanelFactory::createUIElement (
}
else if (rsResourceURL.endsWith("/ManageChangesPanel"))
{
- vcl::Window* pPanel = new SwRedlineAcceptPanel(pParentWindow, xFrame);
+ VclPtr<vcl::Window> pPanel( new SwRedlineAcceptPanel(pParentWindow, xFrame), SAL_NO_ACQUIRE );
xElement = sfx2::sidebar::SidebarPanelBase::Create(
rsResourceURL,
xFrame,
diff --git a/sw/source/uibase/sidebar/WrapPropertyPanel.cxx b/sw/source/uibase/sidebar/WrapPropertyPanel.cxx
index 71c873f..39f68c3 100644
--- a/sw/source/uibase/sidebar/WrapPropertyPanel.cxx
+++ b/sw/source/uibase/sidebar/WrapPropertyPanel.cxx
@@ -42,7 +42,7 @@ const char UNO_WRAPIDEAL[] = ".uno:WrapIdeal";
namespace sw { namespace sidebar {
-WrapPropertyPanel* WrapPropertyPanel::Create (
+VclPtr<vcl::Window> WrapPropertyPanel::Create (
vcl::Window* pParent,
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& rxFrame,
SfxBindings* pBindings)
@@ -54,10 +54,12 @@ WrapPropertyPanel* WrapPropertyPanel::Create (
if (pBindings == NULL)
throw ::com::sun::star::lang::IllegalArgumentException("no SfxBindings given to WrapPropertyPanel::Create", NULL, 2);
- return new WrapPropertyPanel(
- pParent,
- rxFrame,
- pBindings);
+ return VclPtr<vcl::Window>(
+ new WrapPropertyPanel(
+ pParent,
+ rxFrame,
+ pBindings),
+ SAL_NO_ACQUIRE);
}
WrapPropertyPanel::WrapPropertyPanel(
diff --git a/sw/source/uibase/sidebar/WrapPropertyPanel.hxx b/sw/source/uibase/sidebar/WrapPropertyPanel.hxx
index c64b133..4c0291b 100644
--- a/sw/source/uibase/sidebar/WrapPropertyPanel.hxx
+++ b/sw/source/uibase/sidebar/WrapPropertyPanel.hxx
@@ -35,7 +35,7 @@ namespace sw { namespace sidebar {
, public ::sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface
{
public:
- static WrapPropertyPanel* Create(
+ static VclPtr<vcl::Window> Create(
vcl::Window* pParent,
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame>& rxFrame,
SfxBindings* pBindings );
More information about the Libreoffice-commits
mailing list