diff options
author | Caolán McNamara <caolanm@redhat.com> | 2021-02-19 20:54:17 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2021-02-20 11:28:21 +0100 |
commit | 41fe604a2e48c8c921a29bf4240abf8929582e2e (patch) | |
tree | 83ea7489f9bdd77f61ab3b4c464c51ef56918979 /vcl | |
parent | 1e0ade8b56c644868a72156186ab5c83e2abfb69 (diff) |
merge together interimdockparent usage
and their uses of VclBuilder can be contained to vcl
Change-Id: I0cbbd3175e4ec857187b7f1716232a3514fe9605
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111251
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/source/control/calendar.cxx | 13 | ||||
-rw-r--r-- | vcl/source/window/dockwin.cxx | 20 |
2 files changed, 25 insertions, 8 deletions
diff --git a/vcl/source/control/calendar.cxx b/vcl/source/control/calendar.cxx index 1d714e914e56..e35dc353d442 100644 --- a/vcl/source/control/calendar.cxx +++ b/vcl/source/control/calendar.cxx @@ -1546,23 +1546,21 @@ namespace }; } -struct ImplCFieldFloatWin : public DockingWindow +struct ImplCFieldFloatWin : public InterimDockingWindow { explicit ImplCFieldFloatWin(vcl::Window* pParent); virtual void dispose() override; virtual ~ImplCFieldFloatWin() override; virtual void GetFocus() override; - VclPtr<vcl::Window> mxBox; std::unique_ptr<ImplCFieldFloat> mxWidget; }; ImplCFieldFloatWin::ImplCFieldFloatWin(vcl::Window* pParent) - : DockingWindow(pParent, "InterimDockParent", "vcl/ui/interimdockparent.ui") - , mxBox(m_pUIBuilder->get("box")) + : InterimDockingWindow(pParent) { setDeferredProperties(); - mxWidget.reset(new ImplCFieldFloat(mxBox.get())); + mxWidget.reset(new ImplCFieldFloat(m_xBox.get())); } ImplCFieldFloatWin::~ImplCFieldFloatWin() @@ -1573,13 +1571,12 @@ ImplCFieldFloatWin::~ImplCFieldFloatWin() void ImplCFieldFloatWin::dispose() { mxWidget.reset(); - mxBox.disposeAndClear(); - DockingWindow::dispose(); + InterimDockingWindow::dispose(); } void ImplCFieldFloatWin::GetFocus() { - DockingWindow::GetFocus(); + InterimDockingWindow::GetFocus(); if (!mxWidget) return; mxWidget->GrabFocus(); diff --git a/vcl/source/window/dockwin.cxx b/vcl/source/window/dockwin.cxx index 42a42889a6c6..b2c45fd6c4da 100644 --- a/vcl/source/window/dockwin.cxx +++ b/vcl/source/window/dockwin.cxx @@ -1058,4 +1058,24 @@ IMPL_LINK_NOARG(DockingWindow, ImplHandleLayoutTimerHdl, Timer*, void) setPosSizeOnContainee(); } +InterimDockingWindow::InterimDockingWindow(vcl::Window* pParent, const css::uno::Reference<css::frame::XFrame>& rFrame, bool bTearable) + : DockingWindow(pParent, + !bTearable ? OString("InterimDockParent") : OString("InterimTearableParent"), + !bTearable ? OUString("vcl/ui/interimdockparent.ui") : OUString("vcl/ui/interimtearableparent.ui"), + rFrame) + , m_xBox(m_pUIBuilder->get("box")) +{ +} + +InterimDockingWindow::~InterimDockingWindow() +{ + disposeOnce(); +} + +void InterimDockingWindow::dispose() +{ + m_xBox.clear(); + DockingWindow::dispose(); +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |