summaryrefslogtreecommitdiff
path: root/sfx2/source/inc/workwin.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'sfx2/source/inc/workwin.hxx')
-rw-r--r--sfx2/source/inc/workwin.hxx11
1 files changed, 11 insertions, 0 deletions
diff --git a/sfx2/source/inc/workwin.hxx b/sfx2/source/inc/workwin.hxx
index 7b37d065afa4..38c41653dfdb 100644
--- a/sfx2/source/inc/workwin.hxx
+++ b/sfx2/source/inc/workwin.hxx
@@ -84,6 +84,7 @@ namespace o3tl
struct SfxChild_Impl
{
VclPtr<vcl::Window> pWin;
+ std::shared_ptr<SfxModelessDialogController> xController;
Size aSize;
SfxChildAlignment eAlign;
SfxChildVisibility nVisible;
@@ -97,6 +98,14 @@ struct SfxChild_Impl
{
nVisible = bIsVisible ? SfxChildVisibility::VISIBLE : SfxChildVisibility::NOT_VISIBLE;
}
+
+ SfxChild_Impl(std::shared_ptr<SfxModelessDialogController>& rChild,
+ SfxChildAlignment eAlignment):
+ pWin(nullptr), xController(rChild), eAlign(eAlignment), bResize(false),
+ bSetFocus( false )
+ {
+ nVisible = xController->getDialog()->get_visible() ? SfxChildVisibility::VISIBLE : SfxChildVisibility::NOT_VISIBLE;
+ }
};
struct SfxChildWin_Impl
@@ -239,7 +248,9 @@ public:
// Methods for all Child windows
void DataChanged_Impl();
void ReleaseChild_Impl( vcl::Window& rWindow );
+ void ReleaseChild_Impl(SfxModelessDialogController&);
SfxChild_Impl* RegisterChild_Impl( vcl::Window& rWindow, SfxChildAlignment eAlign );
+ SfxChild_Impl* RegisterChild_Impl(std::shared_ptr<SfxModelessDialogController>& rController, SfxChildAlignment eAlign);
void ShowChildren_Impl();
void HideChildren_Impl();
bool PrepareClose_Impl();