summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSzymon Kłos <szymon.klos@collabora.com>2020-03-06 11:11:57 +0100
committerSzymon Kłos <szymon.klos@collabora.com>2020-06-20 20:36:25 +0200
commit292d9519bd368db69920cf0f8b94e0e51c3d14a1 (patch)
tree4d4220e44833022ee72e36d85b9ce93f603fa1c7 /include
parent5c44f1ef779bf196f874f47c14d2d0c7f58fbb2e (diff)
jsdialog: remember weld instances
Change-Id: Ie55e0fcd2307679aee52751b2d2e434393850418 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94302 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96735 Tested-by: Jenkins
Diffstat (limited to 'include')
-rw-r--r--include/vcl/jsdialog/jsdialogbuilder.hxx7
-rw-r--r--include/vcl/weld.hxx3
2 files changed, 7 insertions, 3 deletions
diff --git a/include/vcl/jsdialog/jsdialogbuilder.hxx b/include/vcl/jsdialog/jsdialogbuilder.hxx
index 382623a83da6..f57d3da7ec7f 100644
--- a/include/vcl/jsdialog/jsdialogbuilder.hxx
+++ b/include/vcl/jsdialog/jsdialogbuilder.hxx
@@ -10,6 +10,7 @@
#include <vcl/button.hxx>
class ComboBox;
+typedef std::map<OString, weld::Widget*> WidgetMap;
class JSDialogSender
{
@@ -28,6 +29,9 @@ class VCL_DLLPUBLIC JSInstanceBuilder : public SalInstanceBuilder
{
vcl::LOKWindowId m_nWindowId;
+ static std::map<vcl::LOKWindowId, WidgetMap>& GetLOKWeldWidgetsMap();
+ void RememberWidget(const OString& id, weld::Widget* pWidget);
+
public:
JSInstanceBuilder(weld::Widget* pParent, const OUString& rUIRoot, const OUString& rUIFile);
virtual ~JSInstanceBuilder() override;
@@ -44,8 +48,7 @@ public:
virtual std::unique_ptr<weld::Notebook> weld_notebook(const OString& id,
bool bTakeOwnership = false) override;
- static std::map<vcl::LOKWindowId, JSInstanceBuilder*>& GetLOKWeldBuilderMap();
- static JSInstanceBuilder* FindLOKWeldBuilder(vcl::LOKWindowId nWindowId);
+ static weld::Widget* FindWeldWidgetsMap(vcl::LOKWindowId nWindowId, const OString& rWidget);
};
template <class BaseInstanceClass, class VclClass>
diff --git a/include/vcl/weld.hxx b/include/vcl/weld.hxx
index dc73addd0c10..e14c2c0d5ed3 100644
--- a/include/vcl/weld.hxx
+++ b/include/vcl/weld.hxx
@@ -613,7 +613,6 @@ protected:
Link<ComboBox&, bool> m_aEntryActivateHdl;
Link<OUString&, bool> m_aEntryInsertTextHdl;
- void signal_changed() { m_aChangeHdl.Call(*this); }
virtual void signal_popup_toggled() { m_aPopupToggledHdl.Call(*this); }
Link<render_args, void> m_aRenderHdl;
@@ -627,6 +626,8 @@ protected:
Size signal_custom_get_size(vcl::RenderContext& rDevice) { return m_aGetSizeHdl.Call(rDevice); }
public:
+ void signal_changed() { m_aChangeHdl.Call(*this); }
+
virtual void insert(int pos, const OUString& rStr, const OUString* pId,
const OUString* pIconName, VirtualDevice* pImageSurface)
= 0;