richole.idl 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. /*
  2. * Copyright (C) 2002 Andriy Palamarchuk
  3. * Copyright (C) 2004 Mike McCormack
  4. *
  5. * This library is free software; you can redistribute it and/or
  6. * modify it under the terms of the GNU Lesser General Public
  7. * License as published by the Free Software Foundation; either
  8. * version 2.1 of the License, or (at your option) any later version.
  9. *
  10. * This library is distributed in the hope that it will be useful,
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  13. * Lesser General Public License for more details.
  14. *
  15. * You should have received a copy of the GNU Lesser General Public
  16. * License along with this library; if not, write to the Free Software
  17. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  18. */
  19. cpp_quote("#if 0"); /* not included on Windows */
  20. import "oleidl.idl";
  21. cpp_quote("#endif");
  22. /* REOBJECT structure flags */
  23. cpp_quote("#define REO_GETOBJ_NO_INTERFACES 0x00000000");
  24. cpp_quote("#define REO_GETOBJ_POLEOBJ 0x00000001");
  25. cpp_quote("#define REO_GETOBJ_PSTG 0x00000002");
  26. cpp_quote("#define REO_GETOBJ_POLESITE 0x00000004");
  27. cpp_quote("#define REO_GETOBJ_ALL_INTERFACES 0x00000007");
  28. cpp_quote("#define REO_CP_SELECTION 0xFFFFFFFF");
  29. cpp_quote("#define REO_IOB_SELECTION 0xFFFFFFFF");
  30. cpp_quote("#define REO_IOB_USE_CP 0xFFFFFFFE");
  31. cpp_quote("#define REO_NULL 0x00000000");
  32. cpp_quote("#define REO_READWRITEMASK 0x0000003F");
  33. cpp_quote("#define REO_DONTNEEDPALETTE 0x00000020");
  34. cpp_quote("#define REO_BLANK 0x00000010");
  35. cpp_quote("#define REO_DYNAMICSIZE 0x00000008");
  36. cpp_quote("#define REO_INVERTEDSELECT 0x00000004");
  37. cpp_quote("#define REO_BELOWBASELINE 0x00000002");
  38. cpp_quote("#define REO_RESIZABLE 0x00000001");
  39. cpp_quote("#define REO_LINK 0x80000000");
  40. cpp_quote("#define REO_STATIC 0x40000000");
  41. cpp_quote("#define REO_SELECTED 0x08000000");
  42. cpp_quote("#define REO_OPEN 0x04000000");
  43. cpp_quote("#define REO_INPLACEACTIVE 0x02000000");
  44. cpp_quote("#define REO_HILITED 0x01000000");
  45. cpp_quote("#define REO_LINKAVAILABLE 0x00800000");
  46. cpp_quote("#define REO_GETMETAFILE 0x00400000");
  47. /* clipboard operation flags */
  48. cpp_quote("#define RECO_PASTE 0x00000000");
  49. cpp_quote("#define RECO_DROP 0x00000001");
  50. cpp_quote("#define RECO_COPY 0x00000002");
  51. cpp_quote("#define RECO_CUT 0x00000003");
  52. cpp_quote("#define RECO_DRAG 0x00000004");
  53. typedef struct _reobject {
  54. DWORD cbStruct;
  55. LONG cp;
  56. CLSID clsid;
  57. LPOLEOBJECT poleobj;
  58. LPSTORAGE pstg;
  59. LPOLECLIENTSITE polesite;
  60. SIZEL sizel;
  61. DWORD dvaspect;
  62. DWORD dwFlags;
  63. DWORD dwUser;
  64. } REOBJECT;
  65. cpp_quote("#ifndef __RICHEDIT_CHARRANGE_DEFINED");
  66. cpp_quote("#define __RICHEDIT_CHARRANGE_DEFINED");
  67. typedef struct _charrange
  68. {
  69. LONG cpMin;
  70. LONG cpMax;
  71. } CHARRANGE;
  72. cpp_quote("#endif /* __RICHEDIT_CHARRANGE_DEFINED */");
  73. /*****************************************************************************
  74. * IRichEditOle
  75. */
  76. [
  77. object,
  78. uuid(00020d00-0000-0000-c000-000000000046),
  79. pointer_default(unique)
  80. ]
  81. interface IRichEditOle : IUnknown
  82. {
  83. HRESULT GetClientSite(LPOLECLIENTSITE *lplpolesite);
  84. HRESULT GetObjectCount();
  85. HRESULT GetLinkCount();
  86. HRESULT GetObject(LONG iob, REOBJECT *lpreobject, DWORD dwFlags);
  87. HRESULT InsertObject(REOBJECT *lpreobject);
  88. HRESULT ConvertObject(LONG iob, REFCLSID rclsidNew, LPCSTR lpstrUserTypeNew);
  89. HRESULT ActivateAs(REFCLSID rclsid, REFCLSID rclsidAs);
  90. HRESULT SetHostNames(LPCSTR lpstrContainerApp, LPCSTR lpstrContainerObj);
  91. HRESULT SetLinkAvailable(LONG iob, BOOL fAvailable);
  92. HRESULT SetDvaspect(LONG iob, DWORD dvaspect);
  93. HRESULT HandsOffStorage(LONG iob);
  94. HRESULT SaveCompleted(LONG iob, LPSTORAGE lpstg);
  95. HRESULT InPlaceDeactivate();
  96. HRESULT ContextSensitiveHelp(BOOL fEnterMode);
  97. HRESULT GetClipboardData(CHARRANGE* lpchrg, DWORD reco, LPDATAOBJECT *lplpdataobj);
  98. HRESULT ImportDataObject(LPDATAOBJECT lpdataobj, CLIPFORMAT cf, HGLOBAL hMetaPict);
  99. }