| 1 |
/***********************************************************************\ |
|---|
| 2 |
* comcat.d * |
|---|
| 3 |
* * |
|---|
| 4 |
* Windows API header module * |
|---|
| 5 |
* * |
|---|
| 6 |
* Translated from MinGW Windows headers * |
|---|
| 7 |
* by Stewart Gordon * |
|---|
| 8 |
* * |
|---|
| 9 |
* Placed into public domain * |
|---|
| 10 |
\***********************************************************************/ |
|---|
| 11 |
module win32.comcat; |
|---|
| 12 |
|
|---|
| 13 |
import win32.windows, win32.ole2; |
|---|
| 14 |
private import win32.basetyps, win32.cguid, win32.objbase, win32.unknwn, |
|---|
| 15 |
win32.windef, win32.wtypes; |
|---|
| 16 |
|
|---|
| 17 |
alias IEnumGUID* LPENUMGUID; |
|---|
| 18 |
|
|---|
| 19 |
interface IEnumGUID : IUnknown { |
|---|
| 20 |
HRESULT Next(ULONG, GUID*, ULONG*); |
|---|
| 21 |
HRESULT Skip(ULONG); |
|---|
| 22 |
HRESULT Reset(); |
|---|
| 23 |
HRESULT Clone(LPENUMGUID*); |
|---|
| 24 |
} |
|---|
| 25 |
|
|---|
| 26 |
alias GUID CATID; |
|---|
| 27 |
alias REFGUID REFCATID; |
|---|
| 28 |
alias GUID_NULL CATID_NULL; |
|---|
| 29 |
alias IsEqualGUID IsEqualCATID; |
|---|
| 30 |
|
|---|
| 31 |
struct CATEGORYINFO { |
|---|
| 32 |
CATID catid; |
|---|
| 33 |
LCID lcid; |
|---|
| 34 |
OLECHAR[128] szDescription; |
|---|
| 35 |
} |
|---|
| 36 |
alias CATEGORYINFO* LPCATEGORYINFO; |
|---|
| 37 |
|
|---|
| 38 |
alias IEnumGUID IEnumCATID; |
|---|
| 39 |
alias LPENUMGUID LPENUMCATID; |
|---|
| 40 |
alias IID_IEnumGUID IID_IEnumCATID; |
|---|
| 41 |
|
|---|
| 42 |
alias IEnumGUID IEnumCLSID; |
|---|
| 43 |
alias LPENUMGUID LPENUMCLSID; |
|---|
| 44 |
alias IID_IEnumGUID IID_IEnumCLSID; |
|---|
| 45 |
|
|---|
| 46 |
interface ICatInformation : IUnknown { |
|---|
| 47 |
HRESULT EnumCategories(LCID, LPENUMCATEGORYINFO*); |
|---|
| 48 |
HRESULT GetCategoryDesc(REFCATID, LCID, PWCHAR*); |
|---|
| 49 |
HRESULT EnumClassesOfCategories(ULONG, CATID*, ULONG, CATID*, |
|---|
| 50 |
LPENUMCLSID*); |
|---|
| 51 |
HRESULT IsClassOfCategories(REFCLSID, ULONG, CATID*, ULONG, CATID*); |
|---|
| 52 |
HRESULT EnumImplCategoriesOfClass(REFCLSID, LPENUMCATID*); |
|---|
| 53 |
HRESULT EnumReqCategoriesOfClass(REFCLSID, LPENUMCATID*); |
|---|
| 54 |
} |
|---|
| 55 |
alias ICatInformation* LPCATINFORMATION; |
|---|
| 56 |
|
|---|
| 57 |
interface ICatRegister : IUnknown { |
|---|
| 58 |
HRESULT RegisterCategories(ULONG, CATEGORYINFO*); |
|---|
| 59 |
HRESULT UnRegisterCategories(ULONG, CATID*); |
|---|
| 60 |
HRESULT RegisterClassImplCategories(REFCLSID, ULONG, CATID*); |
|---|
| 61 |
HRESULT UnRegisterClassImplCategories(REFCLSID, ULONG, CATID*); |
|---|
| 62 |
HRESULT RegisterClassReqCategories(REFCLSID, ULONG, CATID*); |
|---|
| 63 |
HRESULT UnRegisterClassReqCategories(REFCLSID, ULONG, CATID*); |
|---|
| 64 |
} |
|---|
| 65 |
alias ICatRegister* LPCATREGISTER; |
|---|
| 66 |
|
|---|
| 67 |
interface IEnumCATEGORYINFO : IUnknown { |
|---|
| 68 |
HRESULT Next(ULONG, CATEGORYINFO*, ULONG*); |
|---|
| 69 |
HRESULT Skip(ULONG); |
|---|
| 70 |
HRESULT Reset(); |
|---|
| 71 |
HRESULT Clone(LPENUMCATEGORYINFO*); |
|---|
| 72 |
} |
|---|
| 73 |
alias IEnumCATEGORYINFO* LPENUMCATEGORYINFO; |
|---|