home *** CD-ROM | disk | FTP | other *** search
/ PC World 2000 April / PCWorld_2000-04_cd.bin / Software / Servis / Devc / _SETUP.4 / Group3 / custcntl.h < prev    next >
C/C++ Source or Header  |  1999-11-07  |  2KB  |  99 lines

  1. #ifndef _CUSTCNTL_H
  2. #define _CUSTCNTL_H
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6.  
  7. #define CCF_NOTEXT 1
  8. #define CCHCCCLASS 32
  9. #define CCHCCDESC 32
  10. #define CCHCCTEXT 256
  11.  
  12. typedef struct tagCCSTYLEA {
  13.     DWORD flStyle;
  14.     DWORD flExtStyle;
  15.     CHAR szText[CCHCCTEXT];
  16.     LANGID lgid;
  17.     WORD wReserved1;
  18. } CCSTYLEA,*LPCCSTYLEA;
  19. typedef struct tagCCSTYLEW {
  20.     DWORD flStyle;
  21.     DWORD flExtStyle;
  22.     WCHAR szText[CCHCCTEXT];
  23.     LANGID lgid;
  24.     WORD wReserved1;
  25. } CCSTYLEW,*LPCCSTYLEW;
  26. typedef struct tagCCSTYLEFLAGA {
  27.     DWORD flStyle;
  28.     DWORD flStyleMask;
  29.     LPSTR pszStyle;
  30. } CCSTYLEFLAGA,*LPCCSTYLEFLAGA;
  31. typedef struct tagCCSTYLEFLAGW {
  32.     DWORD flStyle;
  33.     DWORD flStyleMask;
  34.     LPWSTR pszStyle;
  35. } CCSTYLEFLAGW,*LPCCSTYLEFLAGW;
  36. typedef BOOL(CALLBACK* LPFNCCSTYLEA)(HWND,LPCCSTYLEA);
  37. typedef INT(CALLBACK* LPFNCCSIZETOTEXTA)(DWORD,DWORD,HFONT,LPSTR);
  38. typedef struct tagCCINFOA {
  39.     CHAR szClass[CCHCCCLASS];
  40.     DWORD flOptions;
  41.     CHAR szDesc[CCHCCDESC];
  42.     UINT cxDefault;
  43.     UINT cyDefault;
  44.     DWORD flStyleDefault;
  45.     DWORD flExtStyleDefault;
  46.     DWORD flCtrlTypeMask;
  47.     CHAR szTextDefault[CCHCCTEXT];
  48.     INT cStyleFlags;
  49.     LPCCSTYLEFLAGA aStyleFlags;
  50.     LPFNCCSTYLEA lpfnStyle;
  51.     LPFNCCSIZETOTEXTA lpfnSizeToText;
  52.     DWORD dwReserved1;
  53.     DWORD dwReserved2;
  54. } CCINFOA,*LPCCINFOA;
  55. typedef UINT(CALLBACK* LPFNCCINFOA)(LPCCINFOA);
  56. typedef BOOL(CALLBACK* LPFNCCSTYLEW)(HWND,LPCCSTYLEW);
  57. typedef INT (CALLBACK* LPFNCCSIZETOTEXTW)(DWORD,DWORD,HFONT,LPWSTR);
  58. typedef struct tagCCINFOW {
  59.     WCHAR szClass[CCHCCCLASS];
  60.     DWORD flOptions;
  61.     WCHAR szDesc[CCHCCDESC];
  62.     UINT cxDefault;
  63.     UINT cyDefault;
  64.     DWORD flStyleDefault;
  65.     DWORD flExtStyleDefault;
  66.     DWORD flCtrlTypeMask;
  67.     WCHAR szTextDefault[CCHCCTEXT];
  68.     INT cStyleFlags;
  69.     LPCCSTYLEFLAGW aStyleFlags;
  70.     LPFNCCSTYLEW lpfnStyle;
  71.     LPFNCCSIZETOTEXTW lpfnSizeToText;
  72.     DWORD dwReserved1;
  73.     DWORD dwReserved2;
  74. } CCINFOW,*LPCCINFOW;
  75. typedef UINT(CALLBACK* LPFNCCINFOW)(LPCCINFOW);
  76.  
  77. UINT CALLBACK CustomControlInfoA(LPCCINFOA acci);
  78. UINT CALLBACK CustomControlInfoW(LPCCINFOW acci);
  79.  
  80. #ifdef UNICODE
  81. typedef CCSTYLEW CCSTYLE,*LPCCSTYLE;
  82. typedef CCSTYLEFLAGW CCSTYLEFLAG,*LPCCSTYLEFLAG;
  83. typedef CCINFOW CCINFO,*LPCCINFO;
  84. #define LPFNCCSTYLE LPFNCCSTYLEW
  85. #define LPFNCCSIZETOTEXT LPFNCCSIZETOTEXTW
  86. #define LPFNCCINFO LPFNCCINFOW
  87. #else
  88. typedef CCSTYLEA CCSTYLE,*LPCCSTYLE;
  89. typedef CCSTYLEFLAGA CCSTYLEFLAG,*LPCCSTYLEFLAG;
  90. typedef CCINFOA CCINFO,*LPCCINFO;
  91. #define LPFNCCSTYLE LPFNCCSTYLEA
  92. #define LPFNCCSIZETOTEXT LPFNCCSIZETOTEXTA
  93. #define LPFNCCINFO LPFNCCINFOA
  94. #endif
  95. #ifdef __cplusplus
  96. }
  97. #endif
  98. #endif
  99.