diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/delphi/m_popup.inc | 1 | ||||
-rw-r--r-- | include/m_popup.h | 17 |
2 files changed, 17 insertions, 1 deletions
diff --git a/include/delphi/m_popup.inc b/include/delphi/m_popup.inc index 0a47fccba4..4e870963f4 100644 --- a/include/delphi/m_popup.inc +++ b/include/delphi/m_popup.inc @@ -336,6 +336,7 @@ const // wParam = 0
// lParam = (POPUPCLASS *)&pc
MS_POPUP_REGISTERCLASS = 'PopUp/RegisterClass';
+ MS_POPUP_UNREGISTERCLASS = 'PopUp/UnregisterClass';
type
TPOPUPDATACLASS = record
diff --git a/include/m_popup.h b/include/m_popup.h index b715345c40..1a633ac14b 100644 --- a/include/m_popup.h +++ b/include/m_popup.h @@ -332,7 +332,22 @@ typedef struct { // wParam = 0
// lParam = (POPUPCLASS *)&pc
-#define MS_POPUP_REGISTERCLASS "PopUp/RegisterClass"
+#define MS_POPUP_REGISTERCLASS "PopUp/RegisterClass"
+
+HANDLE __forceinline Popup_RegisterClass(POPUPCLASS *pc)
+{
+ if ( !ServiceExists(MS_POPUP_REGISTERCLASS))
+ return NULL;
+ return (HANDLE)CallService(MS_POPUP_REGISTERCLASS, 0, LPARAM(pc));
+}
+
+#define MS_POPUP_UNREGISTERCLASS "PopUp/UnregisterClass"
+
+void __forceinline Popup_UnregisterClass(HANDLE ppc)
+{
+ if (ppc)
+ CallService(MS_POPUP_UNREGISTERCLASS, 0, LPARAM(ppc));
+}
typedef struct {
int cbSize;
|