home *** CD-ROM | disk | FTP | other *** search
/ Programming Tool Box / SIMS_2.iso / bp_6_93 / vbwin / control / line3d.h < prev    next >
C/C++ Source or Header  |  1993-01-05  |  3KB  |  117 lines

  1. //Line3D.h - Headerdatei zu LINE3D.C
  2. //Dipl.-Ing. Andreas Maslo
  3.  
  4. #define OFFSETIN(struc,field)      ((USHORT)&(((struc *)0)->field))
  5.  
  6. //Ressourcenkennungen fⁿr VB-Toolbox-Elemente
  7. #define IDBMP_LINE3D        8000
  8. #define IDBMP_LINE3DDOWN    8001
  9. #define IDBMP_LINE3DMONO    8003
  10. #define IDBMP_LINE3DEGA     8006
  11.  
  12. //Kontrollprozedur zum Steuerelement LINE3D
  13. LONG FAR PASCAL _export Line3dCtlProc(HCTL, HWND, USHORT, USHORT, LONG);
  14.  
  15. // globale Variablen und Konstanten
  16. extern    HANDLE hmodDLL;     // aus ccinit.c
  17.  
  18. //LINE3D Kontrollstruktur
  19. typedef struct tagLINE3D
  20. {
  21.     RECT    rectDrawInto;
  22.     ENUM    LineStyle;
  23. } LINE3D;
  24.  
  25. typedef LINE3D FAR * PLINE3D;
  26.  
  27. #ifndef RC_INVOKED
  28.  
  29. //Kennungen der Steuerelementeigenschaften
  30. #define IPROP_LINE3D_CTLNAME              0
  31. #define IPROP_LINE3D_INDEX                1
  32. #define IPROP_LINE3D_BACKCOLOR            2
  33. #define IPROP_LINE3D_LEFT                 3
  34. #define IPROP_LINE3D_TOP                  4
  35. #define IPROP_LINE3D_WIDTH                5
  36. #define IPROP_LINE3D_HEIGHT               6
  37. #define IPROP_LINE3D_VISIBLE              7
  38. #define IPROP_LINE3D_PARENT               8
  39. #define IPROP_LINE3D_TAG                  9
  40. #define IPROP_LINE3D_LINESTYLE           10
  41.  
  42. #ifdef CTL_DATA
  43.  
  44.  
  45. //benutzerdefinierte Eigenschaft:
  46. //3D-Linienstil
  47. PROPINFO Property_LineStyle =
  48. {
  49.     "LineStyle",
  50.     DT_ENUM | PF_fGetData|PF_fSetData | PF_fSetMsg | PF_fSaveData,
  51.     OFFSETIN(LINE3D, LineStyle), 0,
  52.     0,
  53.     "0 - kein\0" "1 - horizontal\0" "2 - vertikal\0", 3
  54. };
  55.  
  56. //Tabelle der Steuerelementeigenschaften
  57. PPROPINFO Line3d_Properties[] =
  58. {
  59.     PPROPINFO_STD_CTLNAME,
  60.     PPROPINFO_STD_INDEX,
  61.     PPROPINFO_STD_BACKCOLOR,
  62.     PPROPINFO_STD_LEFT,
  63.     PPROPINFO_STD_TOP,
  64.     PPROPINFO_STD_WIDTH,
  65.     PPROPINFO_STD_HEIGHT,
  66.     PPROPINFO_STD_VISIBLE,
  67.     PPROPINFO_STD_PARENT,
  68.     PPROPINFO_STD_TAG,
  69.     &Property_LineStyle,
  70.     NULL
  71. };
  72. #endif    // CTL_DATA
  73.  
  74. //Kennungen der Ereignisse
  75. #define IEVENT_LINE3D_CLICK            0
  76.  
  77. #ifdef CTL_DATA
  78.  
  79. //Tabelle der Steuerelementereignisse
  80. PEVENTINFO Line3d_Events[] =
  81. {
  82.     PEVENTINFO_STD_CLICK,
  83.     NULL
  84. };
  85. #endif    // CTL_DATA
  86.  
  87. // Steuerelementmodellstruktur
  88. #ifdef CTL_DATA
  89. MODEL modelLine3d =
  90. {
  91.     VB_VERSION,
  92.     0,
  93.     //Zeiger auf Kontrollprozedur
  94.     (PCTLPROC)Line3dCtlProc,
  95.     //Klassenstile
  96.     CS_VREDRAW | CS_HREDRAW,
  97.     //Fensterstil
  98.     WS_CLIPCHILDREN,
  99.     //Gr÷▀e der Steuerelementstruktur
  100.     sizeof(LINE3D),
  101.     //Bitmap-Kennung (Toolbox)
  102.     IDBMP_LINE3D,
  103.     //Standardkontrollname
  104.     "Line3D",
  105.     //Visual Basic-Klassenname
  106.     "Line3D1",
  107.     NULL,
  108.     //Tabelle Eigenschaften
  109.     Line3d_Properties,
  110.     //Tabelle Ereignisse
  111.     Line3d_Events
  112. };
  113. #endif    // CTL_DATA
  114.  
  115. #endif    // RC_INVOKED
  116.  
  117.