home *** CD-ROM | disk | FTP | other *** search
/ QBasic & Borland Pascal & C / Delphi5.iso / C / BC_502 / COMSRVR.PAK / COMINTF.H next >
Encoding:
C/C++ Source or Header  |  1997-05-06  |  2.1 KB  |  74 lines

  1. //----------------------------------------------------------------------------
  2. // ObjectComponents - (c) Copyright 1994 by Borland International
  3. //
  4. // $Revision:   2.0  $
  5. //----------------------------------------------------------------------------
  6. #if !defined(_CUSTOM_COM)
  7. #define _CUSTOM_COM
  8.  
  9. #if   defined(BI_PLAT_WIN16)
  10. # include <compobj.h>
  11. #elif defined(BI_PLAT_WIN32)
  12. # include <objbase.h>
  13. #endif
  14.  
  15. // Shorten call type modifier
  16. //
  17. #if !defined(_IFUNC)
  18. # define _IFUNC STDMETHODCALLTYPE
  19. #endif
  20.  
  21. // {6034C8E0-C35B-101B-AFFC-00608C19FAA0}
  22. //
  23. DEFINE_GUID(CLSID_UtilObject, 0x6034C8E0L, 0xC35B, 0x101B,
  24.                               0xAF, 0xFC, 0, 0x60, 0x8C, 0x19, 0xFA, 0xA0);
  25.  
  26. // {6034C8E1-C35B-101B-AFFC-00608C19FAA0}
  27. //
  28. DEFINE_GUID(IID_IShape,  0x6034C8E1L, 0xC35B, 0x101B,
  29.                          0xAF, 0xFC, 0, 0x60, 0x8C, 0x19, 0xFA, 0xA0);
  30.  
  31. // {6034C8E2-C35B-101B-AFFC-00608C19FAA0}
  32. //
  33. DEFINE_GUID(IID_ICalendar, 0x6034C8E2L, 0xC35B, 0x101B,
  34.                            0xAF, 0xFC, 0, 0x60, 0x8C, 0x19, 0xFA, 0xA0);
  35.  
  36. // An IShape interface
  37. //
  38. class IShape : public IUnknown {
  39.   public:
  40.     // IUnknown members
  41.     //
  42.     HRESULT _IFUNC QueryInterface (const GUID&, LPVOID far*) = 0;
  43.     ULONG   _IFUNC AddRef (void)  = 0;
  44.     ULONG   _IFUNC Release(void)  = 0;
  45.  
  46.       // Methods of this interface
  47.       //
  48.     virtual BOOL _IFUNC Rectangle(HDC dc, int left, int top,
  49.                                   int right, int bottom,
  50.                                   COLORREF fillColor) = 0;
  51.     virtual BOOL _IFUNC Ellipse(HDC dc, int left, int top,
  52.                                 int right, int bottom,
  53.                                 COLORREF fillColor) = 0;
  54. };
  55. typedef IShape far* LPSHAPE;
  56.  
  57. // An ICalendar interface
  58. //
  59. class ICalendar : public IUnknown {
  60.   public:
  61.     // IUnknown members
  62.     //
  63.     HRESULT _IFUNC QueryInterface (const GUID&, LPVOID far*) = 0;
  64.     ULONG   _IFUNC AddRef (void)  = 0;
  65.     ULONG   _IFUNC Release(void)  = 0;
  66.  
  67.       // Methods of this interface
  68.       //
  69.     virtual int _IFUNC GetDayOf(int year, int month, int date) = 0;
  70. };
  71. typedef ICalendar far* LPCALENDAR;
  72.  
  73. #endif  //  _CUSTOM_COM
  74.