home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Misc / TRSICAT.LZX / CATS_CD2_TRSI / Inc&AD2.1 / includes / intuition / imageclass.i < prev    next >
Encoding:
Text File  |  1992-09-11  |  5.1 KB  |  173 lines

  1.     IFND INTUITION_IMAGECLASS_I
  2. INTUITION_IMAGECLASS_I SET 1
  3. **
  4. **  $VER: imageclass.i 36.5 (08.11.91)
  5. **  Includes Release 38.56
  6. **
  7. **  Definitions for the image classes
  8. **
  9. **  (C) Copyright 1989-1992 Commodore-Amiga, Inc.
  10. **        All Rights Reserved
  11. **
  12.  
  13.     IFND UTILITY_TAGITEM_I
  14.     INCLUDE "utility/tagitem.i"
  15.     ENDC
  16.  
  17. *
  18. * NOTE:  intuition/iobsolete.i is included at the END of this file!
  19. *
  20.  
  21. CUSTOMIMAGEDEPTH    EQU (-1)
  22. * if image.Depth is this, it's a new Image class object
  23.  
  24. ******************************************************
  25. IMAGE_ATTRIBUTES    EQU (TAG_USER+$20000)
  26.  
  27. IA_Left        EQU (IMAGE_ATTRIBUTES+$0001)
  28. IA_Top        EQU (IMAGE_ATTRIBUTES+$0002)
  29. IA_Width    EQU (IMAGE_ATTRIBUTES+$0003)
  30. IA_Height    EQU (IMAGE_ATTRIBUTES+$0004)
  31. IA_FGPen    EQU (IMAGE_ATTRIBUTES+$0005)
  32.             ; IA_FGPen also means "PlanePick"
  33. IA_BGPen    EQU (IMAGE_ATTRIBUTES+$0006)
  34.             ; IA_BGPen also means "PlaneOnOff"
  35. IA_Data        EQU (IMAGE_ATTRIBUTES+$0007)
  36.             ; bitplanes, for classic image,
  37.             ; other image classes may use it for other things
  38. IA_LineWidth    EQU (IMAGE_ATTRIBUTES+$0008)
  39. IA_Pens        EQU (IMAGE_ATTRIBUTES+$000E)
  40.             ; pointer to UWORD pens[],
  41.             ; ala DrawInfo.Pens, MUST be
  42.             ; terminated by ~0.  Some classes can
  43.             ; choose to have this, or SYSIA_DrawInfo,
  44.             ; or both.
  45. IA_Resolution    EQU (IMAGE_ATTRIBUTES+$000F)
  46.             ; packed uwords for x/y resolution into a longword
  47.             ; ala DrawInfo.Resolution
  48.  
  49. * see class documentation to learn which 
  50. * classes recognize these
  51. IA_APattern    EQU (IMAGE_ATTRIBUTES+$0010)
  52. IA_APatSize    EQU (IMAGE_ATTRIBUTES+$0011)
  53. IA_Mode        EQU (IMAGE_ATTRIBUTES+$0012)
  54. IA_Font        EQU (IMAGE_ATTRIBUTES+$0013)
  55. IA_Outline    EQU (IMAGE_ATTRIBUTES+$0014)
  56. IA_Recessed    EQU (IMAGE_ATTRIBUTES+$0015)
  57. IA_DoubleEmboss    EQU (IMAGE_ATTRIBUTES+$0016)
  58. IA_EdgesOnly    EQU (IMAGE_ATTRIBUTES+$0017)
  59.  
  60. * "sysiclass" attributes
  61. SYSIA_Size    EQU (IMAGE_ATTRIBUTES+$000B)
  62.             ; EQU's below
  63. SYSIA_Depth    EQU (IMAGE_ATTRIBUTES+$000C)
  64.             ; this is unused by Intuition.  SYSIA_DrawInfo
  65.             ; is used instead for V36
  66. SYSIA_Which    EQU (IMAGE_ATTRIBUTES+$000D)
  67.             ; see EQU's below
  68. SYSIA_DrawInfo    EQU (IMAGE_ATTRIBUTES+$0018)
  69.             ; pass to sysiclass, please
  70.  
  71. *  obsolete: don't use these, use IA_Pens
  72. SYSIA_Pens    EQU IA_Pens
  73. IA_ShadowPen    EQU (IMAGE_ATTRIBUTES+$0009)
  74. IA_HighlightPen    EQU (IMAGE_ATTRIBUTES+$000A)
  75.  
  76. * next attribute: (IMAGE_ATTRIBUTES+$0019)
  77. ******************************************************
  78.  
  79. * data values for SYSIA_Size
  80. SYSISIZE_MEDRES    EQU (0)
  81. SYSISIZE_LOWRES    EQU (1)
  82. SYSISIZE_HIRES    EQU (2)
  83.  
  84. *
  85. * SYSIA_Which tag data values:
  86. * Specifies which system gadget you want an image for.
  87. * Some numbers correspond to internal Intuition #defines
  88. DEPTHIMAGE    EQU ($00)
  89. ZOOMIMAGE    EQU ($01)
  90. SIZEIMAGE    EQU ($02)
  91. CLOSEIMAGE    EQU ($03)
  92. SDEPTHIMAGE    EQU ($05)        ; screen depth gadget
  93. LEFTIMAGE    EQU ($0A)
  94. UPIMAGE        EQU ($0B)
  95. RIGHTIMAGE    EQU ($0C)
  96. DOWNIMAGE    EQU ($0D)
  97. CHECKIMAGE    EQU ($0E)
  98. MXIMAGE        EQU ($0F)    ; mutual exclude "button"
  99.  
  100. * image message id's
  101. IM_DRAW        EQU ($0202)    ; draw yourself, with "state"
  102. IM_HITTEST    EQU ($0203)    ; return TRUE if click hits image
  103. IM_ERASE    EQU ($0204)    ; erase yourself
  104. IM_MOVE        EQU ($0205)    ; draw new and erase old, smoothly
  105.  
  106. IM_DRAWFRAME    EQU ($0206)    ; draw with specified dimensions
  107. IM_FRAMEBOX    EQU ($0207)    ; get recommended frame around some box
  108. IM_HITFRAME    EQU ($0208)    ; hittest with dimensions
  109. IM_ERASEFRAME    EQU ($0209)    ; hittest with dimensions
  110.  
  111. * image draw states or styles, for IM_DRAW
  112. IDS_NORMAL        EQU (0)
  113. IDS_SELECTED        EQU (1)    ; for selected gadgets
  114. IDS_DISABLED        EQU (2)    ; for disabled gadgets
  115. IDS_BUSY        EQU (3)    ; for future functionality
  116. IDS_INDETERMINATE    EQU (4)    ; for future functionality
  117. IDS_INACTIVENORMAL    EQU (5)    ; normal, in inactive window border
  118. IDS_INACTIVESELECTED    EQU (6)    ; selected, in inactive border
  119. IDS_INACTIVEDISABLED    EQU (7)    ; disabled, in inactive border
  120.  
  121. * oops, please forgive spelling error by jimm
  122. IDS_INDETERMINANT EQU IDS_INDETERMINATE
  123.  
  124. * IM_FRAMEBOX
  125.  STRUCTURE impFrameBox,4        ; starts with ULONG MethodID
  126.     APTR    impf_ContentsBox    ; input: relative box of contents
  127.     APTR    impf_FrameBox    ; output: rel. box of encl frame
  128.     APTR    impf_DrInfo    ; NB: May be NULL
  129.     LONG    impf_FrameFlags
  130.  
  131. ; Make do with the dimensions of FrameBox provided.
  132. FRAMEB_SPECIFY    EQU (0)
  133. FRAMEF_SPECIFY    EQU (1)
  134.  
  135.  
  136. * IM_DRAW, IM_DRAWFRAME
  137.  STRUCTURE impDraw,4        ; starts with ULONG MethodID
  138.     APTR    impd_RPort
  139.     WORD    impd_OffsetX
  140.     WORD    impd_OffsetY
  141.     ULONG    impd_State
  142.     APTR    impd_DrInfo    ; NB: May be NULL
  143.     ; these parameters only valid for IM_DRAWFRAME
  144.     WORD    impd_DimensionsWidth
  145.     WORD    impd_DimensionsHeight
  146.  
  147. * IM_ERASE, IM_ERASEFRAME
  148. * NOTE: This is a subset of impDraw
  149.  STRUCTURE impErase,4        ; starts with ULONG MethodID
  150.     APTR    impe_RPort
  151.     WORD    impe_OffsetX
  152.     WORD    impe_OffsetY
  153.     ; these parameters only valid for IM_ERASEFRAME
  154.     WORD    impe_DimensionsWidth
  155.     WORD    impe_DimensionsHeight
  156.  
  157. * IM_HITTEST, IM_HITFRAME
  158.  STRUCTURE impHitTest,4        ; starts with ULONG MethodID
  159.     ; these parameters only valid for IM_ERASEFRAME
  160.     WORD    imph_PointX
  161.     WORD    imph_PointY
  162.     ; these parameters only valid for IM_HITFRAME
  163.     WORD    imph_DimensionsWidth
  164.     WORD    imph_DimensionsHeight
  165.  
  166.  
  167. * Include obsolete identifiers:
  168.     IFND    INTUITION_IOBSOLETE_I
  169.     INCLUDE "intuition/iobsolete.i"
  170.     ENDC
  171.  
  172.     ENDC
  173.