diff options
author | Szymon Kłos <szymon.klos@collabora.com> | 2021-09-24 10:08:41 +0200 |
---|---|---|
committer | Szymon Kłos <szymon.klos@collabora.com> | 2021-09-24 14:32:48 +0200 |
commit | 21d1d67f9957c02389fd7fd48f60ea8e06aab65a (patch) | |
tree | 87274efd7afcc1fc0e73f7dc9ce5ab0dca903e47 /vcl | |
parent | 0c507ece3a617d222a0c14a7954972cf57ac64ab (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>
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/inc/jsdialog/jsdialogbuilder.hxx | 1 | ||||
-rw-r--r-- | vcl/jsdialog/jsdialogbuilder.cxx | 13 |
2 files changed, 14 insertions, 0 deletions
diff --git a/vcl/inc/jsdialog/jsdialogbuilder.hxx b/vcl/inc/jsdialog/jsdialogbuilder.hxx index ff5286239a43..dfd692e0a026 100644 --- a/vcl/inc/jsdialog/jsdialogbuilder.hxx +++ b/vcl/inc/jsdialog/jsdialogbuilder.hxx @@ -273,6 +273,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 1d32a16d808d..0a8c39c9cecb 100644 --- a/vcl/jsdialog/jsdialogbuilder.cxx +++ b/vcl/jsdialog/jsdialogbuilder.cxx @@ -1053,6 +1053,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, |