Added some new stubs for the OLE menu descriptor methods.
diff --git a/include/ole2.h b/include/ole2.h
index 2bf8720..4c9b03e 100644
--- a/include/ole2.h
+++ b/include/ole2.h
@@ -17,9 +17,9 @@
{ LONG width[ 6 ];
} OLEMENUGROUPWIDTHS32, OLEMENUGROUPWIDTHS;
-
-
typedef struct tagOleMenuGroupWidths *LPOLEMENUGROUPWIDTHS32;
+typedef struct IOleInPlaceFrame *LPOLEINPLACEFRAME;
+typedef struct IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
typedef HGLOBAL32 HOLEMENU32;
@@ -42,4 +42,15 @@
DWORD*);
#define DoDragDrop WINELIB_NAME(DoDragDrop)
+HOLEMENU32 WINAPI OleCreateMenuDescriptor(HMENU32 hmenuCombined,
+ LPOLEMENUGROUPWIDTHS32 lpMenuWidths);
+void WINAPI OleDestroyMenuDescriptor(HOLEMENU32 hmenuDescriptor);
+HRESULT WINAPI OleSetMenuDescriptor(HOLEMENU32 hmenuDescriptor,
+ HWND32 hwndFrame,
+ HWND32 hwndActiveObject,
+ LPOLEINPLACEFRAME lpFrame,
+ LPOLEINPLACEACTIVEOBJECT lpActiveObject);
+
+
#endif /* __WINE_OLE2_H */
+
diff --git a/ole/ole2.c b/ole/ole2.c
index b9c0f38..43bc653 100644
--- a/ole/ole2.c
+++ b/ole/ole2.c
@@ -464,6 +464,47 @@
return E_FAIL;
}
+/***********************************************************************
+ * OleCreateMenuDescriptor [OLE32.97]
+ */
+HOLEMENU32 WINAPI OleCreateMenuDescriptor(
+ HMENU32 hmenuCombined,
+ LPOLEMENUGROUPWIDTHS32 lpMenuWidths)
+{
+ FIXME(ole,"(%x,%p),stub!\n", hmenuCombined, lpMenuWidths);
+
+ return NULL;
+}
+
+/***********************************************************************
+ * OleDestroyMenuDescriptor [OLE32.99]
+ */
+void WINAPI OleDestroyMenuDescriptor(
+ HOLEMENU32 hmenuDescriptor)
+{
+ FIXME(ole,"(%x),stub!\n", (unsigned int)hmenuDescriptor);
+}
+
+/***********************************************************************
+ * OleSetMenuDescriptor [OLE32.129]
+ */
+HRESULT WINAPI OleSetMenuDescriptor(
+ HOLEMENU32 hmenuDescriptor,
+ HWND32 hwndFrame,
+ HWND32 hwndActiveObject,
+ LPOLEINPLACEFRAME lpFrame,
+ LPOLEINPLACEACTIVEOBJECT lpActiveObject)
+{
+ FIXME(ole,"(%x, %x, %x, %p, %p),stub!\n",
+ (unsigned int)hmenuDescriptor,
+ hwndFrame,
+ hwndActiveObject,
+ lpFrame,
+ lpActiveObject);
+
+ return E_FAIL;
+}
+
/***
* OLEDD_Initialize()
*
diff --git a/relay32/ole32.spec b/relay32/ole32.spec
index c7b4fdf..3f0fa50 100644
--- a/relay32/ole32.spec
+++ b/relay32/ole32.spec
@@ -97,9 +97,9 @@
94 stub OleCreateLink
95 stub OleCreateLinkFromData
96 stub OleCreateLinkToFile
- 97 stub OleCreateMenuDescriptor
+ 97 stdcall OleCreateMenuDescriptor(long ptr) OleCreateMenuDescriptor
98 stub OleCreateStaticFromData
- 99 stub OleDestroyMenuDescriptor
+ 99 stdcall OleDestroyMenuDescriptor(long) OleDestroyMenuDescriptor
100 stub OleDoAutoConvert
101 stub OleDraw
102 stub OleDuplicateData
@@ -129,7 +129,7 @@
126 stub OleSetAutoConvert
127 stdcall OleSetClipboard(ptr) OleSetClipboard
128 stub OleSetContainedObject
-129 stub OleSetMenuDescriptor
+129 stdcall OleSetMenuDescriptor(long long long ptr ptr) OleSetMenuDescriptor
130 stub OleTranslateAccelerator
131 stdcall OleUninitialize() OleUninitialize
132 stub OpenOrCreateStream