home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 3 / Meeting_Pearls_III.iso / Pearls / dev / AmigaE / MoreModules / Mui / MacroFiles / mui.ma next >
Text File  |  1995-01-11  |  12KB  |  256 lines

  1. #define MUIMASTER_NAME 'muimaster.library'
  2.  
  3. #define MUIC_Notify      'Notify.mui'
  4. #define MUIC_Family      'Family.mui'
  5. #define MUIC_Menustrip   'Menustrip.mui'
  6. #define MUIC_Menu        'Menu.mui'
  7. #define MUIC_Menuitem    'Menuitem.mui'
  8. #define MUIC_Application 'Application.mui'
  9. #define MUIC_Window      'Window.mui'
  10. #define MUIC_Area        'Area.mui'
  11. #define MUIC_Rectangle   'Rectangle.mui'
  12. #define MUIC_Image       'Image.mui'
  13. #define MUIC_Bitmap      'Bitmap.mui'
  14. #define MUIC_Bodychunk   'Bodychunk.mui'
  15. #define MUIC_Text        'Text.mui'
  16. #define MUIC_String      'String.mui'
  17. #define MUIC_Prop        'Prop.mui'
  18. #define MUIC_Gauge       'Gauge.mui'
  19. #define MUIC_Scale       'Scale.mui'
  20. #define MUIC_Boopsi      'Boopsi.mui'
  21. #define MUIC_Colorfield  'Colorfield.mui'
  22. #define MUIC_List        'List.mui'
  23. #define MUIC_Floattext   'Floattext.mui'
  24. #define MUIC_Volumelist  'Volumelist.mui'
  25. #define MUIC_Scrmodelist 'Scrmodelist.mui'
  26. #define MUIC_Dirlist     'Dirlist.mui'
  27. #define MUIC_Group       'Group.mui'
  28. #define MUIC_Register    'Register.mui'
  29. #define MUIC_Virtgroup   'Virtgroup.mui'
  30. #define MUIC_Scrollgroup 'Scrollgroup.mui'
  31. #define MUIC_Scrollbar   'Scrollbar.mui'
  32. #define MUIC_Listview    'Listview.mui'
  33. #define MUIC_Radio       'Radio.mui'
  34. #define MUIC_Cycle       'Cycle.mui'
  35. #define MUIC_Slider      'Slider.mui'
  36. #define MUIC_Coloradjust 'Coloradjust.mui'
  37. #define MUIC_Palette     'Palette.mui'
  38. #define MUIC_Colorpanel  'Colorpanel.mui'
  39. #define MUIC_Popstring   'Popstring.mui'
  40. #define MUIC_Popobject   'Popobject.mui'
  41. #define MUIC_Poplist     'Poplist.mui'
  42. #define MUIC_Popasl      'Popasl.mui'
  43.  
  44. #define MUIX_R '\er'
  45. #define MUIX_C '\ec'
  46. #define MUIX_L '\el'
  47. #define MUIX_N '\en'
  48. #define MUIX_B '\eb'
  49. #define MUIX_I '\ei'
  50. #define MUIX_U '\eu'
  51. #define MUIX_PT '\e2'
  52. #define MUIX_PH '\e8'
  53.  
  54. #define MenustripObject   Mui_NewObjectA(MUIC_Menustrip,[TAG_IGNORE,0
  55. #define MenuObject        Mui_NewObjectA(MUIC_Menu,[TAG_IGNORE,0
  56. #define MenuObjectT(name) Mui_NewObjectA(MUIC_Menu,[MUIA_Menu_Title,name
  57. #define MenuitemObject    Mui_NewObjectA(MUIC_Menuitem,[TAG_IGNORE,0
  58. #define WindowObject      Mui_NewObjectA(MUIC_Window,[TAG_IGNORE,0
  59. #define ImageObject       Mui_NewObjectA(MUIC_Image,[TAG_IGNORE,0
  60. #define BitmapObject      Mui_NewObjectA(MUIC_Bitmap,[TAG_IGNORE,0
  61. #define BodychunkObject   Mui_NewObjectA(MUIC_Bodychunk,[TAG_IGNORE,0
  62. #define NotifyObject      Mui_NewObjectA(MUIC_Notify,[TAG_IGNORE,0
  63. #define ApplicationObject Mui_NewObjectA(MUIC_Application,[TAG_IGNORE,0
  64. #define TextObject        Mui_NewObjectA(MUIC_Text,[TAG_IGNORE,0
  65. #define RectangleObject   Mui_NewObjectA(MUIC_Rectangle,[TAG_IGNORE,0
  66. #define ListObject        Mui_NewObjectA(MUIC_List,[TAG_IGNORE,0
  67. #define PropObject        Mui_NewObjectA(MUIC_Prop,[TAG_IGNORE,0
  68. #define StringObject      Mui_NewObjectA(MUIC_String,[TAG_IGNORE,0
  69. #define ScrollbarObject   Mui_NewObjectA(MUIC_Scrollbar,[TAG_IGNORE,0
  70. #define ListviewObject    Mui_NewObjectA(MUIC_Listview,[TAG_IGNORE,0
  71. #define RadioObject       Mui_NewObjectA(MUIC_Radio,[TAG_IGNORE,0
  72. #define VolumelistObject  Mui_NewObjectA(MUIC_Volumelist,[TAG_IGNORE,0
  73. #define FloattextObject   Mui_NewObjectA(MUIC_Floattext,[TAG_IGNORE,0
  74. #define DirlistObject     Mui_NewObjectA(MUIC_Dirlist,[TAG_IGNORE,0
  75. #define SliderObject      Mui_NewObjectA(MUIC_Slider,[TAG_IGNORE,0
  76. #define CycleObject       Mui_NewObjectA(MUIC_Cycle,[TAG_IGNORE,0
  77. #define GaugeObject       Mui_NewObjectA(MUIC_Gauge,[TAG_IGNORE,0
  78. #define ScaleObject       Mui_NewObjectA(MUIC_Scale,[TAG_IGNORE,0
  79. #define BoopsiObject      Mui_NewObjectA(MUIC_Boopsi,[TAG_IGNORE,0
  80. #define ColorfieldObject  Mui_NewObjectA(MUIC_Colorfield,[TAG_IGNORE,0
  81. #define ColorpanelObject  Mui_NewObjectA(MUIC_Colorpanel,[TAG_IGNORE,0
  82. #define ColoradjustObject Mui_NewObjectA(MUIC_Coloradjust,[TAG_IGNORE,0
  83. #define PaletteObject     Mui_NewObjectA(MUIC_Palette,[TAG_IGNORE,0
  84. #define GroupObject       Mui_NewObjectA(MUIC_Group,[TAG_IGNORE,0
  85. #define RegisterObject    Mui_NewObjectA(MUIC_Register,[TAG_IGNORE,0
  86. #define VirtgroupObject   Mui_NewObjectA(MUIC_Virtgroup,[TAG_IGNORE,0
  87. #define ScrollgroupObject Mui_NewObjectA(MUIC_Scrollgroup,[TAG_IGNORE,0
  88. #define PopstringObject   Mui_NewObjectA(MUIC_Popstring,[TAG_IGNORE,0
  89. #define PopobjectObject   Mui_NewObjectA(MUIC_Popobject,[TAG_IGNORE,0
  90. #define PoplistObject     Mui_NewObjectA(MUIC_Poplist,[TAG_IGNORE,0
  91. #define PopaslObject      Mui_NewObjectA(MUIC_Popasl,[TAG_IGNORE,0
  92. #define ScrmodelistObject Mui_NewObjectA(MUIC_Scrmodelist,[TAG_IGNORE,0
  93. #define VGroup            Mui_NewObjectA(MUIC_Group,[TAG_IGNORE,0
  94. #define HGroup            Mui_NewObjectA(MUIC_Group,[MUIA_Group_Horiz,MUI_TRUE
  95. #define ColGroup(cols)    Mui_NewObjectA(MUIC_Group,[MUIA_Group_Columns,(cols)
  96. #define RowGroup(rows)    Mui_NewObjectA(MUIC_Group,[MUIA_Group_Rows   ,(rows)
  97. #define PageGroup         Mui_NewObjectA(MUIC_Group,[MUIA_Group_PageMode,MUI_TRUE
  98. #define VGroupV           Mui_NewObjectA(MUIC_Virtgroup,[TAG_IGNORE,0
  99. #define HGroupV           Mui_NewObjectA(MUIC_Virtgroup,[MUIA_Group_Horiz,MUI_TRUE
  100. #define ColGroupV(cols)   Mui_NewObjectA(MUIC_Virtgroup,[MUIA_Group_Columns,(cols)
  101. #define RowGroupV(rows)   Mui_NewObjectA(MUIC_Virtgroup,[MUIA_Group_Rows   ,(rows)
  102. #define PageGroupV        Mui_NewObjectA(MUIC_Virtgroup,[MUIA_Group_PageMode,MUI_TRUE
  103. #define RegisterGroup(t)  Mui_NewObjectA(MUIC_Register,[MUIA_Register_Titles,(t)
  104. #define End               TAG_DONE])
  105.  
  106. #define Child             MUIA_Group_Child
  107. #define SubWindow         MUIA_Application_Window
  108. #define WindowContents    MUIA_Window_RootObject
  109.  
  110. #define NoFrame          MUIA_Frame, MUIV_Frame_None
  111. #define ButtonFrame      MUIA_Frame, MUIV_Frame_Button
  112. #define ImageButtonFrame MUIA_Frame, MUIV_Frame_ImageButton
  113. #define TextFrame        MUIA_Frame, MUIV_Frame_Text
  114. #define StringFrame      MUIA_Frame, MUIV_Frame_String
  115. #define ReadListFrame    MUIA_Frame, MUIV_Frame_ReadList
  116. #define InputListFrame   MUIA_Frame, MUIV_Frame_InputList
  117. #define PropFrame        MUIA_Frame, MUIV_Frame_Prop
  118. #define SliderFrame      MUIA_Frame, MUIV_Frame_Slider
  119. #define GaugeFrame       MUIA_Frame, MUIV_Frame_Gauge
  120. #define VirtualFrame     MUIA_Frame, MUIV_Frame_Virtual
  121. #define GroupFrame       MUIA_Frame, MUIV_Frame_Group
  122. #define GroupFrameT(s)   MUIA_Frame, MUIV_Frame_Group, MUIA_FrameTitle, s
  123. #define HVSpace           Mui_NewObjectA(MUIC_Rectangle,[TAG_DONE])
  124. #define HSpace(x)         Mui_MakeObjectA(MUIO_HSpace,[x])
  125. #define VSpace(x)         Mui_MakeObjectA(MUIO_VSpace,[x])
  126. #define HCenter(obj)      HGroup, GroupSpacing(0), Child, HSpace(0), Child, (obj), Child, HSpace(0), End
  127. #define VCenter(obj)      VGroup, GroupSpacing(0), Child, VSpace(0), Child, (obj), Child, VSpace(0), End
  128. #define InnerSpacing(h,v) MUIA_InnerLeft,(h),MUIA_InnerRight,(h),MUIA_InnerTop,(v),MUIA_InnerBottom,(v)
  129. #define GroupSpacing(x)   MUIA_Group_Spacing,x
  130.  
  131. #define StringMUI(contents,maxlen)\
  132.         StringObject,\
  133.                 StringFrame,\
  134.                 MUIA_String_MaxLen  , maxlen,\
  135.                 MUIA_String_Contents, contents,\
  136.                 End
  137.  
  138. #define KeyString(contents,maxlen,controlchar)\
  139.         StringObject,\
  140.                 StringFrame,\
  141.                 MUIA_ControlChar    , controlchar,\
  142.                 MUIA_String_MaxLen  , maxlen,\
  143.                 MUIA_String_Contents, contents,\
  144.                 End
  145.  
  146. #define CheckMark(selected)\
  147.         ImageObject,\
  148.                 ImageButtonFrame,\
  149.                 MUIA_InputMode        , MUIV_InputMode_Toggle,\
  150.                 MUIA_Image_Spec       , MUII_CheckMark,\
  151.                 MUIA_Image_FreeVert   , MUI_TRUE,\
  152.                 MUIA_Selected         , selected,\
  153.                 MUIA_Background       , MUII_ButtonBack,\
  154.                 MUIA_ShowSelState     , FALSE,\
  155.                 End
  156.  
  157. #define KeyCheckMark(selected,control)\
  158.         ImageObject,\
  159.                 ImageButtonFrame,\
  160.                 MUIA_InputMode        , MUIV_InputMode_Toggle,\
  161.                 MUIA_Image_Spec       , MUII_CheckMark,\
  162.                 MUIA_Image_FreeVert   , MUI_TRUE,\
  163.                 MUIA_Selected         , selected,\
  164.                 MUIA_Background       , MUII_ButtonBack,\
  165.                 MUIA_ShowSelState     , FALSE,\
  166.                 MUIA_ControlChar      , control,\
  167.                 End
  168.  
  169. #define SimpleButton(label) Mui_MakeObjectA(MUIO_Button,[label])
  170.  
  171. #define KeyButton(name,key)\
  172.         TextObject,\
  173.                 ButtonFrame,\
  174.                 MUIA_Text_Contents, name,\
  175.                 MUIA_Text_PreParse, '\ec',\
  176.                 MUIA_Text_HiChar  , key,\
  177.                 MUIA_ControlChar  , key,\
  178.                 MUIA_InputMode    , MUIV_InputMode_RelVerify,\
  179.                 MUIA_Background   , MUII_ButtonBack,\
  180.                 End
  181.  
  182. #define Cycle(entries)        CycleObject, MUIA_Cycle_Entries, entries, End
  183. #define KeyCycle(entries,key) CycleObject, MUIA_Cycle_Entries, entries, MUIA_ControlChar, key, End
  184.  
  185. #define Radio(name,array)\
  186.         RadioObject,\
  187.                 GroupFrameT(name),\
  188.                 MUIA_Radio_Entries,array,\
  189.                 End
  190.  
  191. #define KeyRadio(name,array,key)\
  192.         RadioObject,\
  193.                 GroupFrameT(name),\
  194.                 MUIA_Radio_Entries,array,\
  195.                 MUIA_ControlChar, key,\
  196.                 End
  197.  
  198. #define Slider(min,max,level)\
  199.         SliderObject,\
  200.                 MUIA_Slider_Min  , min,\
  201.                 MUIA_Slider_Max  , max,\
  202.                 MUIA_Slider_Level, level,\
  203.                 End
  204.  
  205. #define KeySlider(min,max,level,key)\
  206.         SliderObject,\
  207.                 MUIA_Slider_Min  , min,\
  208.                 MUIA_Slider_Max  , max,\
  209.                 MUIA_Slider_Level, level,\
  210.                 MUIA_ControlChar , key,\
  211.                 End
  212.  
  213. #define PopButton(img) Mui_MakeObjectA(MUIO_PopButton,[img])
  214.  
  215. #define Label(label)   Mui_MakeObjectA(MUIO_Label,[label,0])
  216. #define Label1(label)  Mui_MakeObjectA(MUIO_Label,[label,MUIO_Label_SingleFrame])
  217. #define Label2(label)  Mui_MakeObjectA(MUIO_Label,[label,MUIO_Label_DoubleFrame])
  218. #define LLabel(label)  Mui_MakeObjectA(MUIO_Label,[label,MUIO_Label_LeftAligned])
  219. #define LLabel1(label) Mui_MakeObjectA(MUIO_Label,[label,MUIO_Label_LeftAligned + MUIO_Label_SingleFrame])
  220. #define LLabel2(label) Mui_MakeObjectA(MUIO_Label,[label,MUIO_Label_LeftAligned + MUIO_Label_DoubleFrame])
  221.  
  222. #define KeyLabel(label,key)   Mui_MakeObjectA(MUIO_Label,[label,key])
  223. #define KeyLabel1(label,key)  Mui_MakeObjectA(MUIO_Label,[label,Or(MUIO_Label_SingleFrame,key)])
  224. #define KeyLabel2(label,key)  Mui_MakeObjectA(MUIO_Label,[label,Or(MUIO_Label_DoubleFrame,key)])
  225. #define KeyLLabel(label,key)  Mui_MakeObjectA(MUIO_Label,[label,Or(MUIO_Label_LeftAligned,key)])
  226. #define KeyLLabel1(label,key) Mui_MakeObjectA(MUIO_Label,[label,Or(MUIO_Label_LeftAligned + MUIO_Label_SingleFrame,key)])
  227. #define KeyLLabel2(label,key) Mui_MakeObjectA(MUIO_Label,[label,Or(MUIO_Label_LeftAligned + MUIO_Label_DoubleFrame,key)])
  228.  
  229. #define get(obj,attr,store) GetAttr(attr,obj,store)
  230. #define set(obj,attr,value) SetAttrsA(obj,[Eval(`(attr)),value,TAG_DONE])
  231. #define nnset(obj,attr,value) SetAttrsA(obj,[MUIA_NoNotify,MUI_TRUE,Eval(`(attr)),value,TAG_DONE])
  232.  
  233. #define setmutex(obj,n)     set(obj,MUIA_Radio_Active,n)
  234. #define setcycle(obj,n)     set(obj,MUIA_Cycle_Active,n)
  235. #define setstring(obj,s)    set(obj,MUIA_String_Contents,s)
  236. #define setcheckmark(obj,b) set(obj,MUIA_Selected,b)
  237. #define setslider(obj,l)    set(obj,MUIA_Slider_Level,l)
  238.  
  239. #define MUIP_BoopsiQuery MUI_BoopsiQuery
  240.  
  241. #define MUIV_Window_AltHeight_MinMax(p) (0-(p))
  242. #define MUIV_Window_AltHeight_Visible(p) (-100-(p))
  243. #define MUIV_Window_AltHeight_Screen(p) (-200-(p))
  244. #define MUIV_Window_AltTopEdge_Delta(p) (-3-(p))
  245. #define MUIV_Window_AltWidth_MinMax(p) (0-(p))
  246. #define MUIV_Window_AltWidth_Visible(p) (-100-(p))
  247. #define MUIV_Window_AltWidth_Screen(p) (-200-(p))
  248. #define MUIV_Window_Height_MinMax(p) (0-(p))
  249. #define MUIV_Window_Height_Visible(p) (-100-(p))
  250. #define MUIV_Window_Height_Screen(p) (-200-(p))
  251. #define MUIV_Window_TopEdge_Delta(p) (-3-(p))
  252. #define MUIV_Window_Width_MinMax(p) (0-(p))
  253. #define MUIV_Window_Width_Visible(p) (-100-(p))
  254. #define MUIV_Window_Width_Screen(p) (-200-(p))
  255.  
  256.