summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2018-04-20 11:06:07 +0100
committerCaolán McNamara <caolanm@redhat.com>2018-04-22 21:29:36 +0200
commit60f3e4b843da89678e022eed837ee66e726b1920 (patch)
tree4cffea5d364e3ed9bd3e68c7b471f313c237a98e /vcl
parent4a7ebfea57094b914c4b1c3e46936dbf67dec499 (diff)
place an intermediate class as parent for SfxTabPages
so a SfxTabPage can be parented by a vcl::Window or a welded native notebook tabpage. That ways the same SfxTabPage can be used at the same time in both a native dialog or a vcl dialog. The impl can be changed to the weld api, and when hosted in a native dialog the vcl impl of that will be instantiated, while native otherwise. e.g. print options appearing in print options dialog and general options. This allows incremental changeover. Change-Id: I6f1fed1e8d0898b01853bb878757bad41cbf9bba Reviewed-on: https://gerrit.libreoffice.org/53193 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/inc/salinst.hxx1
-rw-r--r--vcl/source/app/salvtables.cxx5
-rw-r--r--vcl/source/window/builder.cxx5
3 files changed, 11 insertions, 0 deletions
diff --git a/vcl/inc/salinst.hxx b/vcl/inc/salinst.hxx
index 49091b6f577c..30bf126361e8 100644
--- a/vcl/inc/salinst.hxx
+++ b/vcl/inc/salinst.hxx
@@ -163,6 +163,7 @@ public:
virtual OpenGLContext* CreateOpenGLContext() = 0;
virtual weld::Builder* CreateBuilder(weld::Widget* pParent, const OUString& rUIRoot, const OUString& rUIFile);
+ virtual weld::Builder* CreateInterimBuilder(vcl::Window* pParent, const OUString& rUIRoot, const OUString& rUIFile);
virtual weld::MessageDialog* CreateMessageDialog(weld::Widget* pParent, VclMessageType eMessageType,
VclButtonsType eButtonType, const OUString& rPrimaryMessage);
virtual weld::Window* GetFrameWeld(const css::uno::Reference<css::awt::XWindow>& rWindow);
diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx
index fcfcdd90618c..1379984faa54 100644
--- a/vcl/source/app/salvtables.cxx
+++ b/vcl/source/app/salvtables.cxx
@@ -2043,6 +2043,11 @@ weld::Builder* SalInstance::CreateBuilder(weld::Widget* pParent, const OUString&
return new SalInstanceBuilder(pParentWidget, rUIRoot, rUIFile);
}
+weld::Builder* SalInstance::CreateInterimBuilder(vcl::Window* pParent, const OUString& rUIRoot, const OUString& rUIFile)
+{
+ return new SalInstanceBuilder(pParent, rUIRoot, rUIFile);
+}
+
weld::MessageDialog* SalInstance::CreateMessageDialog(weld::Widget* pParent, VclMessageType eMessageType, VclButtonsType eButtonsType, const OUString& rPrimaryMessage)
{
SalInstanceWidget* pParentInstance = dynamic_cast<SalInstanceWidget*>(pParent);
diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx
index 167094a3abe1..0cd56a7cd58c 100644
--- a/vcl/source/window/builder.cxx
+++ b/vcl/source/window/builder.cxx
@@ -130,6 +130,11 @@ weld::Builder* Application::CreateBuilder(weld::Widget* pParent, const OUString
return ImplGetSVData()->mpDefInst->CreateBuilder(pParent, VclBuilderContainer::getUIRootDir(), rUIFile);
}
+weld::Builder* Application::CreateInterimBuilder(vcl::Window* pParent, const OUString &rUIFile)
+{
+ return ImplGetSVData()->mpDefInst->CreateInterimBuilder(pParent, VclBuilderContainer::getUIRootDir(), rUIFile);
+}
+
weld::MessageDialog* Application::CreateMessageDialog(weld::Widget* pParent, VclMessageType eMessageType,
VclButtonsType eButtonType, const OUString& rPrimaryMessage)
{