summaryrefslogtreecommitdiff
path: root/vcl/source/window/menufloatingwindow.hxx
diff options
context:
space:
mode:
authorJan-Marek Glogowski <glogow@fbihome.de>2021-11-17 01:57:33 +0100
committerThorsten Behrens <thorsten.behrens@allotropia.de>2023-11-19 18:12:23 +0100
commit0a626ba2073772940fd9a4610d447e00f9afa3f9 (patch)
treebf83c25a6cf671223c1dda7808a1a6dce5fc0d14 /vcl/source/window/menufloatingwindow.hxx
parentf8730aed0a5481c970cca8bd9f4f217d37bfb856 (diff)
WIP: async popup menus
A first patch to get some feedback. Asnyc LO popup menus are still buggy, as I'm not sure where to call the PopupMenu::Finish for them. Also the XDialogClosedListener is currently just for convenience and might want some separate notifier. Fun fact, that ImplExecute / ImplPopup is called for submenu, but then doesn't execute. And generally the naming of some variables is IMHO wrong; I might also prefix Menu members with "m_" for easier readability. Change-Id: Id8b413aa6b4699201e58db0113649c6b224d33b6
Diffstat (limited to 'vcl/source/window/menufloatingwindow.hxx')
-rw-r--r--vcl/source/window/menufloatingwindow.hxx4
1 files changed, 4 insertions, 0 deletions
diff --git a/vcl/source/window/menufloatingwindow.hxx b/vcl/source/window/menufloatingwindow.hxx
index f26fb50373ca..b6c8b54738ce 100644
--- a/vcl/source/window/menufloatingwindow.hxx
+++ b/vcl/source/window/menufloatingwindow.hxx
@@ -46,6 +46,7 @@ private:
sal_uInt16 nScrollerHeight;
sal_uInt16 nFirstEntry;
sal_uInt16 nPosInParent;
+ css::uno::Reference<css::ui::dialogs::XDialogClosedListener> m_xListener;
bool bInExecute : 1;
bool bScrollMenu : 1;
@@ -67,6 +68,7 @@ private:
void Start();
void End();
+ static void Finish();
protected:
vcl::Region ImplCalcClipRegion() const;
@@ -107,6 +109,8 @@ public:
bool IsScrollMenu() const { return bScrollMenu; }
sal_uInt16 GetScrollerHeight() const { return nScrollerHeight; }
+ void Popup(const css::uno::Reference<css::ui::dialogs::XDialogClosedListener>& xListener = nullptr);
+
void Execute();
void StopExecute();
void EndExecute();