diff options
author | Michael Meeks <michael.meeks@collabora.com> | 2015-05-15 19:03:44 +0100 |
---|---|---|
committer | Michael Meeks <michael.meeks@collabora.com> | 2015-05-15 19:05:46 +0100 |
commit | 33414c8bf7a4eb8fa912bc0062237637a8e05be2 (patch) | |
tree | e19b16a7a9e7893a7d8f67cd61bc17d86d5c5ef5 /basctl/source/basicide/layout.cxx | |
parent | 72e6c70738a8c78f824319ec2bbf864e9997806b (diff) |
tdf#91239 - return VclPtr's from Create Fn.s and add missing dispose logic.
Change-Id: I802b841040f608b5586704745cc9817603fb1879
Diffstat (limited to 'basctl/source/basicide/layout.cxx')
-rw-r--r-- | basctl/source/basicide/layout.cxx | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/basctl/source/basicide/layout.cxx b/basctl/source/basicide/layout.cxx index 2bca3ce4349b..a42c99cc44ec 100644 --- a/basctl/source/basicide/layout.cxx +++ b/basctl/source/basicide/layout.cxx @@ -60,6 +60,8 @@ Layout::~Layout() void Layout::dispose() { + aLeftSide.dispose(); + aBottomSide.dispose(); pChild.clear(); Window::dispose(); } @@ -178,6 +180,12 @@ Layout::SplittedSide::SplittedSide (Layout* pParent, Side eSide) : InitSplitter(*aSplitter.get()); } +void Layout::SplittedSide::dispose() +{ + aSplitter.disposeAndClear(); + for (auto i = vItems.begin(); i != vItems.end(); ++i) + i->pSplit.disposeAndClear(); +} // Add() -- adds a new window to the side (after construction) void Layout::SplittedSide::Add (DockingWindow* pWin, Size const& rSize) |