From 20d28e80a5c861a9d5f449ea911ab75b4f37ad0d Mon Sep 17 00:00:00 2001 From: Jef Date: Tue, 24 Sep 2024 14:54:57 +0200 Subject: Initial community commit --- Src/Wasabi/api/wnd/popexitcb.h | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 Src/Wasabi/api/wnd/popexitcb.h (limited to 'Src/Wasabi/api/wnd/popexitcb.h') diff --git a/Src/Wasabi/api/wnd/popexitcb.h b/Src/Wasabi/api/wnd/popexitcb.h new file mode 100644 index 00000000..bbd9de0d --- /dev/null +++ b/Src/Wasabi/api/wnd/popexitcb.h @@ -0,0 +1,40 @@ +#ifndef _POPUPCB_H +#define _POPUPCB_H + +#include +#include + +class ifc_dependent; + +class PopupExitCallback : public Dispatchable { + public: + + int popupexitcb_onExitPopup(); + ifc_dependent *popupexit_getDependencyPtr(); + + enum { + POPUPEXIT_ONEXITPOPUP=100, + POPUPEXIT_GETDEPENDENCYPTR=110, + }; +}; + +inline int PopupExitCallback::popupexitcb_onExitPopup() { + return _call(POPUPEXIT_ONEXITPOPUP, 0); +} + +inline ifc_dependent *PopupExitCallback::popupexit_getDependencyPtr() { + return _call(POPUPEXIT_GETDEPENDENCYPTR, (ifc_dependent *)NULL); +} + +class PopupExitCallbackI : public PopupExitCallback { + public: + + virtual int popupexitcb_onExitPopup()=0; + virtual ifc_dependent *popupexit_getDependencyPtr()=0; + + protected: + + RECVS_DISPATCH; +}; + +#endif -- cgit