home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 9 / CDACTUAL9.iso / progs / CB / DATA.Z / OLECTL.HPP < prev    next >
Encoding:
C/C++ Source or Header  |  1996-11-06  |  31.4 KB  |  817 lines

  1. //----------------------------------------------------------------------------
  2. // OleCtl.hpp - dcc32 generated hdr (DO NOT EDIT) rev: -2
  3. // From: OleCtl.pas
  4. //----------------------------------------------------------------------------
  5. #ifndef OleCtlHPP
  6. #define OleCtlHPP
  7. //----------------------------------------------------------------------------
  8. #ifndef OLE2HPP
  9. #include <OLE2.hpp>
  10. #endif
  11.  
  12. #ifndef MessagesHPP
  13. #include <Messages.hpp>
  14. #endif
  15.  
  16. #ifndef WindowsHPP
  17. #include <Windows.hpp>
  18. #endif
  19.  
  20. #ifndef SystemHPP
  21. #include <System.hpp>
  22. #endif
  23.  
  24. namespace Olectl
  25. {
  26. //-- type declarations -------------------------------------------------------
  27. typedef Windows::TTextMetricW *PTextMetricOle;
  28.  
  29. typedef Windows::TTextMetricW  TTextMetricOle;
  30.  
  31. typedef System::Integer TOleColor;
  32.  
  33. typedef System::Integer OLE_XPOS_PIXELS;
  34.  
  35. typedef System::Integer OLE_YPOS_PIXELS;
  36.  
  37. typedef System::Integer OLE_XSIZE_PIXELS;
  38.  
  39. typedef System::Integer OLE_YSIZE_PIXELS;
  40.  
  41. typedef System::Integer OLE_XPOS_HIMETRIC;
  42.  
  43. typedef System::Integer OLE_YPOS_HIMETRIC;
  44.  
  45. typedef System::Integer OLE_XSIZE_HIMETRIC;
  46.  
  47. typedef System::Integer OLE_YSIZE_HIMETRIC;
  48.  
  49. typedef System::Single OLE_XPOS_CONTAINER;
  50.  
  51. typedef System::Single OLE_YPOS_CONTAINER;
  52.  
  53. typedef System::Single OLE_XSIZE_CONTAINER;
  54.  
  55. typedef System::Single OLE_YSIZE_CONTAINER;
  56.  
  57. enum OLE_TRISTATE { triUnchecked, triChecked, triGray };
  58.  
  59. typedef System::LongBool OLE_OPTEXCLUSIVE;
  60.  
  61. typedef System::LongBool OLE_CANCELBOOL;
  62.  
  63. typedef System::LongBool OLE_ENABLEDEFAULTBOOL;
  64.  
  65. typedef System::Integer OLE_HANDLE;
  66.  
  67. typedef System::Longint __stdcall (*TDLLRegisterServer)(void);
  68.  
  69. typedef System::Longint __stdcall (*TDLLUnregisterServer)(void);
  70.  
  71. struct TPointF
  72. {
  73.     System::Single x;
  74.     System::Single y;
  75. } ;
  76.  
  77. typedef TPointF *PPointF;
  78.  
  79. struct TControlInfo;
  80. typedef TControlInfo *PControlInfo;
  81.  
  82. struct TControlInfo
  83. {
  84.     System::Longint cb;
  85.     System::Integer hAccel;
  86.     System::Word cAccel;
  87.     System::Longint dwFlags;
  88. } ;
  89.  
  90. class __declspec(delphiclass) IOleControl;
  91. class __declspec(pascalimplementation) IOleControl : public Ole2::IUnknown
  92. {
  93.     typedef IOleControl ThisClass;
  94.     typedef Ole2::IUnknown inherited;
  95.     
  96. public:
  97.     virtual System::Longint __stdcall GetControlInfo(TControlInfo &ci) = 0;
  98.     virtual System::Longint __stdcall OnMnemonic(Windows::PMsg msg) = 0;
  99.     virtual System::Longint __stdcall OnAmbientPropertyChange(System::Longint dispid) = 0;
  100.     virtual System::Longint __stdcall FreezeEvents(System::LongBool bFreeze) = 0;
  101. public:
  102.     /* !! TObject.Create */ __fastcall IOleControl(void) : Ole2::IUnknown() { }
  103.     /* !! TObject.Destroy */ __fastcall virtual ~IOleControl(void) { }
  104.     
  105. };
  106.  
  107. class __declspec(delphiclass) IOleControlSite;
  108. class __declspec(pascalimplementation) IOleControlSite : public Ole2::IUnknown
  109. {
  110.     typedef IOleControlSite ThisClass;
  111.     typedef Ole2::IUnknown inherited;
  112.     
  113. public:
  114.     virtual System::Longint __stdcall OnControlInfoChanged(void) = 0;
  115.     virtual System::Longint __stdcall LockInPlaceActive(System::LongBool fLock) = 0;
  116.     virtual System::Longint __stdcall GetExtendedControl(Ole2::IDispatch *&disp) = 0;
  117.     virtual System::Longint __stdcall TransformCoords(Windows::TPoint &ptlHimetric, TPointF &ptfContainer
  118.         , System::Longint flags) = 0;
  119.     virtual System::Longint __stdcall TranslateAccelerator(Windows::PMsg msg, System::Longint grfModifiers
  120.         ) = 0;
  121.     virtual System::Longint __stdcall OnFocus(System::LongBool fGotFocus) = 0;
  122.     virtual System::Longint __stdcall ShowPropertyFrame(void) = 0;
  123. public:
  124.     /* !! TObject.Create */ __fastcall IOleControlSite(void) : Ole2::IUnknown() { }
  125.     /* !! TObject.Destroy */ __fastcall virtual ~IOleControlSite(void) { }
  126.     
  127. };
  128.  
  129. class __declspec(delphiclass) ISimpleFrameSite;
  130. class __declspec(pascalimplementation) ISimpleFrameSite : public Ole2::IUnknown
  131. {
  132.     typedef ISimpleFrameSite ThisClass;
  133.     typedef Ole2::IUnknown inherited;
  134.     
  135. public:
  136.     virtual System::Longint __stdcall PreMessageFilter(System::Integer wnd, System::Integer msg, System::Integer 
  137.         wp, System::Integer lp, System::Integer &res, System::Longint &Cookie) = 0;
  138.     virtual System::Longint __stdcall PostMessageFilter(System::Integer wnd, System::Integer msg, System::Integer 
  139.         wp, System::Integer lp, System::Integer &res, System::Longint Cookie) = 0;
  140. public:
  141.     /* !! TObject.Create */ __fastcall ISimpleFrameSite(void) : Ole2::IUnknown() { }
  142.     /* !! TObject.Destroy */ __fastcall virtual ~ISimpleFrameSite(void) { }
  143.     
  144. };
  145.  
  146. class __declspec(delphiclass) IPersistStreamInit;
  147. class __declspec(pascalimplementation) IPersistStreamInit : public Ole2::IPersistStream
  148. {
  149.     typedef IPersistStreamInit ThisClass;
  150.     typedef Ole2::IPersistStream inherited;
  151.     
  152. public:
  153.     virtual System::Longint __stdcall InitNew(void) = 0;
  154. public:
  155.     /* !! TObject.Create */ __fastcall IPersistStreamInit(void) : Ole2::IPersistStream() { }
  156.     /* !! TObject.Destroy */ __fastcall virtual ~IPersistStreamInit(void) { }
  157.     
  158. };
  159.  
  160. class __declspec(delphiclass) IPropertyNotifySink;
  161. class __declspec(pascalimplementation) IPropertyNotifySink : public Ole2::IUnknown
  162. {
  163.     typedef IPropertyNotifySink ThisClass;
  164.     typedef Ole2::IUnknown inherited;
  165.     
  166. public:
  167.     virtual System::Longint __stdcall OnChanged(System::Longint dispid) = 0;
  168.     virtual System::Longint __stdcall OnRequestEdit(System::Longint dispid) = 0;
  169. public:
  170.     /* !! TObject.Create */ __fastcall IPropertyNotifySink(void) : Ole2::IUnknown() { }
  171.     /* !! TObject.Destroy */ __fastcall virtual ~IPropertyNotifySink(void) { }
  172.     
  173. };
  174.  
  175. class __declspec(delphiclass) IProvideClassInfo;
  176. class __declspec(pascalimplementation) IProvideClassInfo : public Ole2::IUnknown
  177. {
  178.     typedef IProvideClassInfo ThisClass;
  179.     typedef Ole2::IUnknown inherited;
  180.     
  181. public:
  182.     virtual System::Longint __stdcall GetClassInfo(Ole2::ITypeInfo *&ti) = 0;
  183. public:
  184.     /* !! TObject.Create */ __fastcall IProvideClassInfo(void) : Ole2::IUnknown() { }
  185.     /* !! TObject.Destroy */ __fastcall virtual ~IProvideClassInfo(void) { }
  186.     
  187. };
  188.  
  189. class __declspec(delphiclass) IConnectionPointContainer;
  190. class __declspec(delphiclass) IEnumConnectionPoints;
  191. class __declspec(delphiclass) IConnectionPoint;
  192. class __declspec(pascalimplementation) IConnectionPointContainer : public Ole2::IUnknown
  193. {
  194.     typedef IConnectionPointContainer ThisClass;
  195.     typedef Ole2::IUnknown inherited;
  196.     
  197. public:
  198.     virtual System::Longint __stdcall EnumConnectionPoints(IEnumConnectionPoints *&Enum) = 0;
  199.     virtual System::Longint __stdcall FindConnectionPoint(const Ole2::TGUID &iid, IConnectionPoint *&cp
  200.         ) = 0;
  201. public:
  202.     /* !! TObject.Create */ __fastcall IConnectionPointContainer(void) : Ole2::IUnknown() { }
  203.     /* !! TObject.Destroy */ __fastcall virtual ~IConnectionPointContainer(void) { }
  204.     
  205. };
  206.  
  207. class __declspec(pascalimplementation) IEnumConnectionPoints : public Ole2::IUnknown
  208. {
  209.     typedef IEnumConnectionPoints ThisClass;
  210.     typedef Ole2::IUnknown inherited;
  211.     
  212. public:
  213.     virtual System::Longint __stdcall Next(System::Longint celt, void *elt, Windows::PLongint pceltFetched
  214.         ) = 0;
  215.     virtual System::Longint __stdcall Skip(System::Longint celt) = 0;
  216.     virtual System::Longint __stdcall Reset(void) = 0;
  217.     virtual System::Longint __stdcall Clone(IEnumConnectionPoints *&Enum) = 0;
  218. public:
  219.     /* !! TObject.Create */ __fastcall IEnumConnectionPoints(void) : Ole2::IUnknown() { }
  220.     /* !! TObject.Destroy */ __fastcall virtual ~IEnumConnectionPoints(void) { }
  221.     
  222. };
  223.  
  224. class __declspec(delphiclass) IEnumConnections;
  225. class __declspec(pascalimplementation) IConnectionPoint : public Ole2::IUnknown
  226. {
  227.     typedef IConnectionPoint ThisClass;
  228.     typedef Ole2::IUnknown inherited;
  229.     
  230. public:
  231.     virtual System::Longint __stdcall GetConnectionInterface(Ole2::TGUID &iid) = 0;
  232.     virtual System::Longint __stdcall GetConnectionPointContainer(IConnectionPointContainer *&cpc) = 0;
  233.         
  234.     virtual System::Longint __stdcall Advise(Ole2::IUnknown *unkSink, System::Longint &dwCookie) = 0;
  235.     virtual System::Longint __stdcall Unadvise(System::Longint dwCookie) = 0;
  236.     virtual System::Longint __stdcall EnumConnections(IEnumConnections *&Enum) = 0;
  237. public:
  238.     /* !! TObject.Create */ __fastcall IConnectionPoint(void) : Ole2::IUnknown() { }
  239.     /* !! TObject.Destroy */ __fastcall virtual ~IConnectionPoint(void) { }
  240.     
  241. };
  242.  
  243. struct TConnectData
  244. {
  245.     Ole2::IUnknown *pUnk;
  246.     System::Longint dwCookie;
  247. } ;
  248.  
  249. typedef TConnectData *PConnectData;
  250.  
  251. class __declspec(pascalimplementation) IEnumConnections : public Ole2::IUnknown
  252. {
  253.     typedef IEnumConnections ThisClass;
  254.     typedef Ole2::IUnknown inherited;
  255.     
  256. public:
  257.     virtual System::Longint __stdcall Next(System::Longint celt, void *elt, Windows::PLongint pceltFetched
  258.         ) = 0;
  259.     virtual System::Longint __stdcall Skip(System::Longint celt) = 0;
  260.     virtual System::Longint __stdcall Reset(void) = 0;
  261.     virtual System::Longint __stdcall Clone(IEnumConnections *&Enum) = 0;
  262. public:
  263.     /* !! TObject.Create */ __fastcall IEnumConnections(void) : Ole2::IUnknown() { }
  264.     /* !! TObject.Destroy */ __fastcall virtual ~IEnumConnections(void) { }
  265.     
  266. };
  267.  
  268. struct TLicInfo
  269. {
  270.     System::Longint cbLicInfo;
  271.     System::LongBool fRuntimeKeyAvail;
  272.     System::LongBool fLicVerified;
  273. } ;
  274.  
  275. typedef TLicInfo *PLicInfo;
  276.  
  277. class __declspec(delphiclass) IClassFactory2;
  278. class __declspec(pascalimplementation) IClassFactory2 : public Ole2::IClassFactory
  279. {
  280.     typedef IClassFactory2 ThisClass;
  281.     typedef Ole2::IClassFactory inherited;
  282.     
  283. public:
  284.     virtual System::Longint __stdcall GetLicInfo(TLicInfo &licInfo) = 0;
  285.     virtual System::Longint __stdcall RequestLicKey(System::Longint dwResrved, System::PWideChar &bstrKey
  286.         ) = 0;
  287.     virtual System::Longint __stdcall CreateInstanceLic(Ole2::IUnknown *unkOuter, Ole2::IUnknown *unkReserved
  288.         , const Ole2::TGUID &iid, System::PWideChar bstrKey, void *vObject) = 0;
  289. public:
  290.     /* !! TObject.Create */ __fastcall IClassFactory2(void) : Ole2::IClassFactory() { }
  291.     /* !! TObject.Destroy */ __fastcall virtual ~IClassFactory2(void) { }
  292.     
  293. };
  294.  
  295. typedef Ole2::TGUID TGUIDList[65536];
  296.  
  297. typedef TGUIDList *PGUIDList;
  298.  
  299. struct TCAGUID
  300. {
  301.     System::Longint cElems;
  302.     TGUIDList *pElems;
  303. } ;
  304.  
  305. typedef TCAGUID *PCAGUID;
  306.  
  307. struct TCAPOleStr;
  308. typedef TCAPOleStr *PCAPOleStr;
  309.  
  310. struct TCAPOleStr
  311. {
  312.     System::Longint cElems;
  313.     Ole2::TOleStrList *pElems;
  314. } ;
  315.  
  316. typedef System::Longint TLongintList[65536];
  317.  
  318. typedef TLongintList *PLongintList;
  319.  
  320. struct TCALongint
  321. {
  322.     System::Longint cElems;
  323.     TLongintList *pElems;
  324. } ;
  325.  
  326. typedef TCALongint *PCALongint;
  327.  
  328. struct TOCPFIParams;
  329. typedef TOCPFIParams *POCPFIParams;
  330.  
  331. struct TOCPFIParams
  332. {
  333.     System::Longint cbStructSize;
  334.     System::Integer hWndOwner;
  335.     System::Integer x;
  336.     System::Integer y;
  337.     System::WideChar *lpszCaption;
  338.     System::Longint cObjects;
  339.     void *pObjects;
  340.     System::Longint cPages;
  341.     void *pPages;
  342.     System::Longint lcid;
  343.     System::Longint dispidInitialProperty;
  344. } ;
  345.  
  346. struct TPropPageInfo;
  347. typedef TPropPageInfo *PPropPageInfo;
  348.  
  349. struct TPropPageInfo
  350. {
  351.     System::Longint cb;
  352.     System::WideChar *pszTitle;
  353.     Windows::TSize size;
  354.     System::WideChar *pszDocString;
  355.     System::WideChar *pszHelpFile;
  356.     System::Longint dwHelpContext;
  357. } ;
  358.  
  359. class __declspec(delphiclass) ISpecifyPropertyPages;
  360. class __declspec(pascalimplementation) ISpecifyPropertyPages : public Ole2::IUnknown
  361. {
  362.     typedef ISpecifyPropertyPages ThisClass;
  363.     typedef Ole2::IUnknown inherited;
  364.     
  365. public:
  366.     virtual System::Longint __stdcall GetPages(TCAGUID &pages) = 0;
  367. public:
  368.     /* !! TObject.Create */ __fastcall ISpecifyPropertyPages(void) : Ole2::IUnknown() { }
  369.     /* !! TObject.Destroy */ __fastcall virtual ~ISpecifyPropertyPages(void) { }
  370.     
  371. };
  372.  
  373. class __declspec(delphiclass) IPerPropertyBrowsing;
  374. class __declspec(pascalimplementation) IPerPropertyBrowsing : public Ole2::IUnknown
  375. {
  376.     typedef IPerPropertyBrowsing ThisClass;
  377.     typedef Ole2::IUnknown inherited;
  378.     
  379. public:
  380.     virtual System::Longint __stdcall GetDisplayString(System::Longint dispid, System::PWideChar &bstr)
  381.          = 0;
  382.     virtual System::Longint __stdcall MapPropertyToPage(System::Longint dispid, Ole2::TGUID &clsid) = 0
  383.         ;
  384.     virtual System::Longint __stdcall GetPredefinedStrings(System::Longint dispid, TCAPOleStr &caStringsOut
  385.         , TCALongint &caCookiesOut) = 0;
  386.     virtual System::Longint __stdcall GetPredefinedValue(System::Longint dispid, System::Longint dwCookie
  387.         , System::Variant &varOut) = 0;
  388. public:
  389.     /* !! TObject.Create */ __fastcall IPerPropertyBrowsing(void) : Ole2::IUnknown() { }
  390.     /* !! TObject.Destroy */ __fastcall virtual ~IPerPropertyBrowsing(void) { }
  391.     
  392. };
  393.  
  394. class __declspec(delphiclass) IPropertyPageSite;
  395. class __declspec(pascalimplementation) IPropertyPageSite : public Ole2::IUnknown
  396. {
  397.     typedef IPropertyPageSite ThisClass;
  398.     typedef Ole2::IUnknown inherited;
  399.     
  400. public:
  401.     virtual System::Longint __stdcall OnStatusChange(System::Longint flags) = 0;
  402.     virtual System::Longint __stdcall GetLocaleID(System::Longint &localeID) = 0;
  403.     virtual System::Longint __stdcall GetPageContainer(Ole2::IUnknown *&unk) = 0;
  404.     virtual System::Longint __stdcall TranslateAccelerator(Windows::PMsg msg) = 0;
  405. public:
  406.     /* !! TObject.Create */ __fastcall IPropertyPageSite(void) : Ole2::IUnknown() { }
  407.     /* !! TObject.Destroy */ __fastcall virtual ~IPropertyPageSite(void) { }
  408.     
  409. };
  410.  
  411. class __declspec(delphiclass) IPropertyPage;
  412. class __declspec(pascalimplementation) IPropertyPage : public Ole2::IUnknown
  413. {
  414.     typedef IPropertyPage ThisClass;
  415.     typedef Ole2::IUnknown inherited;
  416.     
  417. public:
  418.     virtual System::Longint __stdcall SetPageSite(IPropertyPageSite *pageSite) = 0;
  419.     virtual System::Longint __stdcall Activate(System::Integer hwndParent, const Windows::TRect &rc, System::LongBool 
  420.         bModal) = 0;
  421.     virtual System::Longint __stdcall Deactivate(void) = 0;
  422.     virtual System::Longint __stdcall GetPageInfo(TPropPageInfo &pageInfo) = 0;
  423.     virtual System::Longint __stdcall SetObjects(System::Longint cObjects, Ole2::IUnknown *unk) = 0;
  424.     virtual System::Longint __stdcall Show(System::Integer nCmdShow) = 0;
  425.     virtual System::Longint __stdcall Move(const Windows::TRect &rect) = 0;
  426.     virtual System::Longint __stdcall IsPageDirty(void) = 0;
  427.     virtual System::Longint __stdcall Apply(void) = 0;
  428.     virtual System::Longint __stdcall Help(System::PWideChar pszHelpDir) = 0;
  429.     virtual System::Longint __stdcall TranslateAccelerator(Windows::PMsg msg) = 0;
  430. public:
  431.     /* !! TObject.Create */ __fastcall IPropertyPage(void) : Ole2::IUnknown() { }
  432.     /* !! TObject.Destroy */ __fastcall virtual ~IPropertyPage(void) { }
  433.     
  434. };
  435.  
  436. class __declspec(delphiclass) IPropertyPage2;
  437. class __declspec(pascalimplementation) IPropertyPage2 : public IPropertyPage
  438. {
  439.     typedef IPropertyPage2 ThisClass;
  440.     typedef IPropertyPage inherited;
  441.     
  442. public:
  443.     virtual System::Longint __stdcall EditProperty(System::Longint dispid) = 0;
  444. public:
  445.     /* !! TObject.Create */ __fastcall IPropertyPage2(void) : Olectl::IPropertyPage() { }
  446.     /* !! TObject.Destroy */ __fastcall virtual ~IPropertyPage2(void) { }
  447.     
  448. };
  449.  
  450. class __declspec(delphiclass) IFont;
  451. class __declspec(pascalimplementation) IFont : public Ole2::IUnknown
  452. {
  453.     typedef IFont ThisClass;
  454.     typedef Ole2::IUnknown inherited;
  455.     
  456. public:
  457.     virtual System::Longint __stdcall get_Name(System::PWideChar &name) = 0;
  458.     virtual System::Longint __stdcall put_Name(System::PWideChar name) = 0;
  459.     virtual System::Longint __stdcall get_Size(System::Comp &size) = 0;
  460.     virtual System::Longint __stdcall put_Size(System::Comp size) = 0;
  461.     virtual System::Longint __stdcall get_Bold(System::LongBool &bold) = 0;
  462.     virtual System::Longint __stdcall put_Bold(System::LongBool bold) = 0;
  463.     virtual System::Longint __stdcall get_Italic(System::LongBool &italic) = 0;
  464.     virtual System::Longint __stdcall put_Italic(System::LongBool italic) = 0;
  465.     virtual System::Longint __stdcall get_Underline(System::LongBool &underline) = 0;
  466.     virtual System::Longint __stdcall put_Underline(System::LongBool underline) = 0;
  467.     virtual System::Longint __stdcall get_Strikethrough(System::LongBool &strikethrough) = 0;
  468.     virtual System::Longint __stdcall put_Strikethrough(System::LongBool strikethrough) = 0;
  469.     virtual System::Longint __stdcall get_Weight(System::Smallint &weight) = 0;
  470.     virtual System::Longint __stdcall put_Weight(System::Smallint weight) = 0;
  471.     virtual System::Longint __stdcall get_Charset(System::Smallint &charset) = 0;
  472.     virtual System::Longint __stdcall put_Charset(System::Smallint charset) = 0;
  473.     virtual System::Longint __stdcall get_hFont(System::Integer &font) = 0;
  474.     virtual System::Longint __stdcall Clone(IFont *&font) = 0;
  475.     virtual System::Longint __stdcall IsEqual(IFont *fontOther) = 0;
  476.     virtual System::Longint __stdcall SetRatio(System::Longint cyLogical, System::Longint cyHimetric) = 0
  477.         ;
  478.     virtual System::Longint __stdcall QueryTextMetrics(Windows::TTextMetricW &tm) = 0;
  479.     virtual System::Longint __stdcall AddRefHfont(System::Integer font) = 0;
  480.     virtual System::Longint __stdcall ReleaseHfont(System::Integer font) = 0;
  481. public:
  482.     /* !! TObject.Create */ __fastcall IFont(void) : Ole2::IUnknown() { }
  483.     /* !! TObject.Destroy */ __fastcall virtual ~IFont(void) { }
  484.     
  485. };
  486.  
  487. class __declspec(delphiclass) IFontDisp;
  488. class __declspec(pascalimplementation) IFontDisp : public Ole2::IDispatch
  489. {
  490.     typedef IFontDisp ThisClass;
  491.     typedef Ole2::IDispatch inherited;
  492.     
  493. public:
  494.     /* !! TObject.Create */ __fastcall IFontDisp(void) : Ole2::IDispatch() { }
  495.     /* !! TObject.Destroy */ __fastcall virtual ~IFontDisp(void) { }
  496.     
  497. };
  498.  
  499. struct TFontDesc;
  500. typedef TFontDesc *PFontDesc;
  501.  
  502. struct TFontDesc
  503. {
  504.     System::Integer cbSizeofstruct;
  505.     System::WideChar *lpstrName;
  506.     System::Comp cySize;
  507.     System::Smallint sWeight;
  508.     System::Smallint sCharset;
  509.     System::LongBool fItalic;
  510.     System::LongBool fUnderline;
  511.     System::LongBool fStrikethrough;
  512. } ;
  513.  
  514. class __declspec(delphiclass) IPicture;
  515. class __declspec(pascalimplementation) IPicture : public Ole2::IUnknown
  516. {
  517.     typedef IPicture ThisClass;
  518.     typedef Ole2::IUnknown inherited;
  519.     
  520. public:
  521.     virtual System::Longint __stdcall get_Handle(System::Longint &handle) = 0;
  522.     virtual System::Longint __stdcall get_hPal(System::Longint &handle) = 0;
  523.     virtual System::Longint __stdcall get_Type(System::Smallint &typ) = 0;
  524.     virtual System::Longint __stdcall get_Width(System::Longint &width) = 0;
  525.     virtual System::Longint __stdcall get_Height(System::Longint &height) = 0;
  526.     virtual System::Longint __stdcall Render(System::Integer dc, System::Longint x, System::Longint y, 
  527.         System::Longint cx, System::Longint cy, System::Longint xSrc, System::Longint ySrc, System::Longint 
  528.         cxSrc, System::Longint cySrc, const Windows::TRect &rcWBounds) = 0;
  529.     virtual System::Longint __stdcall set_hPal(System::Longint hpal) = 0;
  530.     virtual System::Longint __stdcall get_CurDC(System::Integer &dcOut) = 0;
  531.     virtual System::Longint __stdcall SelectPicture(System::Integer dcIn, System::Integer &hdcOut, System::Longint 
  532.         &bmpOut) = 0;
  533.     virtual System::Longint __stdcall get_KeepOriginalFormat(System::LongBool &fkeep) = 0;
  534.     virtual System::Longint __stdcall put_KeepOriginalFormat(System::LongBool fkeep) = 0;
  535.     virtual System::Longint __stdcall PictureChanged(void) = 0;
  536.     virtual System::Longint __stdcall SaveAsFile(Ole2::IStream *stream, System::LongBool fSaveMemCopy, 
  537.         System::Longint &cbSize) = 0;
  538.     virtual System::Longint __stdcall get_Attributes(System::Longint dwAttr) = 0;
  539. public:
  540.     /* !! TObject.Create */ __fastcall IPicture(void) : Ole2::IUnknown() { }
  541.     /* !! TObject.Destroy */ __fastcall virtual ~IPicture(void) { }
  542.     
  543. };
  544.  
  545. class __declspec(delphiclass) IPictureDisp;
  546. class __declspec(pascalimplementation) IPictureDisp : public Ole2::IDispatch
  547. {
  548.     typedef IPictureDisp ThisClass;
  549.     typedef Ole2::IDispatch inherited;
  550.     
  551. public:
  552.     /* !! TObject.Create */ __fastcall IPictureDisp(void) : Ole2::IDispatch() { }
  553.     /* !! TObject.Destroy */ __fastcall virtual ~IPictureDisp(void) { }
  554.     
  555. };
  556.  
  557. struct TPictDesc;
  558. typedef TPictDesc *PPictDesc;
  559.  
  560. struct TPictDesc
  561. {
  562.     System::Integer cbSizeofstruct;
  563.     System::Integer picType;
  564.     union
  565.     {
  566.         System::Integer hIcon;
  567.         struct 
  568.         {
  569.             System::Integer hMeta;
  570.             System::Integer xExt;
  571.             System::Integer yExt;
  572.             
  573.         };
  574.         struct 
  575.         {
  576.             System::Integer hbitmap;
  577.             System::Integer hpal;
  578.             
  579.         };
  580.         
  581.     };
  582. } ;
  583.  
  584. //-- var, const, procedure ---------------------------------------------------
  585. #define CTL_E_ILLEGALFUNCTIONCALL System::Integer(-2146828283)
  586. #define CTL_E_OVERFLOW System::Integer(-2146828282)
  587. #define CTL_E_OUTOFMEMORY System::Integer(-2146828281)
  588. #define CTL_E_DIVISIONBYZERO System::Integer(-2146828277)
  589. #define CTL_E_OUTOFSTRINGSPACE System::Integer(-2146828274)
  590. #define CTL_E_OUTOFSTACKSPACE System::Integer(-2146828260)
  591. #define CTL_E_BADFILENAMEORNUMBER System::Integer(-2146828236)
  592. #define CTL_E_FILENOTFOUND System::Integer(-2146828235)
  593. #define CTL_E_BADFILEMODE System::Integer(-2146828234)
  594. #define CTL_E_FILEALREADYOPEN System::Integer(-2146828233)
  595. #define CTL_E_DEVICEIOERROR System::Integer(-2146828231)
  596. #define CTL_E_FILEALREADYEXISTS System::Integer(-2146828230)
  597. #define CTL_E_BADRECORDLENGTH System::Integer(-2146828229)
  598. #define CTL_E_DISKFULL System::Integer(-2146828227)
  599. #define CTL_E_BADRECORDNUMBER System::Integer(-2146828225)
  600. #define CTL_E_BADFILENAME System::Integer(-2146828224)
  601. #define CTL_E_TOOMANYFILES System::Integer(-2146828221)
  602. #define CTL_E_DEVICEUNAVAILABLE System::Integer(-2146828220)
  603. #define CTL_E_PERMISSIONDENIED System::Integer(-2146828218)
  604. #define CTL_E_DISKNOTREADY System::Integer(-2146828217)
  605. #define CTL_E_PATHFILEACCESSERROR System::Integer(-2146828213)
  606. #define CTL_E_PATHNOTFOUND System::Integer(-2146828212)
  607. #define CTL_E_INVALIDPATTERNSTRING System::Integer(-2146828195)
  608. #define CTL_E_INVALIDUSEOFNULL System::Integer(-2146828194)
  609. #define CTL_E_INVALIDFILEFORMAT System::Integer(-2146827967)
  610. #define CTL_E_INVALIDPROPERTYVALUE System::Integer(-2146827908)
  611. #define CTL_E_INVALIDPROPERTYARRAYINDEX System::Integer(-2146827907)
  612. #define CTL_E_SETNOTSUPPORTEDATRUNTIME System::Integer(-2146827906)
  613. #define CTL_E_SETNOTSUPPORTED System::Integer(-2146827905)
  614. #define CTL_E_NEEDPROPERTYARRAYINDEX System::Integer(-2146827903)
  615. #define CTL_E_SETNOTPERMITTED System::Integer(-2146827901)
  616. #define CTL_E_GETNOTSUPPORTEDATRUNTIME System::Integer(-2146827895)
  617. #define CTL_E_GETNOTSUPPORTED System::Integer(-2146827894)
  618. #define CTL_E_PROPERTYNOTFOUND System::Integer(-2146827866)
  619. #define CTL_E_INVALIDCLIPBOARDFORMAT System::Integer(-2146827828)
  620. #define CTL_E_INVALIDPICTURE System::Integer(-2146827807)
  621. #define CTL_E_PRINTERERROR System::Integer(-2146827806)
  622. #define CTL_E_CANTSAVEFILETOTEMP System::Integer(-2146827553)
  623. #define CTL_E_SEARCHTEXTNOTFOUND System::Integer(-2146827544)
  624. #define CTL_E_REPLACEMENTSTOOLONG System::Integer(-2146827542)
  625. #define CTL_E_CUSTOM_FIRST System::Integer(-2146827688)
  626. #define CLASS_E_NOTLICENSED System::Integer(-2147221230)
  627. #define CONNECT_E_FIRST System::Integer(-2147220992)
  628. #define CONNECT_E_LAST System::Integer(-2147220977)
  629. #define CONNECT_S_FIRST System::Integer(262656)
  630. #define CONNECT_S_LAST System::Integer(262671)
  631. #define CONNECT_E_NOCONNECTION System::Integer(-2147220992)
  632. #define CONNECT_E_ADVISELIMIT System::Integer(-2147220991)
  633. #define CONNECT_E_CANNOTCONNECT System::Integer(-2147220990)
  634. #define CONNECT_E_OVERRIDDEN System::Integer(-2147220989)
  635. #define SELFREG_E_FIRST System::Integer(-2147220992)
  636. #define SELFREG_E_LAST System::Integer(-2147220992)
  637. #define SELFREG_S_FIRST System::Integer(262656)
  638. #define SELFREG_S_LAST System::Integer(262656)
  639. #define SELFREG_E_TYPELIB System::Integer(-2147220992)
  640. #define SELFREG_E_CLASS System::Integer(-2147220991)
  641. #define PERPROP_E_FIRST System::Integer(-2147220992)
  642. #define PERPROP_E_LAST System::Integer(-2147220977)
  643. #define PERPROP_S_FIRST System::Integer(262656)
  644. #define PERPROP_S_LAST System::Integer(262671)
  645. #define PERPROP_E_NOPAGEAVAILABLE System::Integer(-2147220992)
  646. #define OLEMISC_INVISIBLEATRUNTIME System::Smallint(1024)
  647. #define OLEMISC_ALWAYSRUN System::Smallint(2048)
  648. #define OLEMISC_ACTSLIKEBUTTON System::Smallint(4096)
  649. #define OLEMISC_ACTSLIKELABEL System::Smallint(8192)
  650. #define OLEMISC_NOUIACTIVATE System::Smallint(16384)
  651. #define OLEMISC_ALIGNABLE System::Integer(32768)
  652. #define OLEMISC_SIMPLEFRAME System::Integer(65536)
  653. #define OLEMISC_SETCLIENTSITEFIRST System::Integer(131072)
  654. #define OLEMISC_IMEMODE System::Integer(262144)
  655. #define OLEIVERB_PROPERTIES System::Shortint(-7)
  656. #define VT_STREAMED_PROPSET System::Byte(73)
  657. #define VT_STORED_PROPSET System::Byte(74)
  658. #define VT_BLOB_PROPSET System::Byte(75)
  659. #define VT_COLOR System::Byte(3)
  660. #define VT_XPOS_PIXELS System::Byte(3)
  661. #define VT_YPOS_PIXELS System::Byte(3)
  662. #define VT_XSIZE_PIXELS System::Byte(3)
  663. #define VT_YSIZE_PIXELS System::Byte(3)
  664. #define VT_XPOS_HIMETRIC System::Byte(3)
  665. #define VT_YPOS_HIMETRIC System::Byte(3)
  666. #define VT_XSIZE_HIMETRIC System::Byte(3)
  667. #define VT_YSIZE_HIMETRIC System::Byte(3)
  668. #define VT_TRISTATE System::Byte(2)
  669. #define VT_OPTEXCLUSIVE System::Byte(11)
  670. #define VT_FONT System::Byte(9)
  671. #define VT_PICTURE System::Byte(9)
  672. #define VT_HANDLE System::Byte(3)
  673. #define OCM__BASE System::Smallint(8192)
  674. #define OCM_COMMAND System::Smallint(8465)
  675. #define OCM_CTLCOLORBTN System::Smallint(8501)
  676. #define OCM_CTLCOLOREDIT System::Smallint(8499)
  677. #define OCM_CTLCOLORDLG System::Smallint(8502)
  678. #define OCM_CTLCOLORLISTBOX System::Smallint(8500)
  679. #define OCM_CTLCOLORMSGBOX System::Smallint(8498)
  680. #define OCM_CTLCOLORSCROLLBAR System::Smallint(8503)
  681. #define OCM_CTLCOLORSTATIC System::Smallint(8504)
  682. #define OCM_DRAWITEM System::Smallint(8235)
  683. #define OCM_MEASUREITEM System::Smallint(8236)
  684. #define OCM_DELETEITEM System::Smallint(8237)
  685. #define OCM_VKEYTOITEM System::Smallint(8238)
  686. #define OCM_CHARTOITEM System::Smallint(8239)
  687. #define OCM_COMPAREITEM System::Smallint(8249)
  688. #define OCM_HSCROLL System::Smallint(8468)
  689. #define OCM_VSCROLL System::Smallint(8469)
  690. #define OCM_PARENTNOTIFY System::Smallint(8720)
  691. #define CTRLINFO_EATS_RETURN System::Byte(1)
  692. #define CTRLINFO_EATS_ESCAPE System::Byte(2)
  693. #define XFORMCOORDS_POSITION System::Byte(1)
  694. #define XFORMCOORDS_SIZE System::Byte(2)
  695. #define XFORMCOORDS_HIMETRICTOCONTAINER System::Byte(4)
  696. #define XFORMCOORDS_CONTAINERTOHIMETRIC System::Byte(8)
  697. #define PROPPAGESTATUS_DIRTY System::Byte(1)
  698. #define PROPPAGESTATUS_VALIDATE System::Byte(2)
  699. #define PICTURE_SCALABLE System::Byte(1)
  700. #define PICTURE_TRANSPARENT System::Byte(2)
  701. #define PICTYPE_UNINITIALIZED System::Shortint(-1)
  702. #define PICTYPE_NONE System::Byte(0)
  703. #define PICTYPE_BITMAP System::Byte(1)
  704. #define PICTYPE_METAFILE System::Byte(2)
  705. #define PICTYPE_ICON System::Byte(3)
  706. #define PICTYPE_ENHMETAFILE System::Byte(4)
  707. #define DISPID_AUTOSIZE System::Smallint(-500)
  708. #define DISPID_BACKCOLOR System::Smallint(-501)
  709. #define DISPID_BACKSTYLE System::Smallint(-502)
  710. #define DISPID_BORDERCOLOR System::Smallint(-503)
  711. #define DISPID_BORDERSTYLE System::Smallint(-504)
  712. #define DISPID_BORDERWIDTH System::Smallint(-505)
  713. #define DISPID_DRAWMODE System::Smallint(-507)
  714. #define DISPID_DRAWSTYLE System::Smallint(-508)
  715. #define DISPID_DRAWWIDTH System::Smallint(-509)
  716. #define DISPID_FILLCOLOR System::Smallint(-510)
  717. #define DISPID_FILLSTYLE System::Smallint(-511)
  718. #define DISPID_FONT System::Smallint(-512)
  719. #define DISPID_FORECOLOR System::Smallint(-513)
  720. #define DISPID_ENABLED System::Smallint(-514)
  721. #define DISPID_HWND System::Smallint(-515)
  722. #define DISPID_TABSTOP System::Smallint(-516)
  723. #define DISPID_TEXT System::Smallint(-517)
  724. #define DISPID_CAPTION System::Smallint(-518)
  725. #define DISPID_BORDERVISIBLE System::Smallint(-519)
  726. #define DISPID_REFRESH System::Smallint(-550)
  727. #define DISPID_DOCLICK System::Smallint(-551)
  728. #define DISPID_ABOUTBOX System::Smallint(-552)
  729. #define DISPID_CLICK System::Smallint(-600)
  730. #define DISPID_DBLCLICK System::Smallint(-601)
  731. #define DISPID_KEYDOWN System::Smallint(-602)
  732. #define DISPID_KEYPRESS System::Smallint(-603)
  733. #define DISPID_KEYUP System::Smallint(-604)
  734. #define DISPID_MOUSEDOWN System::Smallint(-605)
  735. #define DISPID_MOUSEMOVE System::Smallint(-606)
  736. #define DISPID_MOUSEUP System::Smallint(-607)
  737. #define DISPID_ERROREVENT System::Smallint(-608)
  738. #define DISPID_AMBIENT_BACKCOLOR System::Smallint(-701)
  739. #define DISPID_AMBIENT_DISPLAYNAME System::Smallint(-702)
  740. #define DISPID_AMBIENT_FONT System::Smallint(-703)
  741. #define DISPID_AMBIENT_FORECOLOR System::Smallint(-704)
  742. #define DISPID_AMBIENT_LOCALEID System::Smallint(-705)
  743. #define DISPID_AMBIENT_MESSAGEREFLECT System::Smallint(-706)
  744. #define DISPID_AMBIENT_SCALEUNITS System::Smallint(-707)
  745. #define DISPID_AMBIENT_TEXTALIGN System::Smallint(-708)
  746. #define DISPID_AMBIENT_USERMODE System::Smallint(-709)
  747. #define DISPID_AMBIENT_UIDEAD System::Smallint(-710)
  748. #define DISPID_AMBIENT_SHOWGRABHANDLES System::Smallint(-711)
  749. #define DISPID_AMBIENT_SHOWHATCHING System::Smallint(-712)
  750. #define DISPID_AMBIENT_DISPLAYASDEFAULT System::Smallint(-713)
  751. #define DISPID_AMBIENT_SUPPORTSMNEMONICS System::Smallint(-714)
  752. #define DISPID_AMBIENT_AUTOCLIP System::Smallint(-715)
  753. #define DISPID_FONT_NAME System::Byte(0)
  754. #define DISPID_FONT_SIZE System::Byte(2)
  755. #define DISPID_FONT_BOLD System::Byte(3)
  756. #define DISPID_FONT_ITALIC System::Byte(4)
  757. #define DISPID_FONT_UNDER System::Byte(5)
  758. #define DISPID_FONT_STRIKE System::Byte(6)
  759. #define DISPID_FONT_WEIGHT System::Byte(7)
  760. #define DISPID_FONT_CHARSET System::Byte(8)
  761. #define DISPID_PICT_HANDLE System::Byte(0)
  762. #define DISPID_PICT_HPAL System::Byte(2)
  763. #define DISPID_PICT_TYPE System::Byte(3)
  764. #define DISPID_PICT_WIDTH System::Byte(4)
  765. #define DISPID_PICT_HEIGHT System::Byte(5)
  766. #define DISPID_PICT_RENDER System::Byte(6)
  767. extern Ole2::TGUID IID_IPropertyNotifySink;
  768. extern Ole2::TGUID IID_IClassFactory2;
  769. extern Ole2::TGUID IID_IProvideClassInfo;
  770. extern Ole2::TGUID IID_IConnectionPointContainer;
  771. extern Ole2::TGUID IID_IEnumConnectionPoints;
  772. extern Ole2::TGUID IID_IConnectionPoint;
  773. extern Ole2::TGUID IID_IEnumConnections;
  774. extern Ole2::TGUID IID_IOleControl;
  775. extern Ole2::TGUID IID_IOleControlSite;
  776. extern Ole2::TGUID IID_ISimpleFrameSite;
  777. extern Ole2::TGUID IID_IPersistStreamInit;
  778. extern Ole2::TGUID IID_IPropertyFrame;
  779. extern Ole2::TGUID IID_ISpecifyPropertyPages;
  780. extern Ole2::TGUID IID_IPerPropertyBrowsing;
  781. extern Ole2::TGUID IID_IPropertyPageSite;
  782. extern Ole2::TGUID IID_IPropertyPage;
  783. extern Ole2::TGUID IID_IPropertyPage2;
  784. extern Ole2::TGUID IID_IFont;
  785. extern Ole2::TGUID IID_IFontDisp;
  786. extern Ole2::TGUID IID_IPicture;
  787. extern Ole2::TGUID IID_IPictureDisp;
  788. extern Ole2::TGUID CLSID_CFontPropPage;
  789. extern Ole2::TGUID CLSID_CColorPropPage;
  790. extern Ole2::TGUID CLSID_CPicturePropPage;
  791. extern Ole2::TGUID CLSID_PersistPropset;
  792. extern Ole2::TGUID CLSID_ConvertVBX;
  793. extern Ole2::TGUID CLSID_StdFont;
  794. extern Ole2::TGUID CLSID_StdPicture;
  795. extern "C" System::Longint __stdcall OleCreatePropertyFrame(System::Integer hwndOwner, System::Integer 
  796.     x, System::Integer y, System::PWideChar lpszCaption, System::Integer cObjects, System::Pointer pObjects
  797.     , System::Integer cPages, System::Pointer pPageCLSIDs, System::Longint lcid, System::Longint dwReserved
  798.     , System::Pointer pvReserved);
  799. extern "C" System::Longint __stdcall OleCreatePropertyFrameIndirect(TOCPFIParams &Params);
  800. extern "C" System::Longint __stdcall OleTranslateColor(System::Longint clr, System::Integer hpal, System::Longint 
  801.     &colorref);
  802. extern "C" System::Longint __stdcall OleCreateFontIndirect(TFontDesc &FontDesc, const Ole2::TGUID &iid
  803.     , void *vObject);
  804. extern "C" System::Longint __stdcall OleCreatePictureIndirect(TPictDesc &PictDesc, const Ole2::TGUID 
  805.     &iid, System::LongBool fOwn, void *vObject);
  806. extern "C" System::Longint __stdcall OleLoadPicture(Ole2::IStream *stream, System::Longint lSize, System::LongBool 
  807.     fRunmode, const Ole2::TGUID &iid, void *vObject);
  808. extern "C" System::Integer __stdcall OleIconToCursor(System::Integer hinstExe, System::Integer hIcon
  809.     );
  810.  
  811. }    /* namespace Olectl */
  812. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  813. using namespace Olectl;
  814. #endif
  815. //-- end unit ----------------------------------------------------------------
  816. #endif    // OleCtl
  817.