summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorSzymon Kłos <szymon.klos@collabora.com>2021-09-24 10:08:41 +0200
committerSzymon Kłos <szymon.klos@collabora.com>2021-10-06 11:09:02 +0200
commitdfff37d1d92074abbd8ad0dc5c79a4e269d09f61 (patch)
treefcda76d8e39141f2dbc610eee760f6c432a52be4 /vcl
parente304383b88d271b0e140946af201099c8314dd0a (diff)
jsdialog: weld plain widget
Change-Id: I85a23a7ea14ab580d4dc222d80edfaa8423cf952 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122562 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123106 Tested-by: Szymon Kłos <szymon.klos@collabora.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/inc/jsdialog/jsdialogbuilder.hxx1
-rw-r--r--vcl/jsdialog/jsdialogbuilder.cxx13
2 files changed, 14 insertions, 0 deletions
diff --git a/vcl/inc/jsdialog/jsdialogbuilder.hxx b/vcl/inc/jsdialog/jsdialogbuilder.hxx
index 55aa57d71888..dc30508dba51 100644
--- a/vcl/inc/jsdialog/jsdialogbuilder.hxx
+++ b/vcl/inc/jsdialog/jsdialogbuilder.hxx
@@ -275,6 +275,7 @@ public:
virtual std::unique_ptr<weld::MenuButton> weld_menu_button(const OString& id) override;
virtual std::unique_ptr<weld::Popover> weld_popover(const OString& id) override;
virtual std::unique_ptr<weld::Box> weld_box(const OString& id) override;
+ virtual std::unique_ptr<weld::Widget> weld_widget(const OString& id) override;
static weld::MessageDialog* CreateMessageDialog(weld::Widget* pParent,
VclMessageType eMessageType,
diff --git a/vcl/jsdialog/jsdialogbuilder.cxx b/vcl/jsdialog/jsdialogbuilder.cxx
index 6b6c12831d73..64f2b3029212 100644
--- a/vcl/jsdialog/jsdialogbuilder.cxx
+++ b/vcl/jsdialog/jsdialogbuilder.cxx
@@ -1045,6 +1045,19 @@ std::unique_ptr<weld::Box> JSInstanceBuilder::weld_box(const OString& id)
return pWeldWidget;
}
+std::unique_ptr<weld::Widget> JSInstanceBuilder::weld_widget(const OString& id)
+{
+ vcl::Window* pWidget = m_xBuilder->get(id);
+ auto pWeldWidget = pWidget ? std::make_unique<JSWidget<SalInstanceWidget, vcl::Window>>(
+ this, pWidget, this, false)
+ : nullptr;
+
+ if (pWeldWidget)
+ RememberWidget(id, pWeldWidget.get());
+
+ return pWeldWidget;
+}
+
weld::MessageDialog* JSInstanceBuilder::CreateMessageDialog(weld::Widget* pParent,
VclMessageType eMessageType,
VclButtonsType eButtonType,