diff fuhtark_test/include/winapi/richole.h @ 1500:91c8c3b7cbf0

add: futhark tests for generating vulkan api
author sam <sam@basx.dev>
date Wed, 26 Nov 2025 21:36:48 +0700
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/fuhtark_test/include/winapi/richole.h	Wed Nov 26 21:36:48 2025 +0700
@@ -0,0 +1,104 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the w64 mingw-runtime package.
+ * No warranty is given; refer to the file DISCLAIMER within this package.
+ */
+#ifndef _RICHOLE_
+#define _RICHOLE_
+
+#include "richedit.h"
+
+typedef struct _reobject {
+  DWORD cbStruct;
+  LONG cp;
+  CLSID clsid;
+  LPOLEOBJECT poleobj;
+  LPSTORAGE pstg;
+  LPOLECLIENTSITE polesite;
+  SIZEL sizel;
+  DWORD dvaspect;
+  DWORD dwFlags;
+  DWORD dwUser;
+} REOBJECT;
+
+#define REO_GETOBJ_NO_INTERFACES (0x00000000L)
+#define REO_GETOBJ_POLEOBJ (0x00000001L)
+#define REO_GETOBJ_PSTG (0x00000002L)
+#define REO_GETOBJ_POLESITE (0x00000004L)
+#define REO_GETOBJ_ALL_INTERFACES (0x00000007L)
+
+#define REO_CP_SELECTION ((ULONG) -1L)
+
+#define REO_IOB_SELECTION ((ULONG) -1L)
+#define REO_IOB_USE_CP ((ULONG) -2L)
+
+#define REO_NULL (0x00000000L)
+#define REO_READWRITEMASK (0x0000003FL)
+#define REO_DONTNEEDPALETTE (0x00000020L)
+#define REO_BLANK (0x00000010L)
+#define REO_DYNAMICSIZE (0x00000008L)
+#define REO_INVERTEDSELECT (0x00000004L)
+#define REO_BELOWBASELINE (0x00000002L)
+#define REO_RESIZABLE (0x00000001L)
+#define REO_LINK (0x80000000L)
+#define REO_STATIC (0x40000000L)
+#define REO_SELECTED (0x08000000L)
+#define REO_OPEN (0x04000000L)
+#define REO_INPLACEACTIVE (0x02000000L)
+#define REO_HILITED (0x01000000L)
+#define REO_LINKAVAILABLE (0x00800000L)
+#define REO_GETMETAFILE (0x00400000L)
+
+#define RECO_PASTE (0x00000000L)
+#define RECO_DROP (0x00000001L)
+#define RECO_COPY (0x00000002L)
+#define RECO_CUT (0x00000003L)
+#define RECO_DRAG (0x00000004L)
+
+#undef INTERFACE
+#define INTERFACE IRichEditOle
+DECLARE_INTERFACE_(IRichEditOle,IUnknown) {
+  STDMETHOD(QueryInterface) (THIS_ REFIID riid,LPVOID *lplpObj) PURE;
+  STDMETHOD_(ULONG,AddRef) (THIS) PURE;
+  STDMETHOD_(ULONG,Release) (THIS) PURE;
+  STDMETHOD(GetClientSite) (THIS_ LPOLECLIENTSITE *lplpolesite) PURE;
+  STDMETHOD_(LONG,GetObjectCount) (THIS) PURE;
+  STDMETHOD_(LONG,GetLinkCount) (THIS) PURE;
+  STDMETHOD(GetObject) (THIS_ LONG iob,REOBJECT *lpreobject,DWORD dwFlags) PURE;
+  STDMETHOD(InsertObject) (THIS_ REOBJECT *lpreobject) PURE;
+  STDMETHOD(ConvertObject) (THIS_ LONG iob,REFCLSID rclsidNew,LPCSTR lpstrUserTypeNew) PURE;
+  STDMETHOD(ActivateAs) (THIS_ REFCLSID rclsid,REFCLSID rclsidAs) PURE;
+  STDMETHOD(SetHostNames) (THIS_ LPCSTR lpstrContainerApp,LPCSTR lpstrContainerObj) PURE;
+  STDMETHOD(SetLinkAvailable) (THIS_ LONG iob,WINBOOL fAvailable) PURE;
+  STDMETHOD(SetDvaspect) (THIS_ LONG iob,DWORD dvaspect) PURE;
+  STDMETHOD(HandsOffStorage) (THIS_ LONG iob) PURE;
+  STDMETHOD(SaveCompleted) (THIS_ LONG iob,LPSTORAGE lpstg) PURE;
+  STDMETHOD(InPlaceDeactivate) (THIS) PURE;
+  STDMETHOD(ContextSensitiveHelp) (THIS_ WINBOOL fEnterMode) PURE;
+  STDMETHOD(GetClipboardData) (THIS_ CHARRANGE *lpchrg,DWORD reco,LPDATAOBJECT *lplpdataobj) PURE;
+  STDMETHOD(ImportDataObject) (THIS_ LPDATAOBJECT lpdataobj,CLIPFORMAT cf,HGLOBAL hMetaPict) PURE;
+};
+typedef IRichEditOle *LPRICHEDITOLE;
+
+#undef INTERFACE
+#define INTERFACE IRichEditOleCallback
+DECLARE_INTERFACE_(IRichEditOleCallback,IUnknown) {
+  STDMETHOD(QueryInterface) (THIS_ REFIID riid,LPVOID *lplpObj) PURE;
+  STDMETHOD_(ULONG,AddRef) (THIS) PURE;
+  STDMETHOD_(ULONG,Release) (THIS) PURE;
+  STDMETHOD(GetNewStorage) (THIS_ LPSTORAGE *lplpstg) PURE;
+  STDMETHOD(GetInPlaceContext) (THIS_ LPOLEINPLACEFRAME *lplpFrame,LPOLEINPLACEUIWINDOW *lplpDoc,LPOLEINPLACEFRAMEINFO lpFrameInfo) PURE;
+  STDMETHOD(ShowContainerUI) (THIS_ WINBOOL fShow) PURE;
+  STDMETHOD(QueryInsertObject) (THIS_ LPCLSID lpclsid,LPSTORAGE lpstg,LONG cp) PURE;
+  STDMETHOD(DeleteObject) (THIS_ LPOLEOBJECT lpoleobj) PURE;
+  STDMETHOD(QueryAcceptData) (THIS_ LPDATAOBJECT lpdataobj,CLIPFORMAT *lpcfFormat,DWORD reco,WINBOOL fReally,HGLOBAL hMetaPict) PURE;
+  STDMETHOD(ContextSensitiveHelp) (THIS_ WINBOOL fEnterMode) PURE;
+  STDMETHOD(GetClipboardData) (THIS_ CHARRANGE *lpchrg,DWORD reco,LPDATAOBJECT *lplpdataobj) PURE;
+  STDMETHOD(GetDragDropEffect) (THIS_ WINBOOL fDrag,DWORD grfKeyState,LPDWORD pdwEffect) PURE;
+  STDMETHOD(GetContextMenu) (THIS_ WORD seltype,LPOLEOBJECT lpoleobj,CHARRANGE *lpchrg,HMENU *lphmenu) PURE;
+};
+typedef IRichEditOleCallback *LPRICHEDITOLECALLBACK;
+
+DEFINE_GUID(IID_IRichEditOle,0x00020D00,0,0,0xC0,0,0,0,0,0,0,0x46);
+DEFINE_GUID(IID_IRichEditOleCallback,0x00020D03,0,0,0xC0,0,0,0,0,0,0,0x46);
+#endif