1 /***************************************************************************
    2 **
    3 ** MUI - MagicUserInterface
    4 ** (c) 1993-2003 Stefan Stuntz
    5 **
    6 ** Main Header File
    7 **
    8 ****************************************************************************
    9 ** Class Tree
   10 ****************************************************************************
   11 **
   12 ** rootclass                   (BOOPSI's base class)
   13 ** +--Notify                   (implements notification mechanism)
   14 ** !  +--Family                (handles multiple children)
   15 ** !  !  +--Menustrip          (describes a complete menu strip)
   16 ** !  !  +--Menu               (describes a single menu)
   17 ** !  !  \--Menuitem           (describes a single menu item)
   18 ** !  +--Application           (main class for all applications)
   19 ** !  +--Window                (main class for all windows)
   20 ** !  !  \--Aboutmui           (About window of MUI preferences)
   21 ** !  +--Area                  (base class for all GUI elements)
   22 ** !     +--Dtpic              (datatypes based bitmaps)
   23 ** !     +--Rectangle          (spacing object)
   24 ** !     +--Balance            (balancing separator bar)
   25 ** !     \--Image              (image display)
   26 ** !     +--Bitmap             (draws bitmaps)
   27 ** !     !  \--Bodychunk       (makes bitmap from ILBM body chunk)
   28 ** !     +--Text               (text display)
   29 ** !     +--Gadget             (base class for intuition gadgets)
   30 ** !     +--String             (string gadget)
   31 ** !     !  +--Boopsi          (interface to BOOPSI gadgets)
   32 ** !     !  \--Prop            (proportional gadget)
   33 ** !     +--Gauge              (fule gauge)
   34 ** !     +--Scale              (percentage scale)
   35 ** !     +--Colorfield         (field with changeable color)
   36 ** !     +--Numeric            (base class for slider gadgets)
   37 ** !     !  +--Knob            (turning knob)
   38 ** !     !  +--Levelmeter      (level display)
   39 ** !     !  +--Numericbutton   (space saving popup slider)
   40 ** !     !  \--Slider          (traditional slider)
   41 ** !     +--Pendisplay         (displays a pen specification)
   42 ** !     !  \--Poppen          (popup button to adjust a pen spec)
   43 ** !     +--Group              (groups other GUI elements)
   44 ** !        +--List            (line-oriented list)
   45 ** !        !  +--Floattext    (special list with floating text)
   46 ** !        !  +--Volumelist   (special list with volumes)
   47 ** !        !  +--Scrmodelist  (special list with screen modes)
   48 ** !        !  \--Dirlist      (special list with files)
   49 ** !        +--Register        (handles page groups with titles)
   50 ** !        !  \--Penadjust    (group to adjust a pen)
   51 ** !        +--Virtgroup       (handles virtual groups)
   52 ** !        +--Scrollgroup     (virtual groups with scrollbars)
   53 ** !        +--Scrollbar       (traditional scrollbar)
   54 ** !        +--Listview        (listview)
   55 ** !        +--Radio           (radio button)
   56 ** !        +--Cycle           (cycle gadget)
   57 ** !        +--Coloradjust     (several gadgets to adjust a color)
   58 ** !        +--Palette         (complete palette gadget)
   59 ** !        \--Popstring       (base class for popup objects)
   60 ** !           +--Popobject    (popup aynthing in a separate window)
   61 ** !           !  +--Poplist   (popup a simple listview)
   62 ** !           !  \--Popscreen (popup a list of public screens)
   63 ** !           \--Popasl       (popup an asl requester)
   64 ** +--Semaphore                (semaphore equipped objects)
   65 ** !  \--Dataspace             (handles general purpose data spaces)
   66 ** !  \--Datamap               (handles general purpose data spaces)
   67 ** !  \--Process               (simplify handlig sub-tasks)
   68 **
   69 ****************************************************************************
   70 ** General Header File Information
   71 ****************************************************************************
   72 **
   73 ** All macro and structure definitions follow these rules:
   74 **
   75 ** Name                       Meaning
   76 **
   77 ** MUIC_<class>               Name of a class
   78 ** MUIM_<class>_<method>      Method
   79 ** MUIP_<class>_<method>      Methods parameter structure
   80 ** MUIV_<class>_<method>_<x>  Special method value
   81 ** MUIA_<class>_<attrib>      Attribute
   82 ** MUIV_<class>_<attrib>_<x>  Special attribute value
   83 ** MUIE_<error>               Error return code from MUI_Error()
   84 ** MUII_<name>                Standard MUI image
   85 ** MUIX_<code>                Control codes for text strings
   86 ** MUIO_<name>                Object type for MUI_MakeObject()
   87 **
   88 ** MUIA_... attribute definitions are followed by a comment
   89 ** consisting of the three possible letters I, S and G.
   90 ** I: it's possible to specify this attribute at object creation time.
   91 ** S: it's possible to change this attribute with SetAttrs().
   92 ** G: it's possible to get this attribute with GetAttr().
   93 **
   94 ** Items marked with "Custom Class" are for use in custom classes only!
   95 */
   96 
   97 
   98 #ifndef LIBRARIES_MUI_H
   99 #define LIBRARIES_MUI_H
  100 
  101 
  102 #include <stddef.h>
  103 
  104 #ifndef EXEC_TYPES_H
  105 #include <exec/types.h>
  106 #endif
  107 
  108 #ifndef DOS_DOS_H
  109 #include <dos/dos.h>
  110 #endif
  111 
  112 #ifndef INTUITION_CLASSES_H
  113 #include <intuition/classes.h>
  114 #endif
  115 
  116 #ifndef INTUITION_SCREENS_H
  117 #include <intuition/screens.h>
  118 #endif
  119 
  120 #ifndef CLIB_MACROS_H
  121 #include <clib/macros.h>
  122 #endif
  123 
  124 #ifndef LIBRARIES_CHARSETS_H
  125 #include <libraries/charsets.h>
  126 #endif
  127 
  128 
  129 
  130 
  131 
  132 /***************************************************************************
  133 ** Library specification
  134 ***************************************************************************/
  135 
  136 #define MUIMASTER_NAME    "muimaster.library"
  137 #define MUIMASTER_VMIN    20
  138 #define MUIMASTER_VLATEST 20
  139 
  140 /*
  141 ** !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  142 ** Warning, some of the macros in this header file work only with
  143 ** uptodate versions of muimaster.library. If you recompile your programs,
  144 ** be sure to open muimaster.library with MUIMASTER_VMIN as version number.
  145 ** !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  146 */
  147 
  148 
  149 /* include obsolete identifiers for backward compatibility */
  150 #define MUI_OBSOLETE
  151 
  152 
  153 
  154 /*************************************************************************
  155 ** Config items for MUIM_GetConfigItem
  156 *************************************************************************/
  157 
  158 #define MUICFG_PublicScreen            36
  159 
  160 
  161 
  162 /***************************************************************************
  163 ** Object Types for MUI_MakeObject()
  164 ***************************************************************************/
  165 
  166 #define MUIO_Label          1   /* STRPTR label, ULONG flags */
  167 #define MUIO_Button         2   /* STRPTR label */
  168 #define MUIO_Checkmark      3   /* STRPTR label */
  169 #define MUIO_Cycle          4   /* STRPTR label, STRPTR *entries */
  170 #define MUIO_Radio          5   /* STRPTR label, STRPTR *entries */
  171 #define MUIO_Slider         6   /* STRPTR label, LONG min, LONG max */
  172 #define MUIO_String         7   /* STRPTR label, LONG maxlen */
  173 #define MUIO_PopButton      8   /* STRPTR imagespec */
  174 #define MUIO_HSpace         9   /* LONG space   */
  175 #define MUIO_VSpace        10   /* LONG space   */
  176 #define MUIO_HBar          11   /* LONG space   */
  177 #define MUIO_VBar          12   /* LONG space   */
  178 #define MUIO_MenustripNM   13   /* struct NewMenu *nm, ULONG flags */
  179 #define MUIO_Menuitem      14   /* STRPTR label, STRPTR shortcut, ULONG flags, ULONG data  */
  180 #define MUIO_BarTitle      15   /* STRPTR label */
  181 #define MUIO_NumericButton 16   /* STRPTR label, LONG min, LONG max, STRPTR format */
  182 
  183 #define MUIO_Menuitem_CopyStrings (1<<30)
  184 
  185 #define MUIO_Label_SingleFrame   (1<< 8)
  186 #define MUIO_Label_DoubleFrame   (1<< 9)
  187 #define MUIO_Label_LeftAligned   (1<<10)
  188 #define MUIO_Label_Centered      (1<<11)
  189 #define MUIO_Label_FreeVert      (1<<12)
  190 #define MUIO_Label_Tiny          (1<<13)
  191 #define MUIO_Label_DontCopy      (1<<14)
  192 
  193 #define MUIO_MenustripNM_CommandKeyCheck (1<<0) /* check for "localized" menu items such as "O\0Open" */
  194 
  195 
  196 
  197 /***************************************************************************
  198 ** ARexx Interface
  199 ***************************************************************************/
  200 
  201 struct MUI_Command
  202 {
  203 	char        *mc_Name;
  204 	char        *mc_Template;
  205 	LONG         mc_Parameters;
  206 	struct Hook *mc_Hook;
  207 	LONG         mc_Reserved[5];
  208 };
  209 
  210 #define MC_TEMPLATE_ID ((STRPTR)~0)
  211 
  212 #define MUI_RXERR_BADDEFINITION  -1
  213 #define MUI_RXERR_OUTOFMEMORY    -2
  214 #define MUI_RXERR_UNKNOWNCOMMAND -3
  215 #define MUI_RXERR_BADSYNTAX      -4
  216 
  217 
  218 /***************************************************************************
  219 ** Return values for MUI_Error()
  220 ***************************************************************************/
  221 
  222 #define MUIE_OK                  0
  223 #define MUIE_OutOfMemory         1
  224 #define MUIE_OutOfGfxMemory      2
  225 #define MUIE_InvalidWindowObject 3
  226 #define MUIE_MissingLibrary      4
  227 #define MUIE_NoARexx             5
  228 #define MUIE_SingleTask          6
  229 
  230 
  231 
  232 /***************************************************************************
  233 ** Standard MUI Images & Backgrounds
  234 ***************************************************************************/
  235                             
  236 #define MUII_WindowBack         0   /* These images are configured   */
  237 #define MUII_RequesterBack      1   /* with the preferences program. */
  238 #define MUII_ButtonBack         2
  239 #define MUII_ListBack           3
  240 #define MUII_TextBack           4
  241 #define MUII_PropBack           5
  242 #define MUII_PopupBack          6
  243 #define MUII_SelectedBack       7
  244 #define MUII_ListCursor         8
  245 #define MUII_ListSelect         9
  246 #define MUII_ListSelCur        10
  247 #define MUII_ArrowUp           11
  248 #define MUII_ArrowDown         12
  249 #define MUII_ArrowLeft         13
  250 #define MUII_ArrowRight        14
  251 #define MUII_CheckMark         15
  252 #define MUII_RadioButton       16
  253 #define MUII_Cycle             17
  254 #define MUII_PopUp             18
  255 #define MUII_PopFile           19
  256 #define MUII_PopDrawer         20
  257 #define MUII_PropKnob          21
  258 #define MUII_Drawer            22
  259 #define MUII_HardDisk          23
  260 #define MUII_Disk              24
  261 #define MUII_Chip              25
  262 #define MUII_Volume            26
  263 #define MUII_RegisterBack      27
  264 #define MUII_Network           28
  265 #define MUII_Assign            29
  266 #define MUII_TapePlay          30
  267 #define MUII_TapePlayBack      31
  268 #define MUII_TapePause         32
  269 #define MUII_TapeStop          33
  270 #define MUII_TapeRecord        34
  271 #define MUII_GroupBack         35
  272 #define MUII_SliderBack        36
  273 #define MUII_SliderKnob        37
  274 #define MUII_TapeUp            38
  275 #define MUII_TapeDown          39
  276 #define MUII_PageBack          40
  277 #define MUII_ReadListBack      41
  278 #define MUII_PopFont           42
  279 #define MUII_ImageButtonBack   43
  280 #define MUII_ImageSelectedBack 44
  281 #define MUII_GaugeFull         45
  282 #define MUII_GaugeEmpty        46
  283 #define MUII_Menudisplay       47
  284 #define MUII_PullOpen          48
  285 #define MUII_StringBack        49
  286 #define MUII_StringActiveBack  50
  287 #define MUII_ListTitle         51
  288 #define MUII_GroupTitle        52
  289 #define MUII_RegisterTitle     53
  290 #define MUII_Close             54
  291 #define MUII_Count             55
  292 
  293 #define MUII_BACKGROUND     128    /* These are direct color    */
  294 #define MUII_SHADOW         129    /* combinations and are not  */
  295 #define MUII_SHINE          130    /* affected by users prefs.  */
  296 #define MUII_FILL           131
  297 #define MUII_SHADOWBACK     132    /* Generally, you should     */
  298 #define MUII_SHADOWFILL     133    /* avoid using them. Better  */
  299 #define MUII_SHADOWSHINE    134    /* use one of the customized */
  300 #define MUII_FILLBACK       135    /* images above.             */
  301 #define MUII_FILLSHINE      136
  302 #define MUII_SHINEBACK      137
  303 #define MUII_FILLBACK2      138
  304 #define MUII_HSHINEBACK     139
  305 #define MUII_HSHADOWBACK    140
  306 #define MUII_HSHINESHINE    141
  307 #define MUII_HSHADOWSHADOW  142
  308 #define MUII_MARKSHINE      143
  309 #define MUII_MARKHALFSHINE  144
  310 #define MUII_MARKBACKGROUND 145
  311 #define MUII_BARBLOCK       146
  312 #define MUII_BARDETAIL      147
  313 #define MUII_LASTPAT        147
  314 
  315 
  316 
  317 /***************************************************************************
  318 ** Special values for some methods
  319 ***************************************************************************/
  320 
  321 #define MUIV_TriggerValue    0x49893131
  322 #define MUIV_NotTriggerValue 0x49893133
  323 #define MUIV_EveryTime       0x49893131
  324 
  325 #define MUIV_Notify_Self         1
  326 #define MUIV_Notify_Window       2
  327 #define MUIV_Notify_Application  3
  328 #define MUIV_Notify_Parent       4
  329 #define MUIV_Notify_ParentParent 5
  330 #define MUIV_Notify_ParentParentParent 6
  331 
  332 #define MUIV_Application_Save_ENV     ((STRPTR) 0)
  333 #define MUIV_Application_Save_ENVARC  ((STRPTR)~0)
  334 #define MUIV_Application_Load_ENV     ((STRPTR) 0)
  335 #define MUIV_Application_Load_ENVARC  ((STRPTR)~0)
  336 
  337 #define MUIV_Application_ReturnID_Quit -1
  338 
  339 #define MUIV_List_Insert_Top             0
  340 #define MUIV_List_Insert_Active         -1
  341 #define MUIV_List_Insert_Sorted         -2
  342 #define MUIV_List_Insert_Bottom         -3
  343 
  344 #define MUIV_List_Remove_First           0
  345 #define MUIV_List_Remove_Active         -1
  346 #define MUIV_List_Remove_Last           -2
  347 #define MUIV_List_Remove_Selected       -3
  348 
  349 #define MUIV_List_Select_Off             0
  350 #define MUIV_List_Select_On              1
  351 #define MUIV_List_Select_Toggle          2
  352 #define MUIV_List_Select_Ask             3
  353 
  354 #define MUIV_List_GetEntry_Active       -1
  355 #define MUIV_List_EditEntry_Active      -1
  356 #define MUIV_List_Edit_Active           -1
  357 #define MUIV_List_Select_Active         -1
  358 #define MUIV_List_Select_All            -2
  359 
  360 #define MUIV_List_Redraw_Active         -1
  361 #define MUIV_List_Redraw_All            -2
  362 #define MUIV_List_Redraw_Entry          -3
  363 
  364 #define MUIV_List_Move_Top               0
  365 #define MUIV_List_Move_Active           -1
  366 #define MUIV_List_Move_Bottom           -2
  367 #define MUIV_List_Move_Next             -3 /* only valid for second parameter */
  368 #define MUIV_List_Move_Previous         -4 /* only valid for second parameter */
  369 
  370 #define MUIV_List_Exchange_Top           0
  371 #define MUIV_List_Exchange_Active       -1
  372 #define MUIV_List_Exchange_Bottom       -2
  373 #define MUIV_List_Exchange_Next         -3 /* only valid for second parameter */
  374 #define MUIV_List_Exchange_Previous     -4 /* only valid for second parameter */
  375 
  376 #define MUIV_List_Jump_Top               0
  377 #define MUIV_List_Jump_Active           -1
  378 #define MUIV_List_Jump_Bottom           -2
  379 #define MUIV_List_Jump_Up               -4
  380 #define MUIV_List_Jump_Down             -3
  381 
  382 #define MUIV_List_NextSelected_Start    -1
  383 #define MUIV_List_NextSelected_End      -1
  384 
  385 #define MUIV_List_EndEdit_Done           0
  386 #define MUIV_List_EndEdit_Abort          1
  387 #define MUIV_List_EndEdit_Prev           2
  388 #define MUIV_List_EndEdit_Next           3
  389 #define MUIV_List_EndEdit_Up             4
  390 #define MUIV_List_EndEdit_Down           5
  391 
  392 #define MUIV_Dirlist_Rename_Active         -1
  393 #define MUIV_Dirlist_SetComment_Active     -1
  394 #define MUIV_Dirlist_SetProtection_Active  -1
  395 
  396 #define MUIV_DoDrag_Async 1
  397 
  398 #define MUIV_DragQuery_Refuse 0
  399 #define MUIV_DragQuery_Accept 1
  400 
  401 #define MUIV_DragReport_Abort    0
  402 #define MUIV_DragReport_Continue 1
  403 #define MUIV_DragReport_Lock     2
  404 #define MUIV_DragReport_Refresh  3
  405 
  406 #define MUIV_CreateBubble_DontHidePointer (1<<0)
  407 
  408 #define MUIV_Application_OCW_ScreenPage (1<<1) /* show just the screen page of the config window */
  409 
  410 #define MUIV_ContextMenuBuild_Default 0xffffffff
  411 
  412 #define MUIV_PushMethod_Delay(millis) MIN(0x0ffffff0,(((ULONG)millis)<<8))
  413 
  414 #define MUIV_Family_GetChild_First     0
  415 #define MUIV_Family_GetChild_Last     -1
  416 #define MUIV_Family_GetChild_Next     -2
  417 #define MUIV_Family_GetChild_Previous -3
  418 #define MUIV_Family_GetChild_Iterate  -4
  419 
  420 #define MUIV_Group_GetChild_First     MUIV_Family_GetChild_First
  421 #define MUIV_Group_GetChild_Last      MUIV_Family_GetChild_Last
  422 #define MUIV_Group_GetChild_Next      MUIV_Family_GetChild_Next
  423 #define MUIV_Group_GetChild_Previous  MUIV_Family_GetChild_Previous
  424 #define MUIV_Group_GetChild_Iterate   MUIV_Family_GetChild_Iterate
  425 
  426 
  427 
  428 /***************************************************************************
  429 ** Control codes for text strings
  430 ***************************************************************************/
  431 
  432 #define MUIX_R "\033r"    /* right justified */
  433 #define MUIX_C "\033c"    /* centered        */
  434 #define MUIX_L "\033l"    /* left justified  */
  435 
  436 #define MUIX_N "\033n"    /* normal     */
  437 #define MUIX_B "\033b"    /* bold       */
  438 #define MUIX_I "\033i"    /* italic     */
  439 #define MUIX_U "\033u"    /* underlined */
  440 
  441 #define MUIX_PT "\0332"   /* text pen           */
  442 #define MUIX_PH "\0338"   /* highlight text pen */
  443 
  444 
  445 
  446 /***************************************************************************
  447 ** Parameter structures for some classes
  448 ***************************************************************************/
  449 
  450 struct MUI_PenSpec   { char buf[ 32]; }; /* black box */
  451 
  452 struct MUI_Palette_Entry
  453 {
  454 	LONG  mpe_ID;
  455 	ULONG mpe_Red;
  456 	ULONG mpe_Green;
  457 	ULONG mpe_Blue;
  458 	LONG  mpe_Group;
  459 };
  460 
  461 #define MUIV_Palette_Entry_End -1
  462 
  463 
  464 /*****************************/
  465 /* Application Input Handler */
  466 /*****************************/
  467 
  468 struct MUI_InputHandlerNode
  469 {
  470 	struct MinNode ihn_Node;
  471 	Boopsiobject  *ihn_Object;
  472 
  473 	union
  474 	{
  475 		ULONG ihn_sigs;
  476 		struct
  477 		{
  478 			UWORD ihn_millis;
  479 			UWORD ihn_current;
  480 		} ihn_timer;
  481 	} ihn_stuff;
  482 
  483 	ULONG          ihn_Flags; /* see below */
  484 	ULONG          ihn_Method;
  485 };
  486 
  487 #define ihn_Signals ihn_stuff.ihn_sigs
  488 #define ihn_Millis  ihn_stuff.ihn_timer.ihn_millis
  489 #define ihn_Current ihn_stuff.ihn_timer.ihn_current
  490 
  491 /* Flags for ihn_Flags */
  492 #define MUIIHNF_TIMER           (1<<0) /* set ihn_Millis to number of 1/1000 sec ticks you want to be triggered */
  493 #define MUIIHNF_TIMER_SCALE10   (1<<1) /* ihn_Millis is in 1/100 seconds instead */
  494 #define MUIIHNF_TIMER_SCALE100  (1<<2) /* ihn_Millis is in 1/10 seconds instead */
  495                                        /* setting both SCALE10|SCALE100 makes ihn_Millis 1/1 seconds */
  496 
  497 
  498 
  499 /************************/
  500 /* Window Event Handler */
  501 /************************/
  502 
  503 struct MUI_EventHandlerNode
  504 {
  505 	struct MinNode ehn_Node;
  506 	BYTE           ehn_Reserved; /* don't touch! */
  507 	BYTE           ehn_Priority; /* event handlers are inserted according to their priority. */
  508 	UWORD          ehn_Flags;    /* certain flags, see below for definitions. */
  509 	Boopsiobject  *ehn_Object;   /* object which should receive MUIM_HandleEvent. */
  510 	struct IClass *ehn_Class;    /* if !=NULL, MUIM_HandleEvent is invoked on exactly this class with CoerceMethod(). */
  511 	ULONG          ehn_Events;   /* one or more IDCMP flags this handler should react on. */
  512 };
  513 
  514 /* flags for ehn_Flags */
  515 
  516 #define MUI_EHF_ALWAYSKEYS  (1<<0)  /* not for public use */
  517 
  518 #define MUI_EHF_GUIMODE     (1<<1)  /* set this if you dont want your handler to be called */
  519 									/* when your object is disabled or invisible */
  520 
  521 #define MUI_EHF_PRIORITY    (1<<11) /* not for public use */
  522 
  523 #define MUI_EHF_ISACTIVEGRP (1<<12) /* not for public use */
  524 
  525 #define MUI_EHF_ISACTIVE    (1<<13) /* this flag is maintained by MUI and READ-ONLY: */
  526 									/* set when ehn_Object is a window's active or default object. */
  527 
  528 #define MUI_EHF_ISCALLING   (1<<14) /* not for public use */
  529 
  530 #define MUI_EHF_ISENABLED   (1<<15) /* this flag is maintained by MUI and READ-ONLY: */
  531 									/* it is set when the handler is added (after MUIM_Window_AddEventHandler) */
  532 									/* and cleared when the handler is removed (after MUIM_Window_RemEventHandler). */
  533 									/* you may not change the state of this flag yourself, but you may read it */
  534 									/* to find out whether your handler is currently added to a window or not. */
  535 
  536 
  537 /* other values reserved for future use */
  538 
  539 /* return values for MUIM_HandleEvent (bit-masked, all other bits must be 0) */
  540 #define MUI_EventHandlerRC_Eat (1<<0) /* stop MUI from calling other handlers */
  541 
  542 
  543 /**********************/
  544 /* List Position Test */
  545 /**********************/
  546 
  547 struct MUI_List_TestPos_Result
  548 {
  549 	LONG  entry;   /* number of entry, -1 if mouse not over valid entry */
  550 	WORD  column;  /* numer of column, -1 if no valid column */
  551 	UWORD flags;   /* see below */
  552 	WORD  xoffset; /* x offset of mouse click relative to column start */
  553 	WORD  yoffset; /* y offset of mouse click from center of line
  554 					  (negative values mean click was above center,
  555 					   positive values mean click was below center) */
  556 };
  557 
  558 #define MUI_LPR_ABOVE    (1<<0)
  559 #define MUI_LPR_BELOW    (1<<1)
  560 #define MUI_LPR_LEFT     (1<<2)
  561 #define MUI_LPR_RIGHT    (1<<3)
  562 
  563 
  564 /***************************************************************************
  565 **
  566 ** Macro Section
  567 ** -------------
  568 **
  569 ** To make GUI creation more easy and understandable, you can use the
  570 ** macros below. If you dont want, just define MUI_NOSHORTCUTS to disable
  571 ** them.
  572 **
  573 ** These macros are available to C programmers only.
  574 **
  575 ***************************************************************************/
  576 
  577 #ifndef MUI_NOSHORTCUTS
  578 
  579 
  580 
  581 /***************************************************************************
  582 **
  583 ** Object Generation
  584 ** -----------------
  585 **
  586 ** The xxxObject (and xChilds) macros generate new instances of MUI classes.
  587 ** Every xxxObject can be followed by tagitems specifying initial create
  588 ** time attributes for the new object and must be terminated with the
  589 ** End macro:
  590 **
  591 ** obj = StringObject,
  592 **          MUIA_String_Contents, "foo",
  593 **          MUIA_String_MaxLen  , 40,
  594 **          End;
  595 **
  596 ** With the Child, SubWindow and WindowContents shortcuts you can
  597 ** construct a complete GUI within one command:
  598 **
  599 ** app = ApplicationObject,
  600 **
  601 **          ...
  602 **
  603 **          SubWindow, WindowObject,
  604 **             WindowContents, VGroup,
  605 **                Child, String("foo",40),
  606 **                Child, String("bar",50),
  607 **                Child, HGroup,
  608 **                   Child, CheckMark(TRUE),
  609 **                   Child, CheckMark(FALSE),
  610 **                   End,
  611 **                End,
  612 **             End,
  613 **
  614 **          SubWindow, WindowObject,
  615 **             WindowContents, HGroup,
  616 **                Child, ...,
  617 **                Child, ...,
  618 **                End,
  619 **             End,
  620 **
  621 **          ...
  622 **
  623 **          End;
  624 **
  625 ***************************************************************************/
  626 
  627 #define MenustripObject     MUI_NewObject(MUIC_Menustrip
  628 #define MenuObject          MUI_NewObject(MUIC_Menu
  629 #define MenuObjectT(name)   MUI_NewObject(MUIC_Menu,MUIA_Menu_Title,name
  630 #define PopmenuObject       MUI_NewObject(MUIC_Popmenu
  631 #define MenuitemObject      MUI_NewObject(MUIC_Menuitem
  632 #define WindowObject        MUI_NewObject(MUIC_Window
  633 #define ImageObject         MUI_NewObject(MUIC_Image
  634 #define BitmapObject        MUI_NewObject(MUIC_Bitmap
  635 #define BodychunkObject     MUI_NewObject(MUIC_Bodychunk
  636 #define NotifyObject        MUI_NewObject(MUIC_Notify
  637 #define ApplicationObject   MUI_NewObject(MUIC_Application
  638 #define TextObject          MUI_NewObject(MUIC_Text
  639 #define RectangleObject     MUI_NewObject(MUIC_Rectangle
  640 #define BalanceObject       MUI_NewObject(MUIC_Balance
  641 #define ListObject          MUI_NewObject(MUIC_List
  642 #define PropObject          MUI_NewObject(MUIC_Prop
  643 #define StringObject        MUI_NewObject(MUIC_String
  644 #define StringscrollObject  MUI_NewObject(MUIC_Stringscroll
  645 #define ScrollbarObject     MUI_NewObject(MUIC_Scrollbar
  646 #define ListviewObject      MUI_NewObject(MUIC_Listview
  647 #define RadioObject         MUI_NewObject(MUIC_Radio
  648 #define VolumelistObject    MUI_NewObject(MUIC_Volumelist
  649 #define FloattextObject     MUI_NewObject(MUIC_Floattext
  650 #define DirlistObject       MUI_NewObject(MUIC_Dirlist
  651 #define CycleObject         MUI_NewObject(MUIC_Cycle
  652 #define GaugeObject         MUI_NewObject(MUIC_Gauge
  653 #define ScaleObject         MUI_NewObject(MUIC_Scale
  654 #define NumericObject       MUI_NewObject(MUIC_Numeric
  655 #define SliderObject        MUI_NewObject(MUIC_Slider
  656 #define NumericbuttonObject MUI_NewObject(MUIC_Numericbutton
  657 #define KnobObject          MUI_NewObject(MUIC_Knob
  658 #define LevelmeterObject    MUI_NewObject(MUIC_Levelmeter
  659 #define BoopsiObject        MUI_NewObject(MUIC_Boopsi
  660 #define ColorfieldObject    MUI_NewObject(MUIC_Colorfield
  661 #define PenadjustObject     MUI_NewObject(MUIC_Penadjust
  662 #define ColoradjustObject   MUI_NewObject(MUIC_Coloradjust
  663 #define PaletteObject       MUI_NewObject(MUIC_Palette
  664 #define GroupObject         MUI_NewObject(MUIC_Group
  665 #define RegisterObject      MUI_NewObject(MUIC_Register
  666 #define VirtgroupObject     MUI_NewObject(MUIC_Virtgroup
  667 #define ScrollgroupObject   MUI_NewObject(MUIC_Scrollgroup
  668 #define PopstringObject     MUI_NewObject(MUIC_Popstring
  669 #define PopobjectObject     MUI_NewObject(MUIC_Popobject
  670 #define PoplistObject       MUI_NewObject(MUIC_Poplist
  671 #define PopaslObject        MUI_NewObject(MUIC_Popasl
  672 #define PendisplayObject    MUI_NewObject(MUIC_Pendisplay
  673 #define PoppenObject        MUI_NewObject(MUIC_Poppen
  674 #define PopcolorObject      MUI_NewObject(MUIC_Popcolor
  675 #define AboutmuiObject      MUI_NewObject(MUIC_Aboutmui
  676 #define DataspaceObject     MUI_NewObject(MUIC_Dataspace
  677 #define DatamapObject       MUI_NewObject(MUIC_Datamap
  678 #define DtpicObject         MUI_NewObject(MUIC_Dtpic
  679 #define VGroup              MUI_NewObject(MUIC_Group
  680 #define HGroup              MUI_NewObject(MUIC_Group,MUIA_Group_Horiz,TRUE
  681 #define ColGroup(cols)      MUI_NewObject(MUIC_Group,MUIA_Group_Columns,(cols)
  682 #define RowGroup(rows)      MUI_NewObject(MUIC_Group,MUIA_Group_Rows   ,(rows)
  683 #define PageGroup           MUI_NewObject(MUIC_Group,MUIA_Group_PageMode,TRUE
  684 #define VGroupV             MUI_NewObject(MUIC_Virtgroup
  685 #define HGroupV             MUI_NewObject(MUIC_Virtgroup,MUIA_Group_Horiz,TRUE
  686 #define ColGroupV(cols)     MUI_NewObject(MUIC_Virtgroup,MUIA_Group_Columns,(cols)
  687 #define RowGroupV(rows)     MUI_NewObject(MUIC_Virtgroup,MUIA_Group_Rows   ,(rows)
  688 #define PageGroupV          MUI_NewObject(MUIC_Virtgroup,MUIA_Group_PageMode,TRUE
  689 #define RegisterGroup(t)    MUI_NewObject(MUIC_Register,MUIA_Register_Titles,(t)
  690 #define FSProtectionBitsObject MUI_NewObject(MUIC_FSProtectionBits
  691 #define End                 TAG_DONE)
  692 
  693 #define Child             MUIA_Group_Child
  694 #define SubWindow         MUIA_Application_Window
  695 #define WindowContents    MUIA_Window_RootObject
  696 
  697 #ifdef __OBJC__
  698 @class MUIApplication;
  699 @class MUIArea;
  700 @class MUIDataspace;
  701 @class MUIMenustrip;
  702 @class MUIMenuitem;
  703 @class MUIWindow;
  704 @class MUIPendisplay;
  705 @class MUIScrollgroup;
  706 @class MUIVirtgroup;
  707 @class MUIScrollbar;
  708 @class MUIString;
  709 #else
  710 typedef Boopsiobject MUIApplication;
  711 typedef Boopsiobject MUIArea;
  712 typedef Boopsiobject MUIDataspace;
  713 typedef Boopsiobject MUIMenustrip;
  714 typedef Boopsiobject MUIMenuitem;
  715 typedef Boopsiobject MUIWindow;
  716 typedef Boopsiobject MUIPendisplay;
  717 typedef Boopsiobject MUIScrollgroup;
  718 typedef Boopsiobject MUIVirtgroup;
  719 typedef Boopsiobject MUIScrollbar;
  720 typedef Boopsiobject MUIString;
  721 #endif
  722 
  723 /***************************************************************************
  724 **
  725 ** Frame Types
  726 ** -----------
  727 **
  728 ** These macros may be used to specify one of MUI's different frame types.
  729 ** Note that every macro consists of one { ti_Tag, ti_Data } pair.
  730 **
  731 ** GroupFrameT() is a special kind of frame that contains a centered
  732 ** title text.
  733 **
  734 ** HGroup, GroupFrameT("Horiz Groups"),
  735 **    Child, RectangleObject, TextFrame  , End,
  736 **    Child, RectangleObject, StringFrame, End,
  737 **    Child, RectangleObject, ButtonFrame, End,
  738 **    Child, RectangleObject, ListFrame  , End,
  739 **    End,
  740 **
  741 ***************************************************************************/
  742 
  743 #define NoFrame          MUIA_Frame, MUIV_Frame_None
  744 #define ButtonFrame      MUIA_Frame, MUIV_Frame_Button
  745 #define ImageButtonFrame MUIA_Frame, MUIV_Frame_ImageButton
  746 #define TextFrame        MUIA_Frame, MUIV_Frame_Text
  747 #define StringFrame      MUIA_Frame, MUIV_Frame_String
  748 #define ReadListFrame    MUIA_Frame, MUIV_Frame_ReadList
  749 #define InputListFrame   MUIA_Frame, MUIV_Frame_InputList
  750 #define PropFrame        MUIA_Frame, MUIV_Frame_Prop
  751 #define SliderFrame      MUIA_Frame, MUIV_Frame_Slider
  752 #define GaugeFrame       MUIA_Frame, MUIV_Frame_Gauge
  753 #define VirtualFrame     MUIA_Frame, MUIV_Frame_Virtual
  754 #define GroupFrame       MUIA_Frame, MUIV_Frame_Group
  755 #define GroupFrameT(s)   MUIA_Frame, MUIV_Frame_Group, MUIA_FrameTitle, s, MUIA_Background, MUII_GroupBack
  756 
  757 
  758 
  759 /***************************************************************************
  760 **
  761 ** Spacing Macros
  762 ** --------------
  763 **
  764 ***************************************************************************/
  765 
  766 #define HVSpace           MUI_NewObject(MUIC_Rectangle,TAG_DONE)
  767 #define HSpace(x)         MUI_MakeObject(MUIO_HSpace,(x))
  768 #define VSpace(x)         MUI_MakeObject(MUIO_VSpace,(x))
  769 #define HCenter(obj)      (HGroup, GroupSpacing(0), Child, HSpace(0), Child, (obj), Child, HSpace(0), End)
  770 #define VCenter(obj)      (VGroup, GroupSpacing(0), Child, VSpace(0), Child, (obj), Child, VSpace(0), End)
  771 #define InnerSpacing(h,v) MUIA_InnerLeft,(h),MUIA_InnerRight,(h),MUIA_InnerTop,(v),MUIA_InnerBottom,(v)
  772 #define GroupSpacing(x)   MUIA_Group_Spacing,(x)
  773 
  774 
  775 
  776 #ifdef MUI_OBSOLETE
  777 
  778 /***************************************************************************
  779 **
  780 ** String-Object
  781 ** -------------
  782 **
  783 ** The following macro creates a simple string gadget.
  784 **
  785 ***************************************************************************/
  786 
  787 #define String(contents,maxlen)\
  788 	StringObject,\
  789 		StringFrame,\
  790 		MUIA_String_MaxLen  , maxlen,\
  791 		MUIA_String_Contents, contents,\
  792 		End
  793 
  794 #define KeyString(contents,maxlen,controlchar)\
  795 	StringObject,\
  796 		StringFrame,\
  797 		MUIA_ControlChar    , controlchar,\
  798 		MUIA_String_MaxLen  , maxlen,\
  799 		MUIA_String_Contents, contents,\
  800 		End
  801 
  802 #endif
  803 
  804 
  805 
  806 #ifdef MUI_OBSOLETE
  807 
  808 /***************************************************************************
  809 **
  810 ** CheckMark-Object
  811 ** ----------------
  812 **
  813 ** The following macro creates a checkmark gadget.
  814 **
  815 ***************************************************************************/
  816 
  817 #define CheckMark(selected)\
  818 	ImageObject,\
  819 		ImageButtonFrame,\
  820 		MUIA_InputMode        , MUIV_InputMode_Toggle,\
  821 		MUIA_Image_Spec       , MUII_CheckMark,\
  822 		MUIA_Image_FreeVert   , TRUE,\
  823 		MUIA_Selected         , selected,\
  824 		MUIA_Background       , MUII_ButtonBack,\
  825 		MUIA_ShowSelState     , FALSE,\
  826 		End
  827 
  828 #define KeyCheckMark(selected,control)\
  829 	ImageObject,\
  830 		ImageButtonFrame,\
  831 		MUIA_InputMode        , MUIV_InputMode_Toggle,\
  832 		MUIA_Image_Spec       , MUII_CheckMark,\
  833 		MUIA_Image_FreeVert   , TRUE,\
  834 		MUIA_Selected         , selected,\
  835 		MUIA_Background       , MUII_ButtonBack,\
  836 		MUIA_ShowSelState     , FALSE,\
  837 		MUIA_ControlChar      , control,\
  838 		End
  839 
  840 #endif
  841 
  842 
  843 /***************************************************************************
  844 **
  845 ** Button-Objects
  846 ** --------------
  847 **
  848 ** Note: Use small letters for KeyButtons, e.g.
  849 **       KeyButton("Cancel",'c')  and not  KeyButton("Cancel",'C') !!
  850 **
  851 ***************************************************************************/
  852 
  853 #define SimpleButton(label) MUI_MakeObject(MUIO_Button,(unsigned long)label)
  854 
  855 #ifdef MUI_OBSOLETE
  856 
  857 #define KeyButton(name,key)\
  858 	TextObject,\
  859 		ButtonFrame,\
  860 		MUIA_Font, MUIV_Font_Button,\
  861 		MUIA_Text_Contents, name,\
  862 		MUIA_Text_PreParse, "\33c",\
  863 		MUIA_Text_HiChar  , key,\
  864 		MUIA_ControlChar  , key,\
  865 		MUIA_InputMode    , MUIV_InputMode_RelVerify,\
  866 		MUIA_Background   , MUII_ButtonBack,\
  867 		End
  868 
  869 #endif
  870 
  871 
  872 #ifdef MUI_OBSOLETE
  873 
  874 /***************************************************************************
  875 **
  876 ** Cycle-Object
  877 ** ------------
  878 **
  879 ***************************************************************************/
  880 
  881 #define Cycle(entries)        CycleObject, MUIA_Font, MUIV_Font_Button, MUIA_Cycle_Entries, entries, End
  882 #define KeyCycle(entries,key) CycleObject, MUIA_Font, MUIV_Font_Button, MUIA_Cycle_Entries, entries, MUIA_ControlChar, key, End
  883 
  884 
  885 
  886 /***************************************************************************
  887 **
  888 ** Radio-Object
  889 ** ------------
  890 **
  891 ***************************************************************************/
  892 
  893 #define Radio(name,array)\
  894 	RadioObject,\
  895 		GroupFrameT(name),\
  896 		MUIA_Radio_Entries,array,\
  897 		End
  898 
  899 #define KeyRadio(name,array,key)\
  900 	RadioObject,\
  901 		GroupFrameT(name),\
  902 		MUIA_Radio_Entries,array,\
  903 		MUIA_ControlChar, key,\
  904 		End
  905 
  906 
  907 
  908 /***************************************************************************
  909 **
  910 ** Slider-Object
  911 ** -------------
  912 **
  913 ***************************************************************************/
  914 
  915 
  916 #define Slider(min,max,level)\
  917 	SliderObject,\
  918 		MUIA_Numeric_Min  , min,\
  919 		MUIA_Numeric_Max  , max,\
  920 		MUIA_Numeric_Value, level,\
  921 		End
  922 
  923 #define KeySlider(min,max,level,key)\
  924 	SliderObject,\
  925 		MUIA_Numeric_Min  , min,\
  926 		MUIA_Numeric_Max  , max,\
  927 		MUIA_Numeric_Value, level,\
  928 		MUIA_ControlChar , key,\
  929 		End
  930 
  931 #endif
  932 
  933 
  934 
  935 /***************************************************************************
  936 **
  937 ** Button to be used for popup objects
  938 **
  939 ***************************************************************************/
  940 
  941 #define PopButton(img) MUI_MakeObject(MUIO_PopButton,(unsigned long)img)
  942 
  943 
  944 
  945 /***************************************************************************
  946 **
  947 ** Labeling Objects
  948 ** ----------------
  949 **
  950 ** Labeling objects, e.g. a group of string gadgets,
  951 **
  952 **   Small: |foo   |
  953 **  Normal: |bar   |
  954 **     Big: |foobar|
  955 **    Huge: |barfoo|
  956 **
  957 ** is done using a 2 column group:
  958 **
  959 ** ColGroup(2),
  960 **  Child, Label2("Small:" ),
  961 **    Child, StringObject, End,
  962 **  Child, Label2("Normal:"),
  963 **    Child, StringObject, End,
  964 **  Child, Label2("Big:"   ),
  965 **    Child, StringObject, End,
  966 **  Child, Label2("Huge:"  ),
  967 **    Child, StringObject, End,
  968 **    End,
  969 **
  970 ** Note that we have three versions of the label macro, depending on
  971 ** the frame type of the right hand object:
  972 **
  973 ** Label1(): For use with standard frames (e.g. checkmarks).
  974 ** Label2(): For use with double high frames (e.g. string gadgets).
  975 ** Label() : For use with objects without a frame.
  976 **
  977 ** These macros ensure that your label will look fine even if the
  978 ** user of your application configured some strange spacing values.
  979 ** If you want to use your own labeling, you'll have to pay attention
  980 ** on this topic yourself.
  981 **
  982 ***************************************************************************/
  983 
  984 #define Label(label)   MUI_MakeObject(MUIO_Label,(unsigned long)label,0)
  985 #define Label1(label)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_SingleFrame)
  986 #define Label2(label)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_DoubleFrame)
  987 #define LLabel(label)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_LeftAligned)
  988 #define LLabel1(label) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_LeftAligned|MUIO_Label_SingleFrame)
  989 #define LLabel2(label) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_LeftAligned|MUIO_Label_DoubleFrame)
  990 #define CLabel(label)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_Centered)
  991 #define CLabel1(label) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_Centered|MUIO_Label_SingleFrame)
  992 #define CLabel2(label) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_Centered|MUIO_Label_DoubleFrame)
  993 
  994 #define FreeLabel(label)   MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert)
  995 #define FreeLabel1(label)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_SingleFrame)
  996 #define FreeLabel2(label)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_DoubleFrame)
  997 #define FreeLLabel(label)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_LeftAligned)
  998 #define FreeLLabel1(label) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_LeftAligned|MUIO_Label_SingleFrame)
  999 #define FreeLLabel2(label) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_LeftAligned|MUIO_Label_DoubleFrame)
 1000 #define FreeCLabel(label)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_Centered)
 1001 #define FreeCLabel1(label) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_Centered|MUIO_Label_SingleFrame)
 1002 #define FreeCLabel2(label) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_Centered|MUIO_Label_DoubleFrame)
 1003 
 1004 #define KeyLabel(label,key)   MUI_MakeObject(MUIO_Label,(unsigned long)label,key)
 1005 #define KeyLabel1(label,key)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_SingleFrame|(key))
 1006 #define KeyLabel2(label,key)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_DoubleFrame|(key))
 1007 #define KeyLLabel(label,key)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_LeftAligned|(key))
 1008 #define KeyLLabel1(label,key) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_LeftAligned|MUIO_Label_SingleFrame|(key))
 1009 #define KeyLLabel2(label,key) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_LeftAligned|MUIO_Label_DoubleFrame|(key))
 1010 #define KeyCLabel(label,key)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_Centered|(key))
 1011 #define KeyCLabel1(label,key) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_Centered|MUIO_Label_SingleFrame|(key))
 1012 #define KeyCLabel2(label,key) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_Centered|MUIO_Label_DoubleFrame|(key))
 1013 
 1014 #define FreeKeyLabel(label,key)   MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|(key))
 1015 #define FreeKeyLabel1(label,key)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_SingleFrame|(key))
 1016 #define FreeKeyLabel2(label,key)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_DoubleFrame|(key))
 1017 #define FreeKeyLLabel(label,key)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_LeftAligned|(key))
 1018 #define FreeKeyLLabel1(label,key) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_LeftAligned|MUIO_Label_SingleFrame|(key))
 1019 #define FreeKeyLLabel2(label,key) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_LeftAligned|MUIO_Label_DoubleFrame|(key))
 1020 #define FreeKeyCLabel(label,key)  MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_Centered|(key))
 1021 #define FreeKeyCLabel1(label,key) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_Centered|MUIO_Label_SingleFrame|(key))
 1022 #define FreeKeyCLabel2(label,key) MUI_MakeObject(MUIO_Label,(unsigned long)label,MUIO_Label_FreeVert|MUIO_Label_Centered|MUIO_Label_DoubleFrame|(key))
 1023 
 1024 
 1025 
 1026 /***************************************************************************
 1027 **
 1028 ** Controlling Objects
 1029 ** -------------------
 1030 **
 1031 ** set() and get() are two short stubs for BOOPSI GetAttr() and SetAttrs()
 1032 ** calls:
 1033 **
 1034 ** {
 1035 **    char *x;
 1036 **
 1037 **    set(obj,MUIA_String_Contents,"foobar");
 1038 **    get(obj,MUIA_String_Contents,&x);
 1039 **
 1040 **    printf("gadget contains '%s'\n",x);
 1041 ** }
 1042 **
 1043 ** nnset() sets an attribute without triggering a possible notification.
 1044 **
 1045 ***************************************************************************/
 1046 
 1047 #ifndef __cplusplus
 1048 
 1049 #define get(obj,attr,store) GetAttr(attr,obj,(ULONG *)store)
 1050 #define set(obj,attr,value) SetAttrs(obj,attr,value,TAG_DONE)
 1051 #define nnset(obj,attr,value) SetAttrs(obj,MUIA_NoNotify,TRUE,attr,value,TAG_DONE)
 1052 
 1053 #define setmutex(obj,n)     set(obj,MUIA_Radio_Active,n)
 1054 #define setcycle(obj,n)     set(obj,MUIA_Cycle_Active,n)
 1055 #define setstring(obj,s)    set(obj,MUIA_String_Contents,s)
 1056 #define setcheckmark(obj,b) set(obj,MUIA_Selected,b)
 1057 #define setslider(obj,l)    set(obj,MUIA_Numeric_Value,l)
 1058 
 1059 #endif
 1060 
 1061 #endif /* MUI_NOSHORTCUTS */
 1062 
 1063 
 1064 /***************************************************************************
 1065 **
 1066 ** For Boopsi Image Implementors Only:
 1067 **
 1068 ** If MUI is using a boopsi image object, it will send a special method
 1069 ** immediately after object creation. This method has a parameter structure
 1070 ** where the boopsi can fill in its minimum and maximum size and learn if
 1071 ** its used in a horizontal or vertical context.
 1072 **
 1073 ** The boopsi image must use the method id (MUIM_BoopsiQuery) as return
 1074 ** value. That's how MUI sees that the method is implemented.
 1075 **
 1076 ** Note: MUI does not depend on this method. If the boopsi image doesn't
 1077 **       implement it, minimum size will be 0 and maximum size unlimited.
 1078 **
 1079 ***************************************************************************/
 1080 
 1081 #define MUIM_BoopsiQuery 0x80427157 /* this is send to the boopsi and */
 1082 									/* must be used as return value   */
 1083 
 1084 struct MUI_BoopsiQuery              /* parameter structure */
 1085 {
 1086 	ULONG mbq_MethodID;              /* always MUIM_BoopsiQuery */
 1087 
 1088 	struct Screen *mbq_Screen;       /* obsolete, use mbq_RenderInfo */
 1089 	ULONG mbq_Flags;                 /* read only, see below */
 1090 
 1091 	LONG mbq_MinWidth ;              /* write only, fill in min width  */
 1092 	LONG mbq_MinHeight;              /* write only, fill in min height */
 1093 	LONG mbq_MaxWidth ;              /* write only, fill in max width  */
 1094 	LONG mbq_MaxHeight;              /* write only, fill in max height */
 1095 	LONG mbq_DefWidth ;              /* write only, fill in def width  */
 1096 	LONG mbq_DefHeight;              /* write only, fill in def height */
 1097 
 1098 	struct MUI_RenderInfo *mbq_RenderInfo;  /* read only, display context */
 1099 
 1100 	/* may grow in future ... */
 1101 };
 1102 
 1103 #define MUIP_BoopsiQuery MUI_BoopsiQuery  /* old structure name */
 1104 
 1105 #define MBQF_HORIZ (1<<0)           /* object used in a horizontal */
 1106 									/* context (else vertical)     */
 1107 
 1108 #define MBQ_MUI_MAXMAX (10000)          /* use this for unlimited MaxWidth/Height */
 1109 
 1110 #define IDCMP_MOUSEOBJECT 0x40000000 /* special idcmp message created by MUI */
 1111 
 1112 /* Flags for Slave.mui MUIM_Slave_Delegate */
 1113 #define MUIF_Slave_Delegate_ForceSlave (1<<0) /* skip caller task check and always dispatch on Slave thread
 1114                                                  useful when calling from a process which is neither
 1115                                                  MUI's main process nor the Slave process */
 1116 
 1117 struct MUI_RGBColor
 1118 {
 1119 	ULONG red;
 1120 	ULONG green;
 1121 	ULONG blue;
 1122 };
 1123 
 1124 
 1125 /*******************************************/
 1126 /* Begin of automatic header file creation */
 1127 /*******************************************/
 1128 
 1129 
 1130 
 1131 
 1132 /****************************************************************************/
 1133 /** Notify                                                                 **/
 1134 /****************************************************************************/
 1135 
 1136 #ifdef _DCC
 1137 extern char MUIC_Notify[];
 1138 #else
 1139 #define MUIC_Notify "Notify.mui"
 1140 #endif
 1141 
 1142 /* Methods */
 1143 
 1144 #define MUIM_CallHook                       0x8042b96b /* V4  */
 1145 #define MUIM_Export                         0x80420f1c /* V12 */
 1146 #define MUIM_FindObject                     0x8042038f /* V13 */
 1147 #define MUIM_FindUData                      0x8042c196 /* V8  */
 1148 #define MUIM_GetConfigItem                  0x80423edb /* V11 */
 1149 #define MUIM_GetUData                       0x8042ed0c /* V8  */
 1150 #define MUIM_Import                         0x8042d012 /* V12 */
 1151 #define MUIM_KillNotify                     0x8042d240 /* V4  */
 1152 #define MUIM_KillNotifyObj                  0x8042b145 /* V16 */
 1153 #define MUIM_MultiSet                       0x8042d356 /* V7  */
 1154 #define MUIM_NoNotifySet                    0x8042216f /* V9  */
 1155 #define MUIM_Notify                         0x8042c9cb /* V4  */
 1156 #define MUIM_Set                            0x8042549a /* V4  */
 1157 #define MUIM_SetAsString                    0x80422590 /* V4  */
 1158 #define MUIM_SetUData                       0x8042c920 /* V8  */
 1159 #define MUIM_SetUDataOnce                   0x8042ca19 /* V11 */
 1160 #define MUIM_WriteLong                      0x80428d86 /* V6  */
 1161 #define MUIM_WriteString                    0x80424bf4 /* V6  */
 1162 struct  MUIP_CallHook                       { ULONG MethodID; struct Hook *Hook; ULONG param1; /* ... */ };
 1163 struct  MUIP_Export                         { ULONG MethodID; MUIDataspace *dataspace; };
 1164 struct  MUIP_FindObject                     { ULONG MethodID; Boopsiobject *findme; };
 1165 struct  MUIP_FindUData                      { ULONG MethodID; ULONG udata; };
 1166 struct  MUIP_GetConfigItem                  { ULONG MethodID; ULONG id; ULONG *storage; };
 1167 struct  MUIP_GetUData                       { ULONG MethodID; ULONG udata; ULONG attr; ULONG *storage; };
 1168 struct  MUIP_Import                         { ULONG MethodID; MUIDataspace *dataspace; };
 1169 struct  MUIP_KillNotify                     { ULONG MethodID; ULONG TrigAttr; };
 1170 struct  MUIP_KillNotifyObj                  { ULONG MethodID; ULONG TrigAttr; Boopsiobject *dest; };
 1171 struct  MUIP_MultiSet                       { ULONG MethodID; ULONG attr; ULONG val; APTR obj; /* ... */ };
 1172 struct  MUIP_NoNotifySet                    { ULONG MethodID; ULONG attr; ULONG val; /* ... */ };
 1173 struct  MUIP_Notify                         { ULONG MethodID; ULONG TrigAttr; ULONG TrigVal; APTR DestObj; ULONG FollowParams; /* ... */ };
 1174 struct  MUIP_Set                            { ULONG MethodID; ULONG attr; ULONG val; };
 1175 struct  MUIP_SetAsString                    { ULONG MethodID; ULONG attr; STRPTR format; ULONG val; /* ... */ };
 1176 struct  MUIP_SetUData                       { ULONG MethodID; ULONG udata; ULONG attr; ULONG val; };
 1177 struct  MUIP_SetUDataOnce                   { ULONG MethodID; ULONG udata; ULONG attr; ULONG val; };
 1178 struct  MUIP_WriteLong                      { ULONG MethodID; ULONG val; ULONG *memory; };
 1179 struct  MUIP_WriteString                    { ULONG MethodID; STRPTR str; STRPTR memory; };
 1180 
 1181 /* Attributes */
 1182 
 1183 #define MUIA_ApplicationObject              0x8042d3ee /* V4  ..g MUIApplication *  */
 1184 #define MUIA_AppMessage                     0x80421955 /* V5  .sg struct AppMessage * */
 1185 #define MUIA_CSSFilePath                    0x804225d8 /* V22 ..g CONST_STRPTR      */
 1186 #define MUIA_HelpLine                       0x8042a825 /* V4  isg LONG              */
 1187 #define MUIA_HelpNode                       0x80420b85 /* V4  isg STRPTR            */
 1188 #define MUIA_NoNotify                       0x804237f9 /* V7  .s. BOOL              */
 1189 #define MUIA_NoNotifyMethod                 0x80420a74 /* V20 .s. ULONG             */
 1190 #define MUIA_ObjectID                       0x8042d76e /* V11 isg ULONG             */
 1191 #define MUIA_Parent                         0x8042e35f /* V11 ..g Boopsiobject *    */
 1192 #define MUIA_Revision                       0x80427eaa /* V4  ..g LONG              */
 1193 #define MUIA_UserData                       0x80420313 /* V4  isg ULONG             */
 1194 #define MUIA_Version                        0x80422301 /* V4  ..g LONG              */
 1195 
 1196 
 1197 
 1198 /****************************************************************************/
 1199 /** Family                                                                 **/
 1200 /****************************************************************************/
 1201 
 1202 #ifdef _DCC
 1203 extern char MUIC_Family[];
 1204 #else
 1205 #define MUIC_Family "Family.mui"
 1206 #endif
 1207 
 1208 /* Methods */
 1209 
 1210 #define MUIM_Family_AddHead                 0x8042e200 /* V8  */
 1211 #define MUIM_Family_AddTail                 0x8042d752 /* V8  */
 1212 #define MUIM_Family_DoChildMethods          0x80429a3c /* V20 */
 1213 #define MUIM_Family_GetChild                0x8042c556 /* V20 */
 1214 #define MUIM_Family_Insert                  0x80424d34 /* V8  */
 1215 #define MUIM_Family_Remove                  0x8042f8a9 /* V8  */
 1216 #define MUIM_Family_Reorder                 0x80426008 /* V21 */
 1217 #define MUIM_Family_Sort                    0x80421c49 /* V8  */
 1218 #define MUIM_Family_Transfer                0x8042c14a /* V8  */
 1219 struct  MUIP_Family_AddHead                 { ULONG MethodID; Boopsiobject *obj; };
 1220 struct  MUIP_Family_AddTail                 { ULONG MethodID; Boopsiobject *obj; };
 1221 struct  MUIP_Family_DoChildMethods          { ULONG MethodID; };
 1222 struct  MUIP_Family_GetChild                { ULONG MethodID; LONG nr; Boopsiobject *ref; };
 1223 struct  MUIP_Family_Insert                  { ULONG MethodID; Boopsiobject *obj; Boopsiobject *pred; };
 1224 struct  MUIP_Family_Remove                  { ULONG MethodID; Boopsiobject *obj; };
 1225 struct  MUIP_Family_Reorder                 { ULONG MethodID; Boopsiobject *after; Boopsiobject *array[1]; };
 1226 struct  MUIP_Family_Sort                    { ULONG MethodID; Boopsiobject *obj[1]; };
 1227 struct  MUIP_Family_Transfer                { ULONG MethodID; Boopsiobject *family; };
 1228 
 1229 /* Attributes */
 1230 
 1231 #define MUIA_Family_Child                   0x8042c696 /* V8  i.. Boopsiobject *    */
 1232 #define MUIA_Family_ChildCount              0x8042b25a /* V20 ..g LONG              */
 1233 #define MUIA_Family_List                    0x80424b9e /* V8  ..g struct MinList *  */
 1234 
 1235 
 1236 
 1237 /****************************************************************************/
 1238 /** Menustrip                                                              **/
 1239 /****************************************************************************/
 1240 
 1241 #ifdef _DCC
 1242 extern char MUIC_Menustrip[];
 1243 #else
 1244 #define MUIC_Menustrip "Menustrip.mui"
 1245 #endif
 1246 
 1247 /* Methods */
 1248 
 1249 #define MUIM_Menustrip_ExitChange           0x8042ce4d /* V20 */
 1250 #define MUIM_Menustrip_InitChange           0x8042dcd9 /* V20 */
 1251 #define MUIM_Menustrip_Popup                0x80420e76 /* V20 */
 1252 #define MUIM_Menustrip_WillOpen             0x804230e9 /* V20 */
 1253 struct  MUIP_Menustrip_ExitChange           { ULONG MethodID; };
 1254 struct  MUIP_Menustrip_InitChange           { ULONG MethodID; };
 1255 struct  MUIP_Menustrip_Popup                { ULONG MethodID; Boopsiobject *parent; ULONG flags; int x; int y; };
 1256 struct  MUIP_Menustrip_WillOpen             { ULONG MethodID; };
 1257 
 1258 /* Attributes */
 1259 
 1260 #define MUIA_Menustrip_CaseSensitive        0x8042d718 /* V20 i.g LONG              */
 1261 #define MUIA_Menustrip_Enabled              0x8042815b /* V8  isg BOOL              */
 1262 
 1263 
 1264 
 1265 /****************************************************************************/
 1266 /** Menu                                                                   **/
 1267 /****************************************************************************/
 1268 
 1269 #ifdef _DCC
 1270 extern char MUIC_Menu[];
 1271 #else
 1272 #define MUIC_Menu "Menu.mui"
 1273 #endif
 1274 
 1275 /* Attributes */
 1276 
 1277 #define MUIA_Menu_CopyStrings               0x8042dbe2 /* V20 i.. BOOL              */
 1278 #define MUIA_Menu_Enabled                   0x8042ed48 /* V8  isg BOOL              */
 1279 #define MUIA_Menu_Title                     0x8042a0e3 /* V8  isg STRPTR            */
 1280 
 1281 
 1282 
 1283 /****************************************************************************/
 1284 /** Menuitem                                                               **/
 1285 /****************************************************************************/
 1286 
 1287 #ifdef _DCC
 1288 extern char MUIC_Menuitem[];
 1289 #else
 1290 #define MUIC_Menuitem "Menuitem.mui"
 1291 #endif
 1292 
 1293 /* Methods */
 1294 
 1295 
 1296 /* Attributes */
 1297 
 1298 #define MUIA_Menuitem_Checked               0x8042562a /* V8  isg BOOL              */
 1299 #define MUIA_Menuitem_Checkit               0x80425ace /* V8  isg BOOL              */
 1300 #define MUIA_Menuitem_CommandString         0x8042b9cc /* V16 isg BOOL              */
 1301 #define MUIA_Menuitem_CopyStrings           0x8042dc1b /* V16 i.. BOOL              */
 1302 #define MUIA_Menuitem_Enabled               0x8042ae0f /* V8  isg BOOL              */
 1303 #define MUIA_Menuitem_Exclude               0x80420bc6 /* V8  isg LONG              */
 1304 #define MUIA_Menuitem_Menuitem              0x80424b21 /* V20 isg Boopsiobject *    */
 1305 #define MUIA_Menuitem_Shortcut              0x80422030 /* V8  isg STRPTR            */
 1306 #define MUIA_Menuitem_Title                 0x804218be /* V8  isg STRPTR            */
 1307 #define MUIA_Menuitem_Toggle                0x80424d5c /* V8  isg BOOL              */
 1308 #define MUIA_Menuitem_Trigger               0x80426f32 /* V8  .sg struct MenuItem * */
 1309 
 1310 #define MUIV_Menuitem_Shortcut_Check -1
 1311 
 1312 
 1313 /****************************************************************************/
 1314 /** Application                                                            **/
 1315 /****************************************************************************/
 1316 
 1317 #ifdef _DCC
 1318 extern char MUIC_Application[];
 1319 #else
 1320 #define MUIC_Application "Application.mui"
 1321 #endif
 1322 
 1323 /* Methods */
 1324 
 1325 #define MUIM_Application_AboutMUI           0x8042d21d /* V14 */
 1326 #define MUIM_Application_AddInputHandler    0x8042f099 /* V11 */
 1327 #define MUIM_Application_BuildSettingsPanel 0x8042b58f /* V20 */
 1328 #define MUIM_Application_CheckRefresh       0x80424d68 /* V11 */
 1329 #define MUIM_Application_DefaultConfigItem  0x8042d934 /* V20 */
 1330 #ifdef MUI_OBSOLETE
 1331 #define MUIM_Application_GetMenuCheck       0x8042c0a7 /* V4  */
 1332 #endif /* MUI_OBSOLETE */
 1333 #ifdef MUI_OBSOLETE
 1334 #define MUIM_Application_GetMenuState       0x8042a58f /* V4  */
 1335 #endif /* MUI_OBSOLETE */
 1336 #ifdef MUI_OBSOLETE
 1337 #define MUIM_Application_Input              0x8042d0f5 /* V4  */
 1338 #endif /* MUI_OBSOLETE */
 1339 #define MUIM_Application_InputBuffered      0x80427e59 /* V4  */
 1340 #define MUIM_Application_Load               0x8042f90d /* V4  */
 1341 #define MUIM_Application_NewInput           0x80423ba6 /* V11 */
 1342 #define MUIM_Application_OpenConfigWindow   0x804299ba /* V11 */
 1343 #define MUIM_Application_PushMethod         0x80429ef8 /* V4  */
 1344 #define MUIM_Application_RemInputHandler    0x8042e7af /* V11 */
 1345 #define MUIM_Application_ReturnID           0x804276ef /* V4  */
 1346 #define MUIM_Application_Run                0x90420103 /* Extension method */ /* V20 */
 1347 #define MUIM_Application_Save               0x804227ef /* V4  */
 1348 #define MUIM_Application_SetConfigItem      0x80424a80 /* V11 */
 1349 #ifdef MUI_OBSOLETE
 1350 #define MUIM_Application_SetMenuCheck       0x8042a707 /* V4  */
 1351 #endif /* MUI_OBSOLETE */
 1352 #ifdef MUI_OBSOLETE
 1353 #define MUIM_Application_SetMenuState       0x80428bef /* V4  */
 1354 #endif /* MUI_OBSOLETE */
 1355 #define MUIM_Application_ShowHelp           0x80426479 /* V4  */
 1356 #define MUIM_Application_UnpushMethod       0x804211dd /* V20 */
 1357 struct  MUIP_Application_AboutMUI           { ULONG MethodID; MUIWindow *refwindow; };
 1358 struct  MUIP_Application_AddInputHandler    { ULONG MethodID; struct MUI_InputHandlerNode *ihnode; };
 1359 struct  MUIP_Application_BuildSettingsPanel { ULONG MethodID; ULONG number; };
 1360 struct  MUIP_Application_CheckRefresh       { ULONG MethodID; };
 1361 struct  MUIP_Application_DefaultConfigItem  { ULONG MethodID; ULONG cfgid; };
 1362 struct  MUIP_Application_GetMenuCheck       { ULONG MethodID; ULONG MenuID; };
 1363 struct  MUIP_Application_GetMenuState       { ULONG MethodID; ULONG MenuID; };
 1364 struct  MUIP_Application_Input              { ULONG MethodID; ULONG *signal; };
 1365 struct  MUIP_Application_InputBuffered      { ULONG MethodID; };
 1366 struct  MUIP_Application_Load               { ULONG MethodID; STRPTR name; };
 1367 struct  MUIP_Application_NewInput           { ULONG MethodID; ULONG *signal; };
 1368 struct  MUIP_Application_OpenConfigWindow   { ULONG MethodID; ULONG flags; STRPTR classid; };
 1369 struct  MUIP_Application_PushMethod         { ULONG MethodID; Boopsiobject *dest; LONG count; /* ... */ };
 1370 struct  MUIP_Application_RemInputHandler    { ULONG MethodID; struct MUI_InputHandlerNode *ihnode; };
 1371 struct  MUIP_Application_ReturnID           { ULONG MethodID; ULONG retid; };
 1372 struct  MUIP_Application_Run                { ULONG MethodID; }; /* Extension method */
 1373 struct  MUIP_Application_Save               { ULONG MethodID; STRPTR name; };
 1374 struct  MUIP_Application_SetConfigItem      { ULONG MethodID; ULONG item; APTR data; };
 1375 struct  MUIP_Application_SetMenuCheck       { ULONG MethodID; ULONG MenuID; LONG stat; };
 1376 struct  MUIP_Application_SetMenuState       { ULONG MethodID; ULONG MenuID; LONG stat; };
 1377 struct  MUIP_Application_ShowHelp           { ULONG MethodID; MUIWindow *window; STRPTR name; STRPTR node; LONG line; };
 1378 struct  MUIP_Application_UnpushMethod       { ULONG MethodID; Boopsiobject *targetobj; ULONG methodid; ULONG method; };
 1379 
 1380 /* Attributes */
 1381 
 1382 #define MUIA_Application_Active             0x804260ab /* V4  isg BOOL              */
 1383 #define MUIA_Application_Author             0x80424842 /* V4  i.g STRPTR            */
 1384 #define MUIA_Application_Base               0x8042e07a /* V4  i.g STRPTR            */
 1385 #define MUIA_Application_Broker             0x8042dbce /* V4  ..g CxObj *           */
 1386 #define MUIA_Application_BrokerHook         0x80428f4b /* V4  isg struct Hook *     */
 1387 #define MUIA_Application_BrokerPort         0x8042e0ad /* V6  ..g struct MsgPort *  */
 1388 #define MUIA_Application_BrokerPri          0x8042c8d0 /* V6  i.g LONG              */
 1389 #define MUIA_Application_Commands           0x80428648 /* V4  isg struct MUI_Command * */
 1390 #define MUIA_Application_Copyright          0x8042ef4d /* V4  i.g STRPTR            */
 1391 #define MUIA_Application_Description        0x80421fc6 /* V4  i.g STRPTR            */
 1392 #define MUIA_Application_DiskObject         0x804235cb /* V4  isg struct DiskObject * */
 1393 #define MUIA_Application_DoubleStart        0x80423bc6 /* V4  .sg BOOL              */
 1394 #define MUIA_Application_DropObject         0x80421266 /* V5  is. Boopsiobject *    */
 1395 #define MUIA_Application_ForceQuit          0x804257df /* V8  .sg BOOL              */
 1396 #define MUIA_Application_HelpFile           0x804293f4 /* V8  isg STRPTR            */
 1397 #define MUIA_Application_Iconified          0x8042a07f /* V4  .sg BOOL              */
 1398 #define MUIA_Application_IconifyTitle       0x80422cb8 /* V18 isg STRPTR            */
 1399 #ifdef MUI_OBSOLETE
 1400 #define MUIA_Application_Menu               0x80420e1f /* V4  i.g struct NewMenu *  */
 1401 #endif /* MUI_OBSOLETE */
 1402 #define MUIA_Application_MenuAction         0x80428961 /* V4  isg ULONG             */
 1403 #define MUIA_Application_MenuHelp           0x8042540b /* V4  ..g ULONG             */
 1404 #define MUIA_Application_Menustrip          0x804252d9 /* V8  i.g MUIMenustrip *    */
 1405 #define MUIA_Application_RexxHook           0x80427c42 /* V7  isg struct Hook *     */
 1406 #define MUIA_Application_RexxMsg            0x8042fd88 /* V4  .sg struct RexxMsg *  */
 1407 #define MUIA_Application_RexxString         0x8042d711 /* V4  .s. STRPTR            */
 1408 #define MUIA_Application_SingleTask         0x8042a2c8 /* V4  i.. BOOL              */
 1409 #define MUIA_Application_Sleep              0x80425711 /* V4  .sg BOOL              */
 1410 #define MUIA_Application_Title              0x804281b8 /* V4  i.g STRPTR            */
 1411 #define MUIA_Application_UseCommodities     0x80425ee5 /* V10 i.. BOOL              */
 1412 #define MUIA_Application_UsedClasses        0x8042e9a7 /* V20 isg STRPTR *          */
 1413 #define MUIA_Application_UseRexx            0x80422387 /* V10 i.. BOOL              */
 1414 #define MUIA_Application_UseScreenNotify    0x80420861 /* V20 i.. BOOL              */
 1415 #define MUIA_Application_Version            0x8042b33f /* V4  i.g STRPTR            */
 1416 #define MUIA_Application_Window             0x8042bfe0 /* V4  i.. Boopsiobject *    */
 1417 #define MUIA_Application_WindowList         0x80429abe /* V13 ..g struct List *     */
 1418 
 1419 
 1420 
 1421 /****************************************************************************/
 1422 /** Window                                                                 **/
 1423 /****************************************************************************/
 1424 
 1425 #ifdef _DCC
 1426 extern char MUIC_Window[];
 1427 #else
 1428 #define MUIC_Window "Window.mui"
 1429 #endif
 1430 
 1431 /* Methods */
 1432 
 1433 #define MUIM_Window_AddEventHandler         0x804203b7 /* V16 */
 1434 #define MUIM_Window_Cleanup                 0x8042ab26 /* V18 */
 1435 #ifdef MUI_OBSOLETE
 1436 #define MUIM_Window_GetMenuCheck            0x80420414 /* V4  */
 1437 #endif /* MUI_OBSOLETE */
 1438 #ifdef MUI_OBSOLETE
 1439 #define MUIM_Window_GetMenuState            0x80420d2f /* V4  */
 1440 #endif /* MUI_OBSOLETE */
 1441 #define MUIM_Window_RemEventHandler         0x8042679e /* V16 */
 1442 #define MUIM_Window_ScreenToBack            0x8042913d /* V4  */
 1443 #define MUIM_Window_ScreenToFront           0x804227a4 /* V4  */
 1444 #ifdef MUI_OBSOLETE
 1445 #define MUIM_Window_SetCycleChain           0x80426510 /* V4  */
 1446 #endif /* MUI_OBSOLETE */
 1447 #ifdef MUI_OBSOLETE
 1448 #define MUIM_Window_SetMenuCheck            0x80422243 /* V4  */
 1449 #endif /* MUI_OBSOLETE */
 1450 #ifdef MUI_OBSOLETE
 1451 #define MUIM_Window_SetMenuState            0x80422b5e /* V4  */
 1452 #endif /* MUI_OBSOLETE */
 1453 #define MUIM_Window_Setup                   0x8042c34c /* V18 */
 1454 #define MUIM_Window_Snapshot                0x8042945e /* V11 */
 1455 #define MUIM_Window_ToBack                  0x8042152e /* V4  */
 1456 #define MUIM_Window_ToFront                 0x8042554f /* V4  */
 1457 struct  MUIP_Window_AddEventHandler         { ULONG MethodID; struct MUI_EventHandlerNode *ehnode; };
 1458 struct  MUIP_Window_Cleanup                 { ULONG MethodID; };
 1459 struct  MUIP_Window_GetMenuCheck            { ULONG MethodID; ULONG MenuID; };
 1460 struct  MUIP_Window_GetMenuState            { ULONG MethodID; ULONG MenuID; };
 1461 struct  MUIP_Window_RemEventHandler         { ULONG MethodID; struct MUI_EventHandlerNode *ehnode; };
 1462 struct  MUIP_Window_ScreenToBack            { ULONG MethodID; };
 1463 struct  MUIP_Window_ScreenToFront           { ULONG MethodID; };
 1464 struct  MUIP_Window_SetCycleChain           { ULONG MethodID; Boopsiobject *obj[1]; };
 1465 struct  MUIP_Window_SetMenuCheck            { ULONG MethodID; ULONG MenuID; LONG stat; };
 1466 struct  MUIP_Window_SetMenuState            { ULONG MethodID; ULONG MenuID; LONG stat; };
 1467 struct  MUIP_Window_Setup                   { ULONG MethodID; };
 1468 struct  MUIP_Window_Snapshot                { ULONG MethodID; LONG flags; };
 1469 struct  MUIP_Window_ToBack                  { ULONG MethodID; };
 1470 struct  MUIP_Window_ToFront                 { ULONG MethodID; };
 1471 
 1472 /* Attributes */
 1473 
 1474 #define MUIA_Window_Activate                0x80428d2f /* V4  isg BOOL              */
 1475 #define MUIA_Window_ActiveObject            0x80427925 /* V4  .sg MUIArea *         */
 1476 #define MUIA_Window_AltHeight               0x8042cce3 /* V4  i.g LONG              */
 1477 #define MUIA_Window_AltLeftEdge             0x80422d65 /* V4  i.g LONG              */
 1478 #define MUIA_Window_AltTopEdge              0x8042e99b /* V4  i.g LONG              */
 1479 #define MUIA_Window_AltWidth                0x804260f4 /* V4  i.g LONG              */
 1480 #define MUIA_Window_AppWindow               0x804280cf /* V5  i.. BOOL              */
 1481 #define MUIA_Window_Backdrop                0x8042c0bb /* V4  i.. BOOL              */
 1482 #define MUIA_Window_Borderless              0x80429b79 /* V4  i.. BOOL              */
 1483 #define MUIA_Window_CloseGadget             0x8042a110 /* V4  i.. BOOL              */
 1484 #define MUIA_Window_CloseRequest            0x8042e86e /* V4  .sg BOOL              */
 1485 #define MUIA_Window_DefaultObject           0x804294d7 /* V4  isg MUIArea *         */
 1486 #define MUIA_Window_DepthGadget             0x80421923 /* V4  i.. BOOL              */
 1487 #define MUIA_Window_DisableKeys             0x80424c36 /* V15 isg ULONG             */
 1488 #define MUIA_Window_DragBar                 0x8042045d /* V4  i.. BOOL              */
 1489 #define MUIA_Window_FancyDrawing            0x8042bd0e /* V8  isg BOOL              */
 1490 #define MUIA_Window_HasAlpha                0x8042e632 /* V20 isg BOOL              */
 1491 #define MUIA_Window_Height                  0x80425846 /* V4  i.g LONG              */
 1492 #define MUIA_Window_ID                      0x804201bd /* V4  isg ULONG             */
 1493 #define MUIA_Window_InputEvent              0x804247d8 /* V4  ..g struct InputEvent * */
 1494 #define MUIA_Window_IsSubWindow             0x8042b5aa /* V4  isg BOOL              */
 1495 #define MUIA_Window_LeftEdge                0x80426c65 /* V4  i.g LONG              */
 1496 #ifdef MUI_OBSOLETE
 1497 #define MUIA_Window_Menu                    0x8042db94 /* V4  i.. struct NewMenu *  */
 1498 #endif /* MUI_OBSOLETE */
 1499 #define MUIA_Window_MenuAction              0x80427521 /* V8  isg ULONG             */
 1500 #define MUIA_Window_Menustrip               0x8042855e /* V8  isg MUIMenustrip *    */
 1501 #define MUIA_Window_MouseObject             0x8042bf9b /* V10 ..g MUIArea *         */
 1502 #define MUIA_Window_NeedsMouseObject        0x8042372a /* V10 i.. BOOL              */
 1503 #define MUIA_Window_NoMenus                 0x80429df5 /* V4  isg BOOL              */
 1504 #define MUIA_Window_Opacity                 0x80429617 /* V20 isg LONG              */
 1505 #define MUIA_Window_Open                    0x80428aa0 /* V4  .sg BOOL              */
 1506 #define MUIA_Window_PanelWindow             0x80429528 /* V20 i.. BOOL              */
 1507 #define MUIA_Window_PublicScreen            0x804278e4 /* V6  isg STRPTR            */
 1508 #define MUIA_Window_RefWindow               0x804201f4 /* V4  is. MUIWindow *       */
 1509 #define MUIA_Window_RootObject              0x8042cba5 /* V4  isg MUIArea *         */
 1510 #define MUIA_Window_Screen                  0x8042df4f /* V4  isg struct Screen *   */
 1511 #define MUIA_Window_ScreenTitle             0x804234b0 /* V5  isg STRPTR            */
 1512 #define MUIA_Window_SizeGadget              0x8042e33d /* V4  i.. BOOL              */
 1513 #define MUIA_Window_SizeRight               0x80424780 /* V4  i.. BOOL              */
 1514 #define MUIA_Window_Sleep                   0x8042e7db /* V4  .sg BOOL              */
 1515 #define MUIA_Window_TabletMessages          0x804217b7 /* V20 i.g BOOL              */
 1516 #define MUIA_Window_Title                   0x8042ad3d /* V4  isg STRPTR            */
 1517 #define MUIA_Window_TopEdge                 0x80427c66 /* V4  i.g LONG              */
 1518 #define MUIA_Window_UseBottomBorderScroller 0x80424e79 /* V13 isg BOOL              */
 1519 #define MUIA_Window_UseLeftBorderScroller   0x8042433e /* V13 isg BOOL              */
 1520 #define MUIA_Window_UseRightBorderScroller  0x8042c05e /* V13 isg BOOL              */
 1521 #define MUIA_Window_VisibleOnMaximize       0x8042acfd /* V20 isg BOOL              */
 1522 #define MUIA_Window_Width                   0x8042dcae /* V4  i.g LONG              */
 1523 #define MUIA_Window_Window                  0x80426a42 /* V4  ..g struct Window *   */
 1524 
 1525 #define MUIV_Window_ActiveObject_None 0
 1526 #define MUIV_Window_ActiveObject_Next -1
 1527 #define MUIV_Window_ActiveObject_Prev -2
 1528 #define MUIV_Window_ActiveObject_Left -3
 1529 #define MUIV_Window_ActiveObject_Right -4
 1530 #define MUIV_Window_ActiveObject_Up -5
 1531 #define MUIV_Window_ActiveObject_Down -6
 1532 #define MUIV_Window_AltHeight_MinMax(p) (0-(p))
 1533 #define MUIV_Window_AltHeight_Visible(p) (-100-(p))
 1534 #define MUIV_Window_AltHeight_Screen(p) (-200-(p))
 1535 #define MUIV_Window_AltHeight_Scaled -1000
 1536 #define MUIV_Window_AltLeftEdge_Centered -1
 1537 #define MUIV_Window_AltLeftEdge_Moused -2
 1538 #define MUIV_Window_AltLeftEdge_NoChange -1000
 1539 #define MUIV_Window_AltTopEdge_Centered -1
 1540 #define MUIV_Window_AltTopEdge_Moused -2
 1541 #define MUIV_Window_AltTopEdge_Delta(p) (-3-(p))
 1542 #define MUIV_Window_AltTopEdge_NoChange -1000
 1543 #define MUIV_Window_AltWidth_MinMax(p) (0-(p))
 1544 #define MUIV_Window_AltWidth_Visible(p) (-100-(p))
 1545 #define MUIV_Window_AltWidth_Screen(p) (-200-(p))
 1546 #define MUIV_Window_AltWidth_Scaled -1000
 1547 #define MUIV_Window_Height_MinMax(p) (0-(p))
 1548 #define MUIV_Window_Height_Visible(p) (-100-(p))
 1549 #define MUIV_Window_Height_Screen(p) (-200-(p))
 1550 #define MUIV_Window_Height_Scaled -1000
 1551 #define MUIV_Window_Height_Default -1001
 1552 #define MUIV_Window_LeftEdge_Centered -1
 1553 #define MUIV_Window_LeftEdge_Moused -2
 1554 #define MUIV_Window_LeftEdge_Right(n) (-1000-(n))
 1555 #ifdef MUI_OBSOLETE
 1556 #define MUIV_Window_Menu_NoMenu -1
 1557 #endif /* MUI_OBSOLETE */
 1558 #define MUIV_Window_TopEdge_Centered -1
 1559 #define MUIV_Window_TopEdge_Moused -2
 1560 #define MUIV_Window_TopEdge_Delta(p) (-3-(p))
 1561 #define MUIV_Window_TopEdge_Bottom(n) (-1000-(n))
 1562 #define MUIV_Window_Width_MinMax(p) (0-(p))
 1563 #define MUIV_Window_Width_Visible(p) (-100-(p))
 1564 #define MUIV_Window_Width_Screen(p) (-200-(p))
 1565 #define MUIV_Window_Width_Scaled -1000
 1566 #define MUIV_Window_Width_Default -1001
 1567 
 1568 
 1569 /****************************************************************************/
 1570 /** Aboutmui                                                               **/
 1571 /****************************************************************************/
 1572 
 1573 #ifdef _DCC
 1574 extern char MUIC_Aboutmui[];
 1575 #else
 1576 #define MUIC_Aboutmui "Aboutmui.mui"
 1577 #endif
 1578 
 1579 /* Methods */
 1580 
 1581 
 1582 /* Attributes */
 1583 
 1584 #define MUIA_Aboutmui_Application           0x80422523 /* V11 i.. MUIApplication *  */
 1585 
 1586 
 1587 
 1588 /****************************************************************************/
 1589 /** Area                                                                   **/
 1590 /****************************************************************************/
 1591 
 1592 #ifdef _DCC
 1593 extern char MUIC_Area[];
 1594 #else
 1595 #define MUIC_Area "Area.mui"
 1596 #endif
 1597 
 1598 /* Methods */
 1599 
 1600 #define MUIM_AskMinMax                      0x80423874 /* Custom Class */ /* V4  */
 1601 #define MUIM_Backfill                       0x80428d73 /* V11 */
 1602 #define MUIM_CheckShortHelp                 0x80423c79 /* V20 */
 1603 #define MUIM_Cleanup                        0x8042d985 /* Custom Class */ /* V4  */
 1604 #define MUIM_CloseCustomFont                0x8042b27c /* Custom Class */ /* V22 */
 1605 #define MUIM_ContextMenuAdd                 0x8042df9e /* V20 */
 1606 #define MUIM_ContextMenuBuild               0x80429d2e /* V11 */
 1607 #define MUIM_ContextMenuChoice              0x80420f0e /* V11 */
 1608 #define MUIM_CreateBubble                   0x80421c41 /* V18 */
 1609 #define MUIM_CreateDragImage                0x8042eb6f /* Custom Class */ /* V18 */
 1610 #define MUIM_CreateShortHelp                0x80428e93 /* V11 */
 1611 #define MUIM_DeleteBubble                   0x804211af /* V18 */
 1612 #define MUIM_DeleteDragImage                0x80423037 /* Custom Class */ /* V18 */
 1613 #define MUIM_DeleteShortHelp                0x8042d35a /* V11 */
 1614 #define MUIM_DoDrag                         0x804216bb /* V20 */
 1615 #define MUIM_DragBegin                      0x8042c03a /* V11 */
 1616 #define MUIM_DragDrop                       0x8042c555 /* V11 */
 1617 #define MUIM_DragEvent                      0x8042b774 /* Custom Class */ /* V20 */
 1618 #define MUIM_DragFinish                     0x804251f0 /* V11 */
 1619 #define MUIM_DragQuery                      0x80420261 /* V11 */
 1620 #define MUIM_DragReport                     0x8042edad /* V11 */
 1621 #define MUIM_Draw                           0x80426f3f /* Custom Class */ /* V4  */
 1622 #define MUIM_DrawBackground                 0x804238ca /* V11 */
 1623 #define MUIM_ExitResize                     0x80428431 /* Custom Class */ /* V22 */
 1624 #define MUIM_GoActive                       0x8042491a /* Custom Class */ /* V8  */
 1625 #define MUIM_GoInactive                     0x80422c0c /* Custom Class */ /* V8  */
 1626 #define MUIM_HandleEvent                    0x80426d66 /* Custom Class */ /* V16 */
 1627 #define MUIM_HandleInput                    0x80422a1a /* Custom Class */ /* V4  */
 1628 #define MUIM_Hide                           0x8042f20f /* Custom Class */ /* V4  */
 1629 #define MUIM_InitResize                     0x804292bd /* Custom Class */ /* V22 */
 1630 #define MUIM_Layout                         0x8042845b /* V4  */
 1631 #define MUIM_OpenCustomFont                 0x8042f3dc /* Custom Class */ /* V22 */
 1632 #define MUIM_Relayout                       0x8042b381 /* V22 */
 1633 #define MUIM_Setup                          0x80428354 /* Custom Class */ /* V4  */
 1634 #define MUIM_Show                           0x8042cc84 /* Custom Class */ /* V4  */
 1635 #define MUIM_Text                           0x8042ee70 /* Custom Class */ /* V20 */
 1636 #define MUIM_TextDim                        0x80422ad7 /* Custom Class */ /* V20 */
 1637 #define MUIM_UpdateConfig                   0x8042b0a9 /* V20 */
 1638 struct  MUIP_AskMinMax                      { ULONG MethodID; struct MUI_MinMax *MinMaxInfo; }; /* Custom Class */
 1639 struct  MUIP_Backfill                       { ULONG MethodID; LONG left; LONG top; LONG right; LONG bottom; LONG xoffset; LONG yoffset; LONG brightness; };
 1640 struct  MUIP_CheckShortHelp                 { ULONG MethodID; STRPTR help; LONG mx; LONG my; };
 1641 struct  MUIP_Cleanup                        { ULONG MethodID;  }; /* Custom Class */
 1642 struct  MUIP_CloseCustomFont                { ULONG MethodID; Boopsiobject *font; }; /* Custom Class */
 1643 struct  MUIP_ContextMenuAdd                 { ULONG MethodID; MUIMenustrip *menustrip; LONG mx; LONG my; LONG *mxp; LONG *myp; };
 1644 struct  MUIP_ContextMenuBuild               { ULONG MethodID; LONG mx; LONG my; };
 1645 struct  MUIP_ContextMenuChoice              { ULONG MethodID; MUIMenuitem *item; };
 1646 struct  MUIP_CreateBubble                   { ULONG MethodID; LONG x; LONG y; STRPTR txt; ULONG flags; };
 1647 struct  MUIP_CreateDragImage                { ULONG MethodID; LONG touchx; LONG touchy; ULONG flags; }; /* Custom Class */
 1648 struct  MUIP_CreateShortHelp                { ULONG MethodID; LONG mx; LONG my; };
 1649 struct  MUIP_DeleteBubble                   { ULONG MethodID; APTR bubble; };
 1650 struct  MUIP_DeleteDragImage                { ULONG MethodID; struct MUI_DragImage *di; }; /* Custom Class */
 1651 struct  MUIP_DeleteShortHelp                { ULONG MethodID; STRPTR help; };
 1652 struct  MUIP_DoDrag                         { ULONG MethodID; LONG touchx; LONG touchy; ULONG flags; };
 1653 struct  MUIP_DragBegin                      { ULONG MethodID; MUIArea *obj; };
 1654 struct  MUIP_DragDrop                       { ULONG MethodID; MUIArea *obj; LONG x; LONG y; ULONG qualifier; };
 1655 struct  MUIP_DragEvent                      { ULONG MethodID; struct Window *objwindow; Boopsiobject *obj; struct MUI_DragImage *di; struct IntuiMessage *imsg; LONG muikey; ULONG mouseptrtype; ULONG flags; }; /* Custom Class */
 1656 struct  MUIP_DragFinish                     { ULONG MethodID; MUIArea *obj; LONG dropfollows; };
 1657 struct  MUIP_DragQuery                      { ULONG MethodID; MUIArea *obj; };
 1658 struct  MUIP_DragReport                     { ULONG MethodID; MUIArea *obj; LONG x; LONG y; LONG update; ULONG qualifier; };
 1659 struct  MUIP_Draw                           { ULONG MethodID; ULONG flags; }; /* Custom Class */
 1660 struct  MUIP_DrawBackground                 { ULONG MethodID; LONG left; LONG top; LONG width; LONG height; LONG xoffset; LONG yoffset; LONG flags; };
 1661 struct  MUIP_ExitResize                     { ULONG MethodID; ; }; /* Custom Class */
 1662 struct  MUIP_GoActive                       { ULONG MethodID; ULONG flags; }; /* Custom Class */
 1663 struct  MUIP_GoInactive                     { ULONG MethodID; ULONG flags; }; /* Custom Class */
 1664 struct  MUIP_HandleEvent                    { ULONG MethodID; struct IntuiMessage *imsg; LONG muikey; struct MUI_EventHandlerNode *ehn; }; /* Custom Class */
 1665 struct  MUIP_HandleInput                    { ULONG MethodID; struct IntuiMessage *imsg; LONG muikey; }; /* Custom Class */
 1666 struct  MUIP_Hide                           { ULONG MethodID; }; /* Custom Class */
 1667 struct  MUIP_InitResize                     { ULONG MethodID; ULONG flags; }; /* Custom Class */
 1668 struct  MUIP_Layout                         { ULONG MethodID; LONG left; LONG top; LONG width; LONG height; ULONG flags; };
 1669 struct  MUIP_OpenCustomFont                 { ULONG MethodID; STRPTR spec; }; /* Custom Class */
 1670 struct  MUIP_Relayout                       { ULONG MethodID; ULONG flags; };
 1671 struct  MUIP_Setup                          { ULONG MethodID; struct MUI_RenderInfo *RenderInfo; }; /* Custom Class */
 1672 struct  MUIP_Show                           { ULONG MethodID; struct LongRect *clip; }; /* Custom Class */
 1673 struct  MUIP_Text                           { ULONG MethodID; LONG left;LONG top;LONG width;LONG height;STRPTR text;LONG len;STRPTR preparse;ULONG flags; }; /* Custom Class */
 1674 struct  MUIP_TextDim                        { ULONG MethodID; STRPTR text;LONG len;STRPTR preparse;ULONG flags; }; /* Custom Class */
 1675 struct  MUIP_UpdateConfig                   { ULONG MethodID; ULONG cfgid; LONG redrawcount; Boopsiobject *redrawobj[64]; UBYTE redrawflags[64]; };
 1676 
 1677 /* Attributes */
 1678 
 1679 #define MUIA_Background                     0x8042545b /* V4  is. LONG              */
 1680 #define MUIA_BottomEdge                     0x8042e552 /* V4  ..g LONG              */
 1681 #define MUIA_BuiltinFont                    0x8042256f /* V22 isg ULONG             */
 1682 #define MUIA_ContextMenu                    0x8042b704 /* V11 isg MUIMenustrip *    */
 1683 #define MUIA_ContextMenuTrigger             0x8042a2c1 /* V11 ..g MUIMenuitem *     */
 1684 #define MUIA_ControlChar                    0x8042120b /* V4  isg char              */
 1685 #define MUIA_CustomBackfill                 0x80420a63 /* V11 isg BOOL              */
 1686 #define MUIA_CustomFont                     0x80423fc5 /* V20 isg STRPTR            */
 1687 #define MUIA_CycleChain                     0x80421ce7 /* V11 isg LONG              */
 1688 #define MUIA_Disabled                       0x80423661 /* V4  isg BOOL              */
 1689 #define MUIA_DoubleBuffer                   0x8042a9c7 /* V20 isg BOOL              */
 1690 #define MUIA_DoubleClick                    0x8042f057 /* V20 ..g LONG              */
 1691 #define MUIA_Draggable                      0x80420b6e /* V11 isg BOOL              */
 1692 #define MUIA_Dropable                       0x8042fbce /* V11 isg BOOL              */
 1693 #ifdef MUI_OBSOLETE
 1694 #define MUIA_ExportID                       0x8042d76e /* V4  isg ULONG             */
 1695 #endif /* MUI_OBSOLETE */
 1696 #define MUIA_FillArea                       0x804294a3 /* V4  is. BOOL              */
 1697 #define MUIA_FixHeight                      0x8042a92b /* V4  i.. LONG              */
 1698 #define MUIA_FixHeightTxt                   0x804276f2 /* V4  i.. STRPTR            */
 1699 #define MUIA_FixWidth                       0x8042a3f1 /* V4  i.. LONG              */
 1700 #define MUIA_FixWidthTxt                    0x8042d044 /* V4  i.. STRPTR            */
 1701 #define MUIA_Floating                       0x80429753 /* V20 isg BOOL              */
 1702 #define MUIA_Font                           0x8042be50 /* V4  isg struct TextFont * */
 1703 #define MUIA_Frame                          0x8042ac64 /* V4  i.. LONG              */
 1704 #define MUIA_FrameDynamic                   0x804223c9 /* V20 isg BOOL              */
 1705 #define MUIA_FramePhantomHoriz              0x8042ed76 /* V4  i.. BOOL              */
 1706 #define MUIA_FrameTitle                     0x8042d1c7 /* V4  i.. STRPTR            */
 1707 #define MUIA_FrameVisible                   0x80426498 /* V20 isg BOOL              */
 1708 #define MUIA_Height                         0x80423237 /* V4  ..g LONG              */
 1709 #define MUIA_HorizDisappear                 0x80429615 /* V11 isg LONG              */
 1710 #define MUIA_HorizWeight                    0x80426db9 /* V4  isg WORD              */
 1711 #define MUIA_InnerBottom                    0x8042f2c0 /* V4  i.g LONG              */
 1712 #define MUIA_InnerLeft                      0x804228f8 /* V4  i.g LONG              */
 1713 #define MUIA_InnerRight                     0x804297ff /* V4  i.g LONG              */
 1714 #define MUIA_InnerTop                       0x80421eb6 /* V4  i.g LONG              */
 1715 #define MUIA_InputMode                      0x8042fb04 /* V4  i.. LONG              */
 1716 #define MUIA_LeftEdge                       0x8042bec6 /* V4  ..g LONG              */
 1717 #define MUIA_MaxHeight                      0x804293e4 /* V11 i.. LONG              */
 1718 #define MUIA_MaxWidth                       0x8042f112 /* V11 i.. LONG              */
 1719 #define MUIA_Pressed                        0x80423535 /* V4  ..g BOOL              */
 1720 #define MUIA_RightEdge                      0x8042ba82 /* V4  ..g LONG              */
 1721 #define MUIA_Selected                       0x8042654b /* V4  isg BOOL              */
 1722 #define MUIA_ShortHelp                      0x80428fe3 /* V11 isg STRPTR            */
 1723 #define MUIA_ShowMe                         0x80429ba8 /* V4  isg BOOL              */
 1724 #define MUIA_ShowSelState                   0x8042caac /* V4  i.. BOOL              */
 1725 #define MUIA_TextColor                      0x8042dba6 /* V22 ..g ULONG             */
 1726 #define MUIA_Timer                          0x80426435 /* V4  ..g LONG              */
 1727 #define MUIA_TopEdge                        0x8042509b /* V4  ..g LONG              */
 1728 #define MUIA_Unicode                        0x8042e7d0 /* V22 i.g BOOL              */
 1729 #define MUIA_VertDisappear                  0x8042d12f /* V11 isg LONG              */
 1730 #define MUIA_VertWeight                     0x804298d0 /* V4  isg WORD              */
 1731 #define MUIA_Weight                         0x80421d1f /* V4  i.. WORD              */
 1732 #define MUIA_Width                          0x8042b59c /* V4  ..g LONG              */
 1733 #define MUIA_Window                         0x80421591 /* V4  ..g struct Window *   */
 1734 #define MUIA_WindowObject                   0x8042669e /* V4  ..g MUIWindow *       */
 1735 
 1736 #define MUIV_BuiltinFont_Inherit 0
 1737 #define MUIV_BuiltinFont_Normal -1
 1738 #define MUIV_BuiltinFont_List -2
 1739 #define MUIV_BuiltinFont_Tiny -3
 1740 #define MUIV_BuiltinFont_Fixed -4
 1741 #define MUIV_BuiltinFont_Title -5
 1742 #define MUIV_BuiltinFont_Big -6
 1743 #define MUIV_BuiltinFont_Button -7
 1744 #define MUIV_BuiltinFont_Slider -8
 1745 #define MUIV_BuiltinFont_Gauge -9
 1746 #define MUIV_BuiltinFont_Menu -10
 1747 #define MUIV_BuiltinFont_Tab -11
 1748 #define MUIV_BuiltinFont_Bubble -12
 1749 #define MUIV_BuiltinFont_Huge -13
 1750 #define MUIV_BuiltinFont_Last -13
 1751 #define MUIV_BuiltinFont_Count 14
 1752 #define MUIV_Font_Inherit 0
 1753 #define MUIV_Font_Normal -1
 1754 #define MUIV_Font_List -2
 1755 #define MUIV_Font_Tiny -3
 1756 #define MUIV_Font_Fixed -4
 1757 #define MUIV_Font_Title -5
 1758 #define MUIV_Font_Big -6
 1759 #define MUIV_Font_Button -7
 1760 #define MUIV_Font_Slider -8
 1761 #define MUIV_Font_Gauge -9
 1762 #define MUIV_Font_Menu -10
 1763 #define MUIV_Font_Tab -11
 1764 #define MUIV_Font_Bubble -12
 1765 #define MUIV_Font_Huge -13
 1766 #define MUIV_Font_Last -13
 1767 #define MUIV_Font_Count 14
 1768 #define MUIV_Frame_None 0
 1769 #define MUIV_Frame_Button 1
 1770 #define MUIV_Frame_ImageButton 2
 1771 #define MUIV_Frame_Text 3
 1772 #define MUIV_Frame_String 4
 1773 #define MUIV_Frame_ReadList 5
 1774 #define MUIV_Frame_InputList 6
 1775 #define MUIV_Frame_Prop 7
 1776 #define MUIV_Frame_Gauge 8
 1777 #define MUIV_Frame_Group 9
 1778 #define MUIV_Frame_PopUp 10
 1779 #define MUIV_Frame_Virtual 11
 1780 #define MUIV_Frame_Slider 12
 1781 #define MUIV_Frame_SliderKnob 13
 1782 #define MUIV_Frame_GaugeInner 14
 1783 #define MUIV_Frame_Menudisplay 15
 1784 #define MUIV_Frame_MenudisplayMenu 16
 1785 #define MUIV_Frame_PropKnob 17
 1786 #define MUIV_Frame_Window 18
 1787 #define MUIV_Frame_Requester 19
 1788 #define MUIV_Frame_Page 20
 1789 #define MUIV_Frame_Register 21
 1790 #define MUIV_Frame_GroupTitle 22
 1791 #define MUIV_Frame_RegisterTitle 23
 1792 #define MUIV_Frame_Count 24
 1793 #define MUIV_InputMode_None 0
 1794 #define MUIV_InputMode_RelVerify 1
 1795 #define MUIV_InputMode_Immediate 2
 1796 #define MUIV_InputMode_Toggle 3
 1797 
 1798 
 1799 /****************************************************************************/
 1800 /** Dtpic                                                                  **/
 1801 /****************************************************************************/
 1802 
 1803 #ifdef _DCC
 1804 extern char MUIC_Dtpic[];
 1805 #else
 1806 #define MUIC_Dtpic "Dtpic.mui"
 1807 #endif
 1808 
 1809 /* Methods */
 1810 
 1811 
 1812 /* Attributes */
 1813 
 1814 #define MUIA_Dtpic_Alpha                    0x8042b4db /* V20 isg LONG              */
 1815 #define MUIA_Dtpic_DarkenSelState           0x80423247 /* V20 i.g BOOL              */
 1816 #define MUIA_Dtpic_FreeHoriz                0x8042d360 /* V22 i.g BOOL              */
 1817 #define MUIA_Dtpic_FreeVert                 0x80424c12 /* V22 i.g BOOL              */
 1818 #define MUIA_Dtpic_LightenOnMouse           0x8042966a /* V20 i.g BOOL              */
 1819 #define MUIA_Dtpic_MinHeight                0x80423ecc /* V20 i.g BOOL              */
 1820 #define MUIA_Dtpic_MinWidth                 0x8042c417 /* V20 i.g BOOL              */
 1821 #define MUIA_Dtpic_Name                     0x80423d72 /* V18 isg STRPTR            */
 1822 
 1823 
 1824 
 1825 /****************************************************************************/
 1826 /** Rectangle                                                              **/
 1827 /****************************************************************************/
 1828 
 1829 #ifdef _DCC
 1830 extern char MUIC_Rectangle[];
 1831 #else
 1832 #define MUIC_Rectangle "Rectangle.mui"
 1833 #endif
 1834 
 1835 /* Attributes */
 1836 
 1837 #define MUIA_Rectangle_BarTitle             0x80426689 /* V11 i.g STRPTR            */
 1838 #define MUIA_Rectangle_HBar                 0x8042c943 /* V7  i.g BOOL              */
 1839 #define MUIA_Rectangle_VBar                 0x80422204 /* V7  i.g BOOL              */
 1840 
 1841 
 1842 
 1843 /****************************************************************************/
 1844 /** Balance                                                                **/
 1845 /****************************************************************************/
 1846 
 1847 #ifdef _DCC
 1848 extern char MUIC_Balance[];
 1849 #else
 1850 #define MUIC_Balance "Balance.mui"
 1851 #endif
 1852 
 1853 /* Attributes */
 1854 
 1855 #define MUIA_Balance_Quiet                  0x80427486 /* V20 i.. LONG              */
 1856 
 1857 
 1858 
 1859 /****************************************************************************/
 1860 /** Image                                                                  **/
 1861 /****************************************************************************/
 1862 
 1863 #ifdef _DCC
 1864 extern char MUIC_Image[];
 1865 #else
 1866 #define MUIC_Image "Image.mui"
 1867 #endif
 1868 
 1869 /* Attributes */
 1870 
 1871 #define MUIA_Image_BuiltinSpec              0x8042b907 /* V21 isg ULONG             */
 1872 #define MUIA_Image_FontMatch                0x8042815d /* V4  i.. BOOL              */
 1873 #define MUIA_Image_FontMatchHeight          0x80429f26 /* V4  i.. BOOL              */
 1874 #define MUIA_Image_FontMatchString          0x804263c1 /* V20 is. STRPTR            */
 1875 #define MUIA_Image_FontMatchWidth           0x804239bf /* V4  i.. BOOL              */
 1876 #define MUIA_Image_FreeHoriz                0x8042da84 /* V4  i.. BOOL              */
 1877 #define MUIA_Image_FreeVert                 0x8042ea28 /* V4  i.. BOOL              */
 1878 #define MUIA_Image_OldImage                 0x80424f3d /* V4  i.. struct Image *    */
 1879 #define MUIA_Image_Spec                     0x804233d5 /* V4  isg STRPTR            */
 1880 #define MUIA_Image_State                    0x8042a3ad /* V4  is. LONG              */
 1881 
 1882 
 1883 
 1884 /****************************************************************************/
 1885 /** Menubar                                                                **/
 1886 /****************************************************************************/
 1887 
 1888 #ifdef _DCC
 1889 extern char MUIC_Menubar[];
 1890 #else
 1891 #define MUIC_Menubar "Menubar.mui"
 1892 #endif
 1893 
 1894 /* Methods */
 1895 
 1896 
 1897 /* Attributes */
 1898 
 1899 
 1900 
 1901 
 1902 /****************************************************************************/
 1903 /** Bitmap                                                                 **/
 1904 /****************************************************************************/
 1905 
 1906 #ifdef _DCC
 1907 extern char MUIC_Bitmap[];
 1908 #else
 1909 #define MUIC_Bitmap "Bitmap.mui"
 1910 #endif
 1911 
 1912 /* Attributes */
 1913 
 1914 #define MUIA_Bitmap_Alpha                   0x80423e71 /* V20 isg ULONG             */
 1915 #define MUIA_Bitmap_Bitmap                  0x804279bd /* V8  isg struct BitMap *   */
 1916 #define MUIA_Bitmap_Height                  0x80421560 /* V8  isg LONG              */
 1917 #define MUIA_Bitmap_MappingTable            0x8042e23d /* V8  isg UBYTE *           */
 1918 #define MUIA_Bitmap_Precision               0x80420c74 /* V11 isg LONG              */
 1919 #define MUIA_Bitmap_RemappedBitmap          0x80423a47 /* V11 ..g struct BitMap *   */
 1920 #define MUIA_Bitmap_SourceColors            0x80425360 /* V8  isg ULONG *           */
 1921 #define MUIA_Bitmap_Transparent             0x80422805 /* V8  isg LONG              */
 1922 #define MUIA_Bitmap_UseFriend               0x804239d8 /* V11 i.. BOOL              */
 1923 #define MUIA_Bitmap_Width                   0x8042eb3a /* V8  isg LONG              */
 1924 
 1925 
 1926 
 1927 /****************************************************************************/
 1928 /** Bodychunk                                                              **/
 1929 /****************************************************************************/
 1930 
 1931 #ifdef _DCC
 1932 extern char MUIC_Bodychunk[];
 1933 #else
 1934 #define MUIC_Bodychunk "Bodychunk.mui"
 1935 #endif
 1936 
 1937 /* Attributes */
 1938 
 1939 #define MUIA_Bodychunk_Body                 0x8042ca67 /* V8  isg UBYTE *           */
 1940 #define MUIA_Bodychunk_Compression          0x8042de5f /* V8  isg UBYTE             */
 1941 #define MUIA_Bodychunk_Depth                0x8042c392 /* V8  isg LONG              */
 1942 #define MUIA_Bodychunk_Masking              0x80423b0e /* V8  isg UBYTE             */
 1943 
 1944 
 1945 
 1946 /****************************************************************************/
 1947 /** Text                                                                   **/
 1948 /****************************************************************************/
 1949 
 1950 #ifdef _DCC
 1951 extern char MUIC_Text[];
 1952 #else
 1953 #define MUIC_Text "Text.mui"
 1954 #endif
 1955 
 1956 /* Attributes */
 1957 
 1958 #define MUIA_Text_Contents                  0x8042f8dc /* V4  isg STRPTR            */
 1959 #define MUIA_Text_ControlChar               0x8042e6d0 /* V20 isg char              */
 1960 #define MUIA_Text_Copy                      0x80427727 /* V20 isg BOOL              */
 1961 #define MUIA_Text_HiChar                    0x804218ff /* V4  i.. char              */
 1962 #define MUIA_Text_Marking                   0x8042f780 /* V20 i.g BOOL              */
 1963 #define MUIA_Text_PreParse                  0x8042566d /* V4  isg STRPTR            */
 1964 #define MUIA_Text_SetMax                    0x80424d0a /* V4  i.. BOOL              */
 1965 #define MUIA_Text_SetMin                    0x80424e10 /* V4  i.. BOOL              */
 1966 #define MUIA_Text_SetVMax                   0x80420d8b /* V11 is. BOOL              */
 1967 #define MUIA_Text_Shorten                   0x80428bbd /* V20 isg LONG              */
 1968 #define MUIA_Text_Shortened                 0x80425a86 /* V20 ..g BOOL              */
 1969 
 1970 #define MUIV_Text_Shorten_Nothing 0
 1971 #define MUIV_Text_Shorten_Cutoff 1
 1972 #define MUIV_Text_Shorten_Hide 2
 1973 
 1974 
 1975 /****************************************************************************/
 1976 /** Gadget                                                                 **/
 1977 /****************************************************************************/
 1978 
 1979 #ifdef _DCC
 1980 extern char MUIC_Gadget[];
 1981 #else
 1982 #define MUIC_Gadget "Gadget.mui"
 1983 #endif
 1984 
 1985 /* Attributes */
 1986 
 1987 #define MUIA_Gadget_Gadget                  0x8042ec1a /* V11 ..g struct Gadget *   */
 1988 
 1989 
 1990 
 1991 /****************************************************************************/
 1992 /** String                                                                 **/
 1993 /****************************************************************************/
 1994 
 1995 #ifdef _DCC
 1996 extern char MUIC_String[];
 1997 #else
 1998 #define MUIC_String "String.mui"
 1999 #endif
 2000 
 2001 /* Methods */
 2002 
 2003 
 2004 /* Attributes */
 2005 
 2006 #define MUIA_String_Accept                  0x8042e3e1 /* V4  isg STRPTR            */
 2007 #define MUIA_String_Acknowledge             0x8042026c /* V4  ..g STRPTR            */
 2008 #define MUIA_String_AdvanceOnCR             0x804226de /* V11 isg BOOL              */
 2009 #define MUIA_String_AttachedList            0x80420fd2 /* V4  isg Boopsiobject *    */
 2010 #define MUIA_String_BufferPos               0x80428b6c /* V4  .sg LONG              */
 2011 #define MUIA_String_Contents                0x80428ffd /* V4  isg STRPTR            */
 2012 #define MUIA_String_DisplayPos              0x8042ccbf /* V4  .sg LONG              */
 2013 #define MUIA_String_Editable                0x8042c94b /* V21 isg BOOL              */
 2014 #define MUIA_String_EditHook                0x80424c33 /* V7  isg struct Hook *     */
 2015 #define MUIA_String_Format                  0x80427484 /* V4  i.g LONG              */
 2016 #define MUIA_String_Integer                 0x80426e8a /* V4  isg ULONG             */
 2017 #define MUIA_String_Integer64               0x80424820 /* V20 isg QUAD *            */
 2018 #define MUIA_String_LonelyEditHook          0x80421569 /* V11 isg BOOL              */
 2019 #define MUIA_String_MaxLen                  0x80424984 /* V4  i.g LONG              */
 2020 #define MUIA_String_Multiline               0x8042d18b /* V21 i.g BOOL              */
 2021 #define MUIA_String_Placeholder             0x8042ae65 /* V21 isg STRPTR            */
 2022 #define MUIA_String_Reject                  0x8042179c /* V4  isg STRPTR            */
 2023 #define MUIA_String_ScrollHeight            0x8042be8b /* V22 ..g LONG              */
 2024 #define MUIA_String_ScrollLeft              0x8042bd0d /* V22 ..g LONG              */
 2025 #define MUIA_String_ScrollTop               0x8042f4e5 /* V22 ..g LONG              */
 2026 #define MUIA_String_ScrollVisibleHeight     0x8042791e /* V22 ..g LONG              */
 2027 #define MUIA_String_ScrollVisibleWidth      0x8042d280 /* V22 ..g LONG              */
 2028 #define MUIA_String_ScrollWidth             0x80420fb5 /* V22 ..g LONG              */
 2029 #define MUIA_String_Secret                  0x80428769 /* V4  i.g BOOL              */
 2030 #define MUIA_String_SpellChecking           0x804266c6 /* V21 isg BOOL              */
 2031 
 2032 #define MUIV_String_Format_Left 0
 2033 #define MUIV_String_Format_Center 1
 2034 #define MUIV_String_Format_Right 2
 2035 
 2036 
 2037 /****************************************************************************/
 2038 /** Boopsi                                                                 **/
 2039 /****************************************************************************/
 2040 
 2041 #ifdef _DCC
 2042 extern char MUIC_Boopsi[];
 2043 #else
 2044 #define MUIC_Boopsi "Boopsi.mui"
 2045 #endif
 2046 
 2047 /* Attributes */
 2048 
 2049 #define MUIA_Boopsi_Class                   0x80426999 /* V4  isg struct IClass *   */
 2050 #define MUIA_Boopsi_ClassID                 0x8042bfa3 /* V4  isg STRPTR            */
 2051 #define MUIA_Boopsi_MaxHeight               0x8042757f /* V4  isg ULONG             */
 2052 #define MUIA_Boopsi_MaxWidth                0x8042bcb1 /* V4  isg ULONG             */
 2053 #define MUIA_Boopsi_MinHeight               0x80422c93 /* V4  isg ULONG             */
 2054 #define MUIA_Boopsi_MinWidth                0x80428fb2 /* V4  isg ULONG             */
 2055 #define MUIA_Boopsi_Object                  0x80420178 /* V4  ..g Boopsiobject *    */
 2056 #define MUIA_Boopsi_Remember                0x8042f4bd /* V4  i.. ULONG             */
 2057 #define MUIA_Boopsi_Smart                   0x8042b8d7 /* V9  i.. BOOL              */
 2058 #define MUIA_Boopsi_TagDrawInfo             0x8042bae7 /* V4  isg ULONG             */
 2059 #define MUIA_Boopsi_TagScreen               0x8042bc71 /* V4  isg ULONG             */
 2060 #define MUIA_Boopsi_TagWindow               0x8042e11d /* V4  isg ULONG             */
 2061 
 2062 
 2063 
 2064 /****************************************************************************/
 2065 /** Prop                                                                   **/
 2066 /****************************************************************************/
 2067 
 2068 #ifdef _DCC
 2069 extern char MUIC_Prop[];
 2070 #else
 2071 #define MUIC_Prop "Prop.mui"
 2072 #endif
 2073 
 2074 /* Methods */
 2075 
 2076 #define MUIM_Prop_Decrease                  0x80420dd1 /* V16 */
 2077 #define MUIM_Prop_Increase                  0x8042cac0 /* V16 */
 2078 struct  MUIP_Prop_Decrease                  { ULONG MethodID; LONG amount; };
 2079 struct  MUIP_Prop_Increase                  { ULONG MethodID; LONG amount; };
 2080 
 2081 /* Attributes */
 2082 
 2083 #define MUIA_Prop_DeltaFactor               0x80427c5e /* V4  isg LONG              */
 2084 #define MUIA_Prop_Entries                   0x8042fbdb /* V4  isg LONG              */
 2085 #define MUIA_Prop_First                     0x8042d4b2 /* V4  isg LONG              */
 2086 #define MUIA_Prop_Horiz                     0x8042f4f3 /* V4  i.g BOOL              */
 2087 #define MUIA_Prop_Slider                    0x80429c3a /* V4  isg BOOL              */
 2088 #define MUIA_Prop_UseWinBorder              0x8042deee /* V13 i.. LONG              */
 2089 #define MUIA_Prop_Visible                   0x8042fea6 /* V4  isg LONG              */
 2090 
 2091 #define MUIV_Prop_UseWinBorder_None 0
 2092 #define MUIV_Prop_UseWinBorder_Left 1
 2093 #define MUIV_Prop_UseWinBorder_Right 2
 2094 #define MUIV_Prop_UseWinBorder_Bottom 3
 2095 
 2096 
 2097 /****************************************************************************/
 2098 /** Gauge                                                                  **/
 2099 /****************************************************************************/
 2100 
 2101 #ifdef _DCC
 2102 extern char MUIC_Gauge[];
 2103 #else
 2104 #define MUIC_Gauge "Gauge.mui"
 2105 #endif
 2106 
 2107 /* Attributes */
 2108 
 2109 #define MUIA_Gauge_Current                  0x8042f0dd /* V4  isg LONG              */
 2110 #define MUIA_Gauge_Divide                   0x8042d8df /* V4  isg ULONG             */
 2111 #define MUIA_Gauge_Horiz                    0x804232dd /* V4  i.. BOOL              */
 2112 #define MUIA_Gauge_InfoRate                 0x804253c8 /* V4  isg LONG              */
 2113 #define MUIA_Gauge_InfoText                 0x8042bf15 /* V7  isg STRPTR            */
 2114 #define MUIA_Gauge_Max                      0x8042bcdb /* V4  isg LONG              */
 2115 
 2116 
 2117 
 2118 /****************************************************************************/
 2119 /** Scale                                                                  **/
 2120 /****************************************************************************/
 2121 
 2122 #ifdef _DCC
 2123 extern char MUIC_Scale[];
 2124 #else
 2125 #define MUIC_Scale "Scale.mui"
 2126 #endif
 2127 
 2128 /* Attributes */
 2129 
 2130 #define MUIA_Scale_Horiz                    0x8042919a /* V4  isg BOOL              */
 2131 
 2132 
 2133 
 2134 /****************************************************************************/
 2135 /** Colorfield                                                             **/
 2136 /****************************************************************************/
 2137 
 2138 #ifdef _DCC
 2139 extern char MUIC_Colorfield[];
 2140 #else
 2141 #define MUIC_Colorfield "Colorfield.mui"
 2142 #endif
 2143 
 2144 /* Attributes */
 2145 
 2146 #define MUIA_Colorfield_Blue                0x8042d3b0 /* V4  isg ULONG             */
 2147 #define MUIA_Colorfield_Green               0x80424466 /* V4  isg ULONG             */
 2148 #define MUIA_Colorfield_Pen                 0x8042713a /* V4  ..g ULONG             */
 2149 #define MUIA_Colorfield_Red                 0x804279f6 /* V4  isg ULONG             */
 2150 #define MUIA_Colorfield_RGB                 0x8042677a /* V4  isg ULONG *           */
 2151 
 2152 
 2153 
 2154 /****************************************************************************/
 2155 /** Numeric                                                                **/
 2156 /****************************************************************************/
 2157 
 2158 #ifdef _DCC
 2159 extern char MUIC_Numeric[];
 2160 #else
 2161 #define MUIC_Numeric "Numeric.mui"
 2162 #endif
 2163 
 2164 /* Methods */
 2165 
 2166 #define MUIM_Numeric_Decrease               0x804243a7 /* V11 */
 2167 #define MUIM_Numeric_Increase               0x80426ecd /* V11 */
 2168 #define MUIM_Numeric_ScaleToValue           0x8042032c /* V11 */
 2169 #define MUIM_Numeric_SetDefault             0x8042ab0a /* V11 */
 2170 #define MUIM_Numeric_Stringify              0x80424891 /* V11 */
 2171 #define MUIM_Numeric_ValueToScale           0x80423e4f /* V11 */
 2172 struct  MUIP_Numeric_Decrease               { ULONG MethodID; LONG amount; };
 2173 struct  MUIP_Numeric_Increase               { ULONG MethodID; LONG amount; };
 2174 struct  MUIP_Numeric_ScaleToValue           { ULONG MethodID; LONG scalemin; LONG scalemax; LONG scale; };
 2175 struct  MUIP_Numeric_SetDefault             { ULONG MethodID; };
 2176 struct  MUIP_Numeric_Stringify              { ULONG MethodID; LONG value; };
 2177 struct  MUIP_Numeric_ValueToScale           { ULONG MethodID; LONG scalemin; LONG scalemax; };
 2178 
 2179 /* Attributes */
 2180 
 2181 #define MUIA_Numeric_CheckAllSizes          0x80421594 /* V11 isg BOOL              */
 2182 #define MUIA_Numeric_Default                0x804263e8 /* V11 isg LONG              */
 2183 #define MUIA_Numeric_Format                 0x804263e9 /* V11 isg STRPTR            */
 2184 #define MUIA_Numeric_Max                    0x8042d78a /* V11 isg LONG              */
 2185 #define MUIA_Numeric_Min                    0x8042e404 /* V11 isg LONG              */
 2186 #define MUIA_Numeric_Reverse                0x8042f2a0 /* V11 isg BOOL              */
 2187 #define MUIA_Numeric_RevLeftRight           0x804294a7 /* V11 isg BOOL              */
 2188 #define MUIA_Numeric_RevUpDown              0x804252dd /* V11 isg BOOL              */
 2189 #define MUIA_Numeric_Value                  0x8042ae3a /* V11 isg LONG              */
 2190 
 2191 
 2192 
 2193 /****************************************************************************/
 2194 /** Knob                                                                   **/
 2195 /****************************************************************************/
 2196 
 2197 #ifdef _DCC
 2198 extern char MUIC_Knob[];
 2199 #else
 2200 #define MUIC_Knob "Knob.mui"
 2201 #endif
 2202 
 2203 
 2204 /****************************************************************************/
 2205 /** Levelmeter                                                             **/
 2206 /****************************************************************************/
 2207 
 2208 #ifdef _DCC
 2209 extern char MUIC_Levelmeter[];
 2210 #else
 2211 #define MUIC_Levelmeter "Levelmeter.mui"
 2212 #endif
 2213 
 2214 /* Attributes */
 2215 
 2216 #define MUIA_Levelmeter_Label               0x80420dd5 /* V11 isg STRPTR            */
 2217 
 2218 
 2219 
 2220 /****************************************************************************/
 2221 /** Numericbutton                                                          **/
 2222 /****************************************************************************/
 2223 
 2224 #ifdef _DCC
 2225 extern char MUIC_Numericbutton[];
 2226 #else
 2227 #define MUIC_Numericbutton "Numericbutton.mui"
 2228 #endif
 2229 
 2230 
 2231 /****************************************************************************/
 2232 /** Slider                                                                 **/
 2233 /****************************************************************************/
 2234 
 2235 #ifdef _DCC
 2236 extern char MUIC_Slider[];
 2237 #else
 2238 #define MUIC_Slider "Slider.mui"
 2239 #endif
 2240 
 2241 /* Attributes */
 2242 
 2243 #define MUIA_Slider_Horiz                   0x8042fad1 /* V11 isg BOOL              */
 2244 #ifdef MUI_OBSOLETE
 2245 #define MUIA_Slider_Level                   0x8042ae3a /* V4  isg LONG              */
 2246 #endif /* MUI_OBSOLETE */
 2247 #ifdef MUI_OBSOLETE
 2248 #define MUIA_Slider_Max                     0x8042d78a /* V4  isg LONG              */
 2249 #endif /* MUI_OBSOLETE */
 2250 #ifdef MUI_OBSOLETE
 2251 #define MUIA_Slider_Min                     0x8042e404 /* V4  isg LONG              */
 2252 #endif /* MUI_OBSOLETE */
 2253 #define MUIA_Slider_Quiet                   0x80420b26 /* V6  i.. BOOL              */
 2254 #ifdef MUI_OBSOLETE
 2255 #define MUIA_Slider_Reverse                 0x8042f2a0 /* V4  isg BOOL              */
 2256 #endif /* MUI_OBSOLETE */
 2257 
 2258 
 2259 
 2260 /****************************************************************************/
 2261 /** Framedisplay                                                           **/
 2262 /****************************************************************************/
 2263 
 2264 #ifdef _DCC
 2265 extern char MUIC_Framedisplay[];
 2266 #else
 2267 #define MUIC_Framedisplay "Framedisplay.mui"
 2268 #endif
 2269 
 2270 /* Attributes */
 2271 
 2272 
 2273 
 2274 
 2275 /****************************************************************************/
 2276 /** Imagedisplay                                                           **/
 2277 /****************************************************************************/
 2278 
 2279 #ifdef _DCC
 2280 extern char MUIC_Imagedisplay[];
 2281 #else
 2282 #define MUIC_Imagedisplay "Imagedisplay.mui"
 2283 #endif
 2284 
 2285 /* Attributes */
 2286 
 2287 
 2288 
 2289 
 2290 /****************************************************************************/
 2291 /** Frimagedisplay                                                         **/
 2292 /****************************************************************************/
 2293 
 2294 #ifdef _DCC
 2295 extern char MUIC_Frimagedisplay[];
 2296 #else
 2297 #define MUIC_Frimagedisplay "Frimagedisplay.mui"
 2298 #endif
 2299 
 2300 /* Attributes */
 2301 
 2302 
 2303 
 2304 
 2305 /****************************************************************************/
 2306 /** Popimage                                                               **/
 2307 /****************************************************************************/
 2308 
 2309 #ifdef _DCC
 2310 extern char MUIC_Popimage[];
 2311 #else
 2312 #define MUIC_Popimage "Popimage.mui"
 2313 #endif
 2314 
 2315 
 2316 /****************************************************************************/
 2317 /** Popframe                                                               **/
 2318 /****************************************************************************/
 2319 
 2320 #ifdef _DCC
 2321 extern char MUIC_Popframe[];
 2322 #else
 2323 #define MUIC_Popframe "Popframe.mui"
 2324 #endif
 2325 
 2326 
 2327 /****************************************************************************/
 2328 /** Popfrimage                                                             **/
 2329 /****************************************************************************/
 2330 
 2331 #ifdef _DCC
 2332 extern char MUIC_Popfrimage[];
 2333 #else
 2334 #define MUIC_Popfrimage "Popfrimage.mui"
 2335 #endif
 2336 
 2337 
 2338 /****************************************************************************/
 2339 /** Pendisplay                                                             **/
 2340 /****************************************************************************/
 2341 
 2342 #ifdef _DCC
 2343 extern char MUIC_Pendisplay[];
 2344 #else
 2345 #define MUIC_Pendisplay "Pendisplay.mui"
 2346 #endif
 2347 
 2348 /* Methods */
 2349 
 2350 #define MUIM_Pendisplay_SetColormap         0x80426c80 /* V13 */
 2351 #define MUIM_Pendisplay_SetMUIPen           0x8042039d /* V13 */
 2352 #define MUIM_Pendisplay_SetRGB              0x8042c131 /* V13 */
 2353 struct  MUIP_Pendisplay_SetColormap         { ULONG MethodID; LONG colormap; };
 2354 struct  MUIP_Pendisplay_SetMUIPen           { ULONG MethodID; LONG muipen; };
 2355 struct  MUIP_Pendisplay_SetRGB              { ULONG MethodID; ULONG red; ULONG green; ULONG blue; };
 2356 
 2357 /* Attributes */
 2358 
 2359 #define MUIA_Pendisplay_ARGB                0x804278d0 /* V22 isg ULONG             */
 2360 #define MUIA_Pendisplay_Pen                 0x8042a748 /* V13 ..g ULONG             */
 2361 #define MUIA_Pendisplay_Reference           0x8042dc24 /* V13 isg MUIPendisplay *   */
 2362 #define MUIA_Pendisplay_RGBcolor            0x8042a1a9 /* V11 isg struct MUI_RGBColor * */
 2363 #define MUIA_Pendisplay_Spec                0x8042a204 /* V11 isg struct MUI_PenSpec  * */
 2364 #define MUIA_Pendisplay_XRGB                0x8042de8a /* V22 isg ULONG             */
 2365 
 2366 
 2367 
 2368 /****************************************************************************/
 2369 /** Poppen                                                                 **/
 2370 /****************************************************************************/
 2371 
 2372 #ifdef _DCC
 2373 extern char MUIC_Poppen[];
 2374 #else
 2375 #define MUIC_Poppen "Poppen.mui"
 2376 #endif
 2377 
 2378 
 2379 /****************************************************************************/
 2380 /** Fontdisplay                                                            **/
 2381 /****************************************************************************/
 2382 
 2383 #ifdef _DCC
 2384 extern char MUIC_Fontdisplay[];
 2385 #else
 2386 #define MUIC_Fontdisplay "Fontdisplay.mui"
 2387 #endif
 2388 
 2389 /* Attributes */
 2390 
 2391 
 2392 
 2393 
 2394 /****************************************************************************/
 2395 /** Group                                                                  **/
 2396 /****************************************************************************/
 2397 
 2398 #ifdef _DCC
 2399 extern char MUIC_Group[];
 2400 #else
 2401 #define MUIC_Group "Group.mui"
 2402 #endif
 2403 
 2404 /* Methods */
 2405 
 2406 #define MUIM_Group_AddHead                  0x8042e200 /* V8  */
 2407 #define MUIM_Group_AddTail                  0x8042d752 /* V8  */
 2408 #define MUIM_Group_ExitChange               0x8042d1cc /* V11 */
 2409 #define MUIM_Group_ExitChange2              0x8042e541 /* V12 */
 2410 #define MUIM_Group_InitChange               0x80420887 /* V11 */
 2411 #define MUIM_Group_MoveMember               0x8042ff4e /* V16 */
 2412 #define MUIM_Group_Remove                   0x8042f8a9 /* V8  */
 2413 #define MUIM_Group_Reorder                  0x80426c3f /* V21 */
 2414 #define MUIM_Group_Sort                     0x80427417 /* V4  */
 2415 struct  MUIP_Group_AddHead                  { ULONG MethodID; Boopsiobject *obj; };
 2416 struct  MUIP_Group_AddTail                  { ULONG MethodID; Boopsiobject *obj; };
 2417 struct  MUIP_Group_ExitChange               { ULONG MethodID;  };
 2418 struct  MUIP_Group_ExitChange2              { ULONG MethodID; ULONG flags; };
 2419 struct  MUIP_Group_InitChange               { ULONG MethodID;  };
 2420 struct  MUIP_Group_MoveMember               { ULONG MethodID; Boopsiobject *o; LONG pos; };
 2421 struct  MUIP_Group_Remove                   { ULONG MethodID; Boopsiobject *obj; };
 2422 struct  MUIP_Group_Reorder                  { ULONG MethodID; Boopsiobject *after; Boopsiobject *array[1]; };
 2423 struct  MUIP_Group_Sort                     { ULONG MethodID; Boopsiobject *obj[1]; };
 2424 
 2425 /* Attributes */
 2426 
 2427 #define MUIA_Group_ActivePage               0x80424199 /* V5  isg LONG              */
 2428 #define MUIA_Group_Child                    0x804226e6 /* V4  i.. Boopsiobject *    */
 2429 #define MUIA_Group_ChildCount               0x80420322 /* V20 ..g LONG              */
 2430 #define MUIA_Group_ChildList                0x80424748 /* V4  ..g struct List *     */
 2431 #define MUIA_Group_Columns                  0x8042f416 /* V4  is. LONG              */
 2432 #define MUIA_Group_Forward                  0x80421422 /* V11 .s. BOOL              */
 2433 #define MUIA_Group_ForwardDepth             0x80428488 /* V20 .s. BOOL              */
 2434 #define MUIA_Group_Horiz                    0x8042536b /* V4  i.. BOOL              */
 2435 #define MUIA_Group_HorizCenter              0x8042cc64 /* V20 isg LONG              */
 2436 #define MUIA_Group_HorizSpacing             0x8042c651 /* V4  isg LONG              */
 2437 #define MUIA_Group_LayoutHook               0x8042c3b2 /* V11 i.. struct Hook *     */
 2438 #define MUIA_Group_PageMode                 0x80421a5f /* V5  i.. BOOL              */
 2439 #define MUIA_Group_Rows                     0x8042b68f /* V4  is. LONG              */
 2440 #define MUIA_Group_SameHeight               0x8042037e /* V4  i.. BOOL              */
 2441 #define MUIA_Group_SameSize                 0x80420860 /* V4  i.. BOOL              */
 2442 #define MUIA_Group_SameWidth                0x8042b3ec /* V4  i.. BOOL              */
 2443 #define MUIA_Group_Spacing                  0x8042866d /* V4  is. LONG              */
 2444 #define MUIA_Group_VertCenter               0x8042c008 /* V20 isg LONG              */
 2445 #define MUIA_Group_VertSpacing              0x8042e1bf /* V4  isg LONG              */
 2446 
 2447 #define MUIV_Group_ActivePage_First 0
 2448 #define MUIV_Group_ActivePage_Last -1
 2449 #define MUIV_Group_ActivePage_Prev -2
 2450 #define MUIV_Group_ActivePage_Next -3
 2451 #define MUIV_Group_ActivePage_Advance -4
 2452 #define MUIV_Group_Spacing_Default -100
 2453 #define MUIV_Group_Spacing_Percent(p) (-(p))
 2454 
 2455 
 2456 /****************************************************************************/
 2457 /** List                                                                   **/
 2458 /****************************************************************************/
 2459 
 2460 #ifdef _DCC
 2461 extern char MUIC_List[];
 2462 #else
 2463 #define MUIC_List "List.mui"
 2464 #endif
 2465 
 2466 /* Methods */
 2467 
 2468 #define MUIM_List_Clear                     0x8042ad89 /* V4  */
 2469 #define MUIM_List_Compare                   0x80421b68 /* V20 */
 2470 #define MUIM_List_Construct                 0x8042d662 /* V20 */
 2471 #define MUIM_List_CreateEditObject          0x804219ae /* V21 */
 2472 #define MUIM_List_CreateImage               0x80429804 /* V11 */
 2473 #define MUIM_List_DeleteImage               0x80420f58 /* V11 */
 2474 #define MUIM_List_Destruct                  0x80427d51 /* V20 */
 2475 #define MUIM_List_Display                   0x80425377 /* V20 */
 2476 #define MUIM_List_Edit                      0x8042843d /* V21 */
 2477 #define MUIM_List_EditDone                  0x80423ab3 /* V21 */
 2478 #define MUIM_List_EndEdit                   0x804203ee /* V22 */
 2479 #define MUIM_List_Exchange                  0x8042468c /* V4  */
 2480 #define MUIM_List_GetEntry                  0x804280ec /* V4  */
 2481 #define MUIM_List_Insert                    0x80426c87 /* V4  */
 2482 #define MUIM_List_InsertSingle              0x804254d5 /* V7  */
 2483 #define MUIM_List_Jump                      0x8042baab /* V4  */
 2484 #define MUIM_List_Move                      0x804253c2 /* V9  */
 2485 #define MUIM_List_NextSelected              0x80425f17 /* V6  */
 2486 #define MUIM_List_Redraw                    0x80427993 /* V4  */
 2487 #define MUIM_List_Remove                    0x8042647e /* V4  */
 2488 #define MUIM_List_Select                    0x804252d8 /* V4  */
 2489 #define MUIM_List_Sort                      0x80422275 /* V4  */
 2490 #define MUIM_List_SortEntries               0x80429e32 /* V21 */
 2491 #define MUIM_List_TestPos                   0x80425f48 /* V11 */
 2492 struct  MUIP_List_Clear                     { ULONG MethodID;  };
 2493 struct  MUIP_List_Compare                   { ULONG MethodID; APTR entry1; APTR entry2; ULONG column; };
 2494 struct  MUIP_List_Construct                 { ULONG MethodID; APTR entry; APTR pool; };
 2495 struct  MUIP_List_CreateEditObject          { ULONG MethodID; LONG row; LONG column; APTR entry; };
 2496 struct  MUIP_List_CreateImage               { ULONG MethodID; Boopsiobject *obj; ULONG flags; };
 2497 struct  MUIP_List_DeleteImage               { ULONG MethodID; APTR listimg; };
 2498 struct  MUIP_List_Destruct                  { ULONG MethodID; APTR entry; APTR pool; };
 2499 struct  MUIP_List_Display                   { ULONG MethodID; APTR entry; STRPTR *array; LONG row; };
 2500 struct  MUIP_List_Edit                      { ULONG MethodID; LONG row; LONG column; };
 2501 struct  MUIP_List_EditDone                  { ULONG MethodID; LONG row; LONG column; APTR entry; Boopsiobject *editobj; };
 2502 struct  MUIP_List_EndEdit                   { ULONG MethodID; ULONG mode; };
 2503 struct  MUIP_List_Exchange                  { ULONG MethodID; LONG pos1; LONG pos2; };
 2504 struct  MUIP_List_GetEntry                  { ULONG MethodID; LONG pos; APTR *entry; };
 2505 struct  MUIP_List_Insert                    { ULONG MethodID; APTR *entries; LONG count; LONG pos; };
 2506 struct  MUIP_List_InsertSingle              { ULONG MethodID; APTR entry; LONG pos; };
 2507 struct  MUIP_List_Jump                      { ULONG MethodID; LONG pos; };
 2508 struct  MUIP_List_Move                      { ULONG MethodID; LONG from; LONG to; };
 2509 struct  MUIP_List_NextSelected              { ULONG MethodID; LONG *pos; };
 2510 struct  MUIP_List_Redraw                    { ULONG MethodID; LONG pos; APTR entry; };
 2511 struct  MUIP_List_Remove                    { ULONG MethodID; LONG pos; };
 2512 struct  MUIP_List_Select                    { ULONG MethodID; LONG pos; LONG seltype; LONG *state; };
 2513 struct  MUIP_List_Sort                      { ULONG MethodID;  };
 2514 struct  MUIP_List_SortEntries               { ULONG MethodID; APTR *entries; };
 2515 struct  MUIP_List_TestPos                   { ULONG MethodID; LONG x; LONG y; struct MUI_List_TestPos_Result *res; };
 2516 
 2517 /* Attributes */
 2518 
 2519 #define MUIA_List_Active                    0x8042391c /* V4  isg LONG              */
 2520 #define MUIA_List_AdjustHeight              0x8042850d /* V4  i.. BOOL              */
 2521 #define MUIA_List_AdjustWidth               0x8042354a /* V4  i.. BOOL              */
 2522 #define MUIA_List_AgainClick                0x804214c2 /* V20 isg BOOL              */
 2523 #define MUIA_List_AutoLineHeight            0x8042bc08 /* V20 isg BOOL              */
 2524 #define MUIA_List_AutoVisible               0x8042a445 /* V11 isg BOOL              */
 2525 #define MUIA_List_ClickColumn               0x8042d1b3 /* V7  .sg LONG              */
 2526 #define MUIA_List_ColumnOrder               0x9d5100f6 /* V20 .sg BYTE*             */
 2527 #define MUIA_List_CompareHook               0x80425c14 /* V4  is. struct Hook *     */
 2528 #define MUIA_List_ConstructHook             0x8042894f /* V4  is. struct Hook *     */
 2529 #define MUIA_List_DefClickColumn            0x8042b296 /* V7  isg LONG              */
 2530 #define MUIA_List_DestructHook              0x804297ce /* V4  is. struct Hook *     */
 2531 #define MUIA_List_DisplayHook               0x8042b4d5 /* V4  is. struct Hook *     */
 2532 #define MUIA_List_DoubleClick               0x80424635 /* V4  isg BOOL              */
 2533 #define MUIA_List_DragSortable              0x80426099 /* V11 isg BOOL              */
 2534 #define MUIA_List_DragType                  0x80425cd3 /* V11 isg LONG              */
 2535 #define MUIA_List_DropMark                  0x8042aba6 /* V11 ..g LONG              */
 2536 #define MUIA_List_Editable                  0x8042f9b9 /* V21 isg BOOL              */
 2537 #define MUIA_List_Entries                   0x80421654 /* V4  ..g LONG              */
 2538 #define MUIA_List_First                     0x804238d4 /* V4  .sg LONG              */
 2539 #define MUIA_List_Format                    0x80423c0a /* V4  isg STRPTR            */
 2540 #define MUIA_List_HideColumn                0x80428052 /* V21 is. LONG              */
 2541 #define MUIA_List_HScrollerVisibility       0x804280a6 /* V20 i.. LONG              */
 2542 #define MUIA_List_Input                     0x8042682d /* V4  i.. BOOL              */
 2543 #define MUIA_List_InsertPosition            0x8042d0cd /* V9  ..g LONG              */
 2544 #define MUIA_List_LineHeight                0x80425880 /* V20 ..g ULONG             */
 2545 #define MUIA_List_MaxColumns                0x8042a98b /* V21 i.. LONG              */
 2546 #define MUIA_List_MinLineHeight             0x8042d1c3 /* V4  i.. LONG              */
 2547 #define MUIA_List_MultiSelect               0x80427e08 /* V7  i.. LONG              */
 2548 #define MUIA_List_MultiTestHook             0x8042c2c6 /* V4  is. struct Hook *     */
 2549 #define MUIA_List_Pool                      0x80423431 /* V13 i.g APTR              */
 2550 #define MUIA_List_PoolPuddleSize            0x8042a4eb /* V13 i.. ULONG             */
 2551 #define MUIA_List_PoolThreshSize            0x8042c48c /* V13 i.. ULONG             */
 2552 #define MUIA_List_Quiet                     0x8042d8c7 /* V4  .sg BOOL              */
 2553 #define MUIA_List_ScrollerPos               0x8042b1b4 /* V10 i.. BOOL              */
 2554 #define MUIA_List_SelectChange              0x8042178f /* V4  ..g BOOL              */
 2555 #define MUIA_List_ShowColumn                0x8042c840 /* V21 is. LONG              */
 2556 #define MUIA_List_ShowDropMarks             0x8042c6f3 /* V11 isg BOOL              */
 2557 #define MUIA_List_SortColumn                0x8042cafb /* V21 isg LONG              */
 2558 #define MUIA_List_SourceArray               0x8042c0a0 /* V4  i.. APTR              */
 2559 #define MUIA_List_Stripes                   0x8042a308 /* V21 isg BOOL              */
 2560 #define MUIA_List_Title                     0x80423e66 /* V6  isg STRPTR            */
 2561 #define MUIA_List_TitleArray                0x80427d95 /* V21 isg STRPTR *          */
 2562 #define MUIA_List_TitleClick                0x80422fd9 /* V20 .sg LONG              */
 2563 #define MUIA_List_TopPixel                  0x80429df3 /* V4  .sg LONG              */
 2564 #define MUIA_List_TotalPixel                0x8042a8f5 /* V4  ..g LONG              */
 2565 #define MUIA_List_Visible                   0x8042191f /* V4  ..g LONG              */
 2566 #define MUIA_List_VisiblePixel              0x804273e9 /* V4  ..g LONG              */
 2567 
 2568 #define MUIV_List_Active_Off -1
 2569 #define MUIV_List_Active_Top -2
 2570 #define MUIV_List_Active_Bottom -3
 2571 #define MUIV_List_Active_Up -4
 2572 #define MUIV_List_Active_Down -5
 2573 #define MUIV_List_Active_PageUp -6
 2574 #define MUIV_List_Active_PageDown -7
 2575 #define MUIV_List_CompareHook_String -1
 2576 #define MUIV_List_CompareHook_StringArray -2
 2577 #define MUIV_List_ConstructHook_String -1
 2578 #define MUIV_List_ConstructHook_StringArray -2
 2579 #define MUIV_List_DestructHook_String -1
 2580 #define MUIV_List_DestructHook_StringArray -2
 2581 #define MUIV_List_DisplayHook_String -1
 2582 #define MUIV_List_DisplayHook_StringArray -2
 2583 #define MUIV_List_DragType_None 0
 2584 #define MUIV_List_DragType_Immediate 1
 2585 #define MUIV_List_HScrollerVisibility_Always 1
 2586 #define MUIV_List_HScrollerVisibility_Never 2
 2587 #define MUIV_List_HScrollerVisibility_Auto 0
 2588 #define MUIV_List_MultiSelect_None 0
 2589 #define MUIV_List_MultiSelect_Default 1
 2590 #define MUIV_List_MultiSelect_Shifted 2
 2591 #define MUIV_List_MultiSelect_Always 3
 2592 #define MUIV_List_ScrollerPos_Default 0
 2593 #define MUIV_List_ScrollerPos_Left 1
 2594 #define MUIV_List_ScrollerPos_Right 2
 2595 #define MUIV_List_ScrollerPos_None 3
 2596 
 2597 
 2598 /****************************************************************************/
 2599 /** Floattext                                                              **/
 2600 /****************************************************************************/
 2601 
 2602 #ifdef _DCC
 2603 extern char MUIC_Floattext[];
 2604 #else
 2605 #define MUIC_Floattext "Floattext.mui"
 2606 #endif
 2607 
 2608 /* Methods */
 2609 
 2610 #define MUIM_Floattext_Append               0x8042a221 /* V20 */
 2611 struct  MUIP_Floattext_Append               { ULONG MethodID; CONST_STRPTR Text; };
 2612 
 2613 /* Attributes */
 2614 
 2615 #define MUIA_Floattext_Justify              0x8042dc03 /* V4  isg BOOL              */
 2616 #define MUIA_Floattext_SkipChars            0x80425c7d /* V4  is. STRPTR            */
 2617 #define MUIA_Floattext_TabSize              0x80427d17 /* V4  is. LONG              */
 2618 #define MUIA_Floattext_Text                 0x8042d16a /* V4  isg STRPTR            */
 2619 
 2620 
 2621 
 2622 /****************************************************************************/
 2623 /** Volumelist                                                             **/
 2624 /****************************************************************************/
 2625 
 2626 #ifdef _DCC
 2627 extern char MUIC_Volumelist[];
 2628 #else
 2629 #define MUIC_Volumelist "Volumelist.mui"
 2630 #endif
 2631 
 2632 /* Attributes */
 2633 
 2634 #define MUIA_Volumelist_ExampleMode         0x804246a5 /* V20 i.. BOOL              */
 2635 
 2636 
 2637 
 2638 /****************************************************************************/
 2639 /** Scrmodelist                                                            **/
 2640 /****************************************************************************/
 2641 
 2642 #ifdef _DCC
 2643 extern char MUIC_Scrmodelist[];
 2644 #else
 2645 #define MUIC_Scrmodelist "Scrmodelist.mui"
 2646 #endif
 2647 
 2648 /* Attributes */
 2649 
 2650 
 2651 
 2652 
 2653 /****************************************************************************/
 2654 /** Dirlist                                                                **/
 2655 /****************************************************************************/
 2656 
 2657 #ifdef _DCC
 2658 extern char MUIC_Dirlist[];
 2659 #else
 2660 #define MUIC_Dirlist "Dirlist.mui"
 2661 #endif
 2662 
 2663 /* Methods */
 2664 
 2665 #define MUIM_Dirlist_Rename                 0x8042d336 /* V21 */
 2666 #define MUIM_Dirlist_ReRead                 0x80422d71 /* V4  */
 2667 #define MUIM_Dirlist_SetComment             0x8042b378 /* V21 */
 2668 #define MUIM_Dirlist_SetProtection          0x804202bb /* V21 */
 2669 struct  MUIP_Dirlist_Rename                 { ULONG MethodID; LONG row; CONST_STRPTR newname; };
 2670 struct  MUIP_Dirlist_ReRead                 { ULONG MethodID; };
 2671 struct  MUIP_Dirlist_SetComment             { ULONG MethodID; LONG row; CONST_STRPTR comment; };
 2672 struct  MUIP_Dirlist_SetProtection          { ULONG MethodID; LONG row; ULONG flags; };
 2673 
 2674 /* Attributes */
 2675 
 2676 #define MUIA_Dirlist_AcceptPattern          0x8042760a /* V4  is. STRPTR            */
 2677 #define MUIA_Dirlist_Directory              0x8042ea41 /* V4  isg STRPTR            */
 2678 #define MUIA_Dirlist_DrawersOnly            0x8042b379 /* V4  is. BOOL              */
 2679 #define MUIA_Dirlist_ExAllType              0x8042cd7c /* V20 i.g ULONG             */
 2680 #define MUIA_Dirlist_FilesOnly              0x8042896a /* V4  is. BOOL              */
 2681 #define MUIA_Dirlist_FilterDrawers          0x80424ad2 /* V4  is. BOOL              */
 2682 #define MUIA_Dirlist_FilterHook             0x8042ae19 /* V4  is. struct Hook *     */
 2683 #define MUIA_Dirlist_MultiSelDirs           0x80428653 /* V6  is. BOOL              */
 2684 #define MUIA_Dirlist_NumBytes               0x80429e26 /* V4  ..g LONG              */
 2685 #define MUIA_Dirlist_NumBytes64             0x80428050 /* V20 ..g QUAD *            */
 2686 #define MUIA_Dirlist_NumDrawers             0x80429cb8 /* V4  ..g LONG              */
 2687 #define MUIA_Dirlist_NumFiles               0x8042a6f0 /* V4  ..g LONG              */
 2688 #define MUIA_Dirlist_Path                   0x80426176 /* V4  ..g STRPTR            */
 2689 #define MUIA_Dirlist_Pattern                0x8042c761 /* V20 is. STRPTR            */
 2690 #define MUIA_Dirlist_RejectIcons            0x80424808 /* V4  is. BOOL              */
 2691 #define MUIA_Dirlist_RejectPattern          0x804259c7 /* V4  is. STRPTR            */
 2692 #define MUIA_Dirlist_SortDirs               0x8042bbb9 /* V4  is. LONG              */
 2693 #define MUIA_Dirlist_SortHighLow            0x80421896 /* V4  is. BOOL              */
 2694 #define MUIA_Dirlist_SortType               0x804228bc /* V4  is. LONG              */
 2695 #define MUIA_Dirlist_Status                 0x804240de /* V4  ..g LONG              */
 2696 
 2697 #define MUIV_Dirlist_SortDirs_First 0
 2698 #define MUIV_Dirlist_SortDirs_Last 1
 2699 #define MUIV_Dirlist_SortDirs_Mix 2
 2700 #define MUIV_Dirlist_SortType_Name 0
 2701 #define MUIV_Dirlist_SortType_Date 1
 2702 #define MUIV_Dirlist_SortType_Size 2
 2703 #define MUIV_Dirlist_SortType_Comment 3
 2704 #define MUIV_Dirlist_SortType_Flags 4
 2705 #define MUIV_Dirlist_SortType_Type 5
 2706 #define MUIV_Dirlist_SortType_Used 6
 2707 #define MUIV_Dirlist_SortType_Count 7
 2708 #define MUIV_Dirlist_Status_Invalid 0
 2709 #define MUIV_Dirlist_Status_Reading 1
 2710 #define MUIV_Dirlist_Status_Valid 2
 2711 
 2712 
 2713 /****************************************************************************/
 2714 /** Selectgroup                                                            **/
 2715 /****************************************************************************/
 2716 
 2717 #ifdef _DCC
 2718 extern char MUIC_Selectgroup[];
 2719 #else
 2720 #define MUIC_Selectgroup "Selectgroup.mui"
 2721 #endif
 2722 
 2723 /* Attributes */
 2724 
 2725 #define MUIA_Selectgroup_Active             0x80421788 /* V21 isg LONG              */
 2726 
 2727 #define MUIV_Selectgroup_Active_Next -1
 2728 #define MUIV_Selectgroup_Active_Prev -2
 2729 
 2730 
 2731 /****************************************************************************/
 2732 /** Argstring                                                              **/
 2733 /****************************************************************************/
 2734 
 2735 #ifdef _DCC
 2736 extern char MUIC_Argstring[];
 2737 #else
 2738 #define MUIC_Argstring "Argstring.mui"
 2739 #endif
 2740 
 2741 /* Methods */
 2742 
 2743 
 2744 /* Attributes */
 2745 
 2746 #define MUIA_Argstring_Contents             0x80429456 /* V20 isg STRPTR            */
 2747 #define MUIA_Argstring_Template             0x80422904 /* V20 isg STRPTR            */
 2748 
 2749 
 2750 
 2751 /****************************************************************************/
 2752 /** Menudisplay                                                            **/
 2753 /****************************************************************************/
 2754 
 2755 #ifdef _DCC
 2756 extern char MUIC_Menudisplay[];
 2757 #else
 2758 #define MUIC_Menudisplay "Menudisplay.mui"
 2759 #endif
 2760 
 2761 /* Methods */
 2762 
 2763 
 2764 
 2765 /****************************************************************************/
 2766 /** Mccprefs                                                               **/
 2767 /****************************************************************************/
 2768 
 2769 #ifdef _DCC
 2770 extern char MUIC_Mccprefs[];
 2771 #else
 2772 #define MUIC_Mccprefs "Mccprefs.mui"
 2773 #endif
 2774 
 2775 /* Methods */
 2776 
 2777 #define MUIM_Mccprefs_ConfigToGadgets       0x80427043 /* V11 */
 2778 #define MUIM_Mccprefs_GadgetsToConfig       0x80425242 /* V11 */
 2779 #define MUIM_Mccprefs_RegisterGadget        0x80424828 /* V20 */
 2780 struct  MUIP_Mccprefs_ConfigToGadgets       { ULONG MethodID; Boopsiobject *configdata; };
 2781 struct  MUIP_Mccprefs_GadgetsToConfig       { ULONG MethodID; Boopsiobject *configdata; Boopsiobject *originator; };
 2782 struct  MUIP_Mccprefs_RegisterGadget        { ULONG MethodID; Boopsiobject *gadget; ULONG id; ULONG params; STRPTR title; ULONG attr; Boopsiobject *label; };
 2783 
 2784 /* Attributes */
 2785 
 2786 
 2787 
 2788 
 2789 /****************************************************************************/
 2790 /** Register                                                               **/
 2791 /****************************************************************************/
 2792 
 2793 #ifdef _DCC
 2794 extern char MUIC_Register[];
 2795 #else
 2796 #define MUIC_Register "Register.mui"
 2797 #endif
 2798 
 2799 /* Attributes */
 2800 
 2801 #define MUIA_Register_Frame                 0x8042349b /* V7  i.g BOOL              */
 2802 #define MUIA_Register_Titles                0x804297ec /* V7  i.g STRPTR *          */
 2803 
 2804 #define MUIV_Register_Titles_UData -1
 2805 #define MUIV_Register_Titles_Frame -2
 2806 
 2807 
 2808 /****************************************************************************/
 2809 /** Penadjust                                                              **/
 2810 /****************************************************************************/
 2811 
 2812 #ifdef _DCC
 2813 extern char MUIC_Penadjust[];
 2814 #else
 2815 #define MUIC_Penadjust "Penadjust.mui"
 2816 #endif
 2817 
 2818 /* Methods */
 2819 
 2820 
 2821 /* Attributes */
 2822 
 2823 #define MUIA_Penadjust_PSIMode              0x80421cbb /* V11 i.. BOOL              */
 2824 
 2825 
 2826 
 2827 /****************************************************************************/
 2828 /** Settingsgroup                                                          **/
 2829 /****************************************************************************/
 2830 
 2831 #ifdef _DCC
 2832 extern char MUIC_Settingsgroup[];
 2833 #else
 2834 #define MUIC_Settingsgroup "Settingsgroup.mui"
 2835 #endif
 2836 
 2837 /* Methods */
 2838 
 2839 #define MUIM_Settingsgroup_ConfigToGadgets  0x80427043 /* V11 */
 2840 #define MUIM_Settingsgroup_GadgetsToConfig  0x80425242 /* V11 */
 2841 struct  MUIP_Settingsgroup_ConfigToGadgets  { ULONG MethodID; Boopsiobject *configdata; };
 2842 struct  MUIP_Settingsgroup_GadgetsToConfig  { ULONG MethodID; Boopsiobject *configdata; Boopsiobject *originator; };
 2843 
 2844 /* Attributes */
 2845 
 2846 
 2847 
 2848 
 2849 /****************************************************************************/
 2850 /** Settings                                                               **/
 2851 /****************************************************************************/
 2852 
 2853 #ifdef _DCC
 2854 extern char MUIC_Settings[];
 2855 #else
 2856 #define MUIC_Settings "Settings.mui"
 2857 #endif
 2858 
 2859 /* Methods */
 2860 
 2861 
 2862 /* Attributes */
 2863 
 2864 
 2865 
 2866 
 2867 /****************************************************************************/
 2868 /** Frameadjust                                                            **/
 2869 /****************************************************************************/
 2870 
 2871 #ifdef _DCC
 2872 extern char MUIC_Frameadjust[];
 2873 #else
 2874 #define MUIC_Frameadjust "Frameadjust.mui"
 2875 #endif
 2876 
 2877 /* Methods */
 2878 
 2879 
 2880 /* Attributes */
 2881 
 2882 
 2883 
 2884 
 2885 /****************************************************************************/
 2886 /** Imageadjust                                                            **/
 2887 /****************************************************************************/
 2888 
 2889 #ifdef _DCC
 2890 extern char MUIC_Imageadjust[];
 2891 #else
 2892 #define MUIC_Imageadjust "Imageadjust.mui"
 2893 #endif
 2894 
 2895 /* Methods */
 2896 
 2897 
 2898 /* Attributes */
 2899 
 2900 
 2901 
 2902 
 2903 /****************************************************************************/
 2904 /** Backgroundadjust                                                       **/
 2905 /****************************************************************************/
 2906 
 2907 #ifdef _DCC
 2908 extern char MUIC_Backgroundadjust[];
 2909 #else
 2910 #define MUIC_Backgroundadjust "Backgroundadjust.mui"
 2911 #endif
 2912 
 2913 /* Methods */
 2914 
 2915 
 2916 /* Attributes */
 2917 
 2918 
 2919 
 2920 
 2921 /****************************************************************************/
 2922 /** Virtgroup                                                              **/
 2923 /****************************************************************************/
 2924 
 2925 #ifdef _DCC
 2926 extern char MUIC_Virtgroup[];
 2927 #else
 2928 #define MUIC_Virtgroup "Virtgroup.mui"
 2929 #endif
 2930 
 2931 /* Methods */
 2932 
 2933 
 2934 /* Attributes */
 2935 
 2936 #define MUIA_Virtgroup_Height               0x80423038 /* V6  ..g LONG              */
 2937 #define MUIA_Virtgroup_Input                0x80427f7e /* V11 i.. BOOL              */
 2938 #define MUIA_Virtgroup_Left                 0x80429371 /* V6  isg LONG              */
 2939 #define MUIA_Virtgroup_Top                  0x80425200 /* V6  isg LONG              */
 2940 #define MUIA_Virtgroup_TryFit               0x80429427 /* V20 isg BOOL              */
 2941 #define MUIA_Virtgroup_Width                0x80427c49 /* V6  ..g LONG              */
 2942 
 2943 
 2944 
 2945 /****************************************************************************/
 2946 /** Scrollgroup                                                            **/
 2947 /****************************************************************************/
 2948 
 2949 #ifdef _DCC
 2950 extern char MUIC_Scrollgroup[];
 2951 #else
 2952 #define MUIC_Scrollgroup "Scrollgroup.mui"
 2953 #endif
 2954 
 2955 /* Methods */
 2956 
 2957 
 2958 /* Attributes */
 2959 
 2960 #define MUIA_Scrollgroup_AutoBars           0x8042f50e /* V20 isg BOOL              */
 2961 #define MUIA_Scrollgroup_Contents           0x80421261 /* V4  i.g MUIVirtgroup *    */
 2962 #define MUIA_Scrollgroup_FreeHoriz          0x804292f3 /* V9  i.. BOOL              */
 2963 #define MUIA_Scrollgroup_FreeVert           0x804224f2 /* V9  i.. BOOL              */
 2964 #define MUIA_Scrollgroup_HorizBar           0x8042b63d /* V16 ..g MUIScrollbar *    */
 2965 #define MUIA_Scrollgroup_NoHorizBar         0x8042cab1 /* V20 isg BOOL              */
 2966 #define MUIA_Scrollgroup_NoVertBar          0x804264c3 /* V20 isg BOOL              */
 2967 #define MUIA_Scrollgroup_UseWinBorder       0x804284c1 /* V13 i.. BOOL              */
 2968 #define MUIA_Scrollgroup_VertBar            0x8042cdc0 /* V16 ..g MUIScrollbar *    */
 2969 
 2970 
 2971 
 2972 /****************************************************************************/
 2973 /** Scrollbar                                                              **/
 2974 /****************************************************************************/
 2975 
 2976 #ifdef _DCC
 2977 extern char MUIC_Scrollbar[];
 2978 #else
 2979 #define MUIC_Scrollbar "Scrollbar.mui"
 2980 #endif
 2981 
 2982 /* Attributes */
 2983 
 2984 #define MUIA_Scrollbar_Type                 0x8042fb6b /* V11 i.. LONG              */
 2985 
 2986 #define MUIV_Scrollbar_Type_Default 0
 2987 #define MUIV_Scrollbar_Type_Bottom 1
 2988 #define MUIV_Scrollbar_Type_Top 2
 2989 #define MUIV_Scrollbar_Type_Sym 3
 2990 #define MUIV_Scrollbar_Type_None 4
 2991 
 2992 
 2993 /****************************************************************************/
 2994 /** Listview                                                               **/
 2995 /****************************************************************************/
 2996 
 2997 #ifdef _DCC
 2998 extern char MUIC_Listview[];
 2999 #else
 3000 #define MUIC_Listview "Listview.mui"
 3001 #endif
 3002 
 3003 /* Methods */
 3004 
 3005 
 3006 /* Attributes */
 3007 
 3008 #define MUIA_Listview_AgainClick            0x804214c2 /* V20 i.g BOOL              */
 3009 #define MUIA_Listview_ClickColumn           0x8042d1b3 /* V7  ..g LONG              */
 3010 #define MUIA_Listview_DefClickColumn        0x8042b296 /* V7  isg LONG              */
 3011 #define MUIA_Listview_DoubleClick           0x80424635 /* V4  i.g BOOL              */
 3012 #define MUIA_Listview_DragType              0x80425cd3 /* V11 isg LONG              */
 3013 #define MUIA_Listview_Input                 0x8042682d /* V4  i.. BOOL              */
 3014 #define MUIA_Listview_List                  0x8042bcce /* V4  i.g Boopsiobject *    */
 3015 #define MUIA_Listview_MultiSelect           0x80427e08 /* V7  i.. LONG              */
 3016 #define MUIA_Listview_ScrollerPos           0x8042b1b4 /* V10 i.. BOOL              */
 3017 #define MUIA_Listview_SelectChange          0x8042178f /* V4  ..g BOOL              */
 3018 
 3019 #define MUIV_Listview_DragType_None 0
 3020 #define MUIV_Listview_DragType_Immediate 1
 3021 #define MUIV_Listview_MultiSelect_None 0
 3022 #define MUIV_Listview_MultiSelect_Default 1
 3023 #define MUIV_Listview_MultiSelect_Shifted 2
 3024 #define MUIV_Listview_MultiSelect_Always 3
 3025 #define MUIV_Listview_ScrollerPos_Default 0
 3026 #define MUIV_Listview_ScrollerPos_Left 1
 3027 #define MUIV_Listview_ScrollerPos_Right 2
 3028 #define MUIV_Listview_ScrollerPos_None 3
 3029 
 3030 
 3031 /****************************************************************************/
 3032 /** Radio                                                                  **/
 3033 /****************************************************************************/
 3034 
 3035 #ifdef _DCC
 3036 extern char MUIC_Radio[];
 3037 #else
 3038 #define MUIC_Radio "Radio.mui"
 3039 #endif
 3040 
 3041 /* Attributes */
 3042 
 3043 #define MUIA_Radio_Active                   0x80429b41 /* V4  isg LONG              */
 3044 #define MUIA_Radio_Entries                  0x8042b6a1 /* V4  i.. STRPTR *          */
 3045 
 3046 
 3047 
 3048 /****************************************************************************/
 3049 /** Cycle                                                                  **/
 3050 /****************************************************************************/
 3051 
 3052 #ifdef _DCC
 3053 extern char MUIC_Cycle[];
 3054 #else
 3055 #define MUIC_Cycle "Cycle.mui"
 3056 #endif
 3057 
 3058 /* Methods */
 3059 
 3060 
 3061 /* Attributes */
 3062 
 3063 #define MUIA_Cycle_Active                   0x80421788 /* V4  isg LONG              */
 3064 #define MUIA_Cycle_Entries                  0x80420629 /* V4  is. STRPTR *          */
 3065 
 3066 #define MUIV_Cycle_Active_Next -1
 3067 #define MUIV_Cycle_Active_Prev -2
 3068 
 3069 
 3070 /****************************************************************************/
 3071 /** Palette                                                                **/
 3072 /****************************************************************************/
 3073 
 3074 #ifdef _DCC
 3075 extern char MUIC_Palette[];
 3076 #else
 3077 #define MUIC_Palette "Palette.mui"
 3078 #endif
 3079 
 3080 /* Attributes */
 3081 
 3082 #define MUIA_Palette_Entries                0x8042a3d8 /* V6  i.g struct MUI_Palette_Entry * */
 3083 #define MUIA_Palette_Groupable              0x80423e67 /* V6  isg BOOL              */
 3084 #define MUIA_Palette_Names                  0x8042c3a2 /* V6  isg STRPTR *          */
 3085 
 3086 
 3087 
 3088 /****************************************************************************/
 3089 /** Popstring                                                              **/
 3090 /****************************************************************************/
 3091 
 3092 #ifdef _DCC
 3093 extern char MUIC_Popstring[];
 3094 #else
 3095 #define MUIC_Popstring "Popstring.mui"
 3096 #endif
 3097 
 3098 /* Methods */
 3099 
 3100 #define MUIM_Popstring_Close                0x8042dc52 /* V7  */
 3101 #define MUIM_Popstring_Open                 0x804258ba /* V7  */
 3102 struct  MUIP_Popstring_Close                { ULONG MethodID; LONG result; };
 3103 struct  MUIP_Popstring_Open                 { ULONG MethodID; };
 3104 
 3105 /* Attributes */
 3106 
 3107 #define MUIA_Popstring_Button               0x8042d0b9 /* V7  i.g MUIArea *         */
 3108 #define MUIA_Popstring_CloseHook            0x804256bf /* V7  isg struct Hook *     */
 3109 #define MUIA_Popstring_OpenHook             0x80429d00 /* V7  isg struct Hook *     */
 3110 #define MUIA_Popstring_String               0x804239ea /* V7  i.g MUIArea *         */
 3111 #define MUIA_Popstring_Toggle               0x80422b7a /* V7  isg BOOL              */
 3112 
 3113 
 3114 
 3115 /****************************************************************************/
 3116 /** Pubscreenadjust                                                        **/
 3117 /****************************************************************************/
 3118 
 3119 #ifdef _DCC
 3120 extern char MUIC_Pubscreenadjust[];
 3121 #else
 3122 #define MUIC_Pubscreenadjust "Pubscreenadjust.mui"
 3123 #endif
 3124 
 3125 /* Methods */
 3126 
 3127 
 3128 /* Attributes */
 3129 
 3130 
 3131 
 3132 
 3133 /****************************************************************************/
 3134 /** Pubscreenpanel                                                         **/
 3135 /****************************************************************************/
 3136 
 3137 #ifdef _DCC
 3138 extern char MUIC_Pubscreenpanel[];
 3139 #else
 3140 #define MUIC_Pubscreenpanel "Pubscreenpanel.mui"
 3141 #endif
 3142 
 3143 /* Methods */
 3144 
 3145 
 3146 
 3147 /****************************************************************************/
 3148 /** Pubscreenlist                                                          **/
 3149 /****************************************************************************/
 3150 
 3151 #ifdef _DCC
 3152 extern char MUIC_Pubscreenlist[];
 3153 #else
 3154 #define MUIC_Pubscreenlist "Pubscreenlist.mui"
 3155 #endif
 3156 
 3157 /* Methods */
 3158 
 3159 
 3160 /* Attributes */
 3161 
 3162 #define MUIA_Pubscreenlist_Selection        0x8042fe58 /* V20 ..g STRPTR            */
 3163 
 3164 
 3165 
 3166 /****************************************************************************/
 3167 /** Popobject                                                              **/
 3168 /****************************************************************************/
 3169 
 3170 #ifdef _DCC
 3171 extern char MUIC_Popobject[];
 3172 #else
 3173 #define MUIC_Popobject "Popobject.mui"
 3174 #endif
 3175 
 3176 /* Methods */
 3177 
 3178 
 3179 /* Attributes */
 3180 
 3181 #define MUIA_Popobject_Follow               0x80424cb5 /* V7  isg BOOL              */
 3182 #define MUIA_Popobject_Light                0x8042a5a3 /* V7  isg BOOL              */
 3183 #define MUIA_Popobject_Object               0x804293e3 /* V7  i.g MUIArea *         */
 3184 #define MUIA_Popobject_ObjStrHook           0x8042db44 /* V7  isg struct Hook *     */
 3185 #define MUIA_Popobject_StrObjHook           0x8042fbe1 /* V7  isg struct Hook *     */
 3186 #define MUIA_Popobject_Volatile             0x804252ec /* V7  isg BOOL              */
 3187 #define MUIA_Popobject_WindowHook           0x8042f194 /* V9  isg struct Hook *     */
 3188 
 3189 
 3190 
 3191 /****************************************************************************/
 3192 /** Poplist                                                                **/
 3193 /****************************************************************************/
 3194 
 3195 #ifdef _DCC
 3196 extern char MUIC_Poplist[];
 3197 #else
 3198 #define MUIC_Poplist "Poplist.mui"
 3199 #endif
 3200 
 3201 /* Attributes */
 3202 
 3203 #define MUIA_Poplist_Array                  0x8042084c /* V8  i.. STRPTR *          */
 3204 
 3205 
 3206 
 3207 /****************************************************************************/
 3208 /** Popscreen                                                              **/
 3209 /****************************************************************************/
 3210 
 3211 #ifdef _DCC
 3212 extern char MUIC_Popscreen[];
 3213 #else
 3214 #define MUIC_Popscreen "Popscreen.mui"
 3215 #endif
 3216 
 3217 /* Attributes */
 3218 
 3219 
 3220 
 3221 
 3222 /****************************************************************************/
 3223 /** Popasl                                                                 **/
 3224 /****************************************************************************/
 3225 
 3226 #ifdef _DCC
 3227 extern char MUIC_Popasl[];
 3228 #else
 3229 #define MUIC_Popasl "Popasl.mui"
 3230 #endif
 3231 
 3232 /* Attributes */
 3233 
 3234 #define MUIA_Popasl_Active                  0x80421b37 /* V7  ..g BOOL              */
 3235 #define MUIA_Popasl_MUIFontStyles           0x8042897f /* V22 isg BOOL              */
 3236 #define MUIA_Popasl_StartHook               0x8042b703 /* V7  isg struct Hook *     */
 3237 #define MUIA_Popasl_StopHook                0x8042d8d2 /* V7  isg struct Hook *     */
 3238 #define MUIA_Popasl_Type                    0x8042df3d /* V7  i.g ULONG             */
 3239 
 3240 
 3241 
 3242 /****************************************************************************/
 3243 /** Semaphore                                                              **/
 3244 /****************************************************************************/
 3245 
 3246 #ifdef _DCC
 3247 extern char MUIC_Semaphore[];
 3248 #else
 3249 #define MUIC_Semaphore "Semaphore.mui"
 3250 #endif
 3251 
 3252 /* Methods */
 3253 
 3254 #define MUIM_Semaphore_Attempt              0x80426ce2 /* V11 */
 3255 #define MUIM_Semaphore_AttemptShared        0x80422551 /* V11 */
 3256 #define MUIM_Semaphore_Obtain               0x804276f0 /* V11 */
 3257 #define MUIM_Semaphore_ObtainShared         0x8042ea02 /* V11 */
 3258 #define MUIM_Semaphore_Release              0x80421f2d /* V11 */
 3259 struct  MUIP_Semaphore_Attempt              { ULONG MethodID;  };
 3260 struct  MUIP_Semaphore_AttemptShared        { ULONG MethodID;  };
 3261 struct  MUIP_Semaphore_Obtain               { ULONG MethodID;  };
 3262 struct  MUIP_Semaphore_ObtainShared         { ULONG MethodID;  };
 3263 struct  MUIP_Semaphore_Release              { ULONG MethodID;  };
 3264 
 3265 /* Attributes */
 3266 
 3267 
 3268 
 3269 
 3270 /****************************************************************************/
 3271 /** Applist                                                                **/
 3272 /****************************************************************************/
 3273 
 3274 #ifdef _DCC
 3275 extern char MUIC_Applist[];
 3276 #else
 3277 #define MUIC_Applist "Applist.mui"
 3278 #endif
 3279 
 3280 /* Methods */
 3281 
 3282 
 3283 
 3284 /****************************************************************************/
 3285 /** Cclist                                                                 **/
 3286 /****************************************************************************/
 3287 
 3288 #ifdef _DCC
 3289 extern char MUIC_Cclist[];
 3290 #else
 3291 #define MUIC_Cclist "Cclist.mui"
 3292 #endif
 3293 
 3294 /* Methods */
 3295 
 3296 
 3297 
 3298 /****************************************************************************/
 3299 /** Dataspace                                                              **/
 3300 /****************************************************************************/
 3301 
 3302 #ifdef _DCC
 3303 extern char MUIC_Dataspace[];
 3304 #else
 3305 #define MUIC_Dataspace "Dataspace.mui"
 3306 #endif
 3307 
 3308 /* Methods */
 3309 
 3310 #define MUIM_Dataspace_Add                  0x80423366 /* V11 */
 3311 #define MUIM_Dataspace_Clear                0x8042b6c9 /* V11 */
 3312 #define MUIM_Dataspace_Find                 0x8042832c /* V11 */
 3313 #define MUIM_Dataspace_Get                  0x8042483f /* V21 */
 3314 #define MUIM_Dataspace_Merge                0x80423e2b /* V11 */
 3315 #define MUIM_Dataspace_ReadIFF              0x80420dfb /* V11 */
 3316 #define MUIM_Dataspace_Remove               0x8042dce1 /* V11 */
 3317 #define MUIM_Dataspace_WriteIFF             0x80425e8e /* V11 */
 3318 struct  MUIP_Dataspace_Add                  { ULONG MethodID; APTR data; LONG len; ULONG id; };
 3319 struct  MUIP_Dataspace_Clear                { ULONG MethodID; };
 3320 struct  MUIP_Dataspace_Find                 { ULONG MethodID; ULONG id; };
 3321 struct  MUIP_Dataspace_Get                  { ULONG MethodID; ULONG id; ULONG *size; };
 3322 struct  MUIP_Dataspace_Merge                { ULONG MethodID; MUIDataspace *dataspace; };
 3323 struct  MUIP_Dataspace_ReadIFF              { ULONG MethodID; struct IFFHandle *handle; };
 3324 struct  MUIP_Dataspace_Remove               { ULONG MethodID; ULONG id; };
 3325 struct  MUIP_Dataspace_WriteIFF             { ULONG MethodID; struct IFFHandle *handle; ULONG type; ULONG id; };
 3326 
 3327 /* Attributes */
 3328 
 3329 #define MUIA_Dataspace_Count                0x8042e7ea /* V20 ..g ULONG             */
 3330 #define MUIA_Dataspace_Pool                 0x80424cf9 /* V11 i.. APTR              */
 3331 
 3332 
 3333 
 3334 /****************************************************************************/
 3335 /** Configdata                                                             **/
 3336 /****************************************************************************/
 3337 
 3338 #ifdef _DCC
 3339 extern char MUIC_Configdata[];
 3340 #else
 3341 #define MUIC_Configdata "Configdata.mui"
 3342 #endif
 3343 
 3344 /* Methods */
 3345 
 3346 
 3347 /* Attributes */
 3348 
 3349 
 3350 
 3351 
 3352 /****************************************************************************/
 3353 /** Screenspace                                                            **/
 3354 /****************************************************************************/
 3355 
 3356 #ifdef _DCC
 3357 extern char MUIC_Screenspace[];
 3358 #else
 3359 #define MUIC_Screenspace "Screenspace.mui"
 3360 #endif
 3361 
 3362 /* Methods */
 3363 
 3364 
 3365 
 3366 /****************************************************************************/
 3367 /** Imagespace                                                             **/
 3368 /****************************************************************************/
 3369 
 3370 #ifdef _DCC
 3371 extern char MUIC_Imagespace[];
 3372 #else
 3373 #define MUIC_Imagespace "Imagespace.mui"
 3374 #endif
 3375 
 3376 /* Methods */
 3377 
 3378 
 3379 
 3380 /****************************************************************************/
 3381 /** Rootgrp                                                                **/
 3382 /****************************************************************************/
 3383 
 3384 #ifdef _DCC
 3385 extern char MUIC_Rootgrp[];
 3386 #else
 3387 #define MUIC_Rootgrp "Rootgrp.mui"
 3388 #endif
 3389 
 3390 
 3391 /****************************************************************************/
 3392 /** Audiocontrols                                                          **/
 3393 /****************************************************************************/
 3394 
 3395 #ifdef _DCC
 3396 extern char MUIC_Audiocontrols[];
 3397 #else
 3398 #define MUIC_Audiocontrols "Audiocontrols.mui"
 3399 #endif
 3400 
 3401 /* Methods */
 3402 
 3403 
 3404 /* Attributes */
 3405 
 3406 
 3407 
 3408 
 3409 /****************************************************************************/
 3410 /** Audiomixer                                                             **/
 3411 /****************************************************************************/
 3412 
 3413 #ifdef _DCC
 3414 extern char MUIC_Audiomixer[];
 3415 #else
 3416 #define MUIC_Audiomixer "Audiomixer.mui"
 3417 #endif
 3418 
 3419 /* Attributes */
 3420 
 3421 
 3422 
 3423 
 3424 /****************************************************************************/
 3425 /** Popmenu                                                                **/
 3426 /****************************************************************************/
 3427 
 3428 #ifdef _DCC
 3429 extern char MUIC_Popmenu[];
 3430 #else
 3431 #define MUIC_Popmenu "Popmenu.mui"
 3432 #endif
 3433 
 3434 /* Methods */
 3435 
 3436 
 3437 /* Attributes */
 3438 
 3439 
 3440 
 3441 
 3442 /****************************************************************************/
 3443 /** Panel                                                                  **/
 3444 /****************************************************************************/
 3445 
 3446 #ifdef _DCC
 3447 extern char MUIC_Panel[];
 3448 #else
 3449 #define MUIC_Panel "Panel.mui"
 3450 #endif
 3451 
 3452 /* Methods */
 3453 
 3454 #define MUIM_Panel_Run                      0x8042d789 /* V20 */
 3455 struct  MUIP_Panel_Run                      { ULONG MethodID; MUIApplication *app; MUIWindow *win; };
 3456 
 3457 /* Attributes */
 3458 
 3459 
 3460 
 3461 
 3462 /****************************************************************************/
 3463 /** Filepanel                                                              **/
 3464 /****************************************************************************/
 3465 
 3466 #ifdef _DCC
 3467 extern char MUIC_Filepanel[];
 3468 #else
 3469 #define MUIC_Filepanel "Filepanel.mui"
 3470 #endif
 3471 
 3472 /* Methods */
 3473 
 3474 #define MUIM_Filepanel_AddRow               0x80421d3b /* V20 */
 3475 struct  MUIP_Filepanel_AddRow               { ULONG MethodID; MUIArea *label; MUIArea *contents; };
 3476 
 3477 /* Attributes */
 3478 
 3479 #define MUIA_Filepanel_AcceptPattern        0x80426f3b /* V20 i.g STRPTR            */
 3480 #define MUIA_Filepanel_DoMultiSelect        0x8042fd78 /* V20 i.g BOOL              */
 3481 #define MUIA_Filepanel_DoPatterns           0x80420b3b /* V20 i.g BOOL              */
 3482 #define MUIA_Filepanel_DoSaveMode           0x80429022 /* V20 i.g BOOL              */
 3483 #define MUIA_Filepanel_Drawer               0x8042e802 /* V20 isg STRPTR            */
 3484 #define MUIA_Filepanel_DrawersOnly          0x80427726 /* V20 i.g BOOL              */
 3485 #define MUIA_Filepanel_File                 0x80427acf /* V20 isg STRPTR            */
 3486 #define MUIA_Filepanel_FilterDrawers        0x804298a1 /* V20 i.g BOOL              */
 3487 #define MUIA_Filepanel_FilterFunc           0x80429c9d /* V20 i.g struct Hook *     */
 3488 #define MUIA_Filepanel_Pattern              0x8042c330 /* V20 isg STRPTR            */
 3489 #define MUIA_Filepanel_RejectIcons          0x80423450 /* V20 i.g BOOL              */
 3490 #define MUIA_Filepanel_RejectPattern        0x804281ab /* V20 i.g STRPTR            */
 3491 
 3492 
 3493 
 3494 /****************************************************************************/
 3495 /** Fontpanel                                                              **/
 3496 /****************************************************************************/
 3497 
 3498 #ifdef _DCC
 3499 extern char MUIC_Fontpanel[];
 3500 #else
 3501 #define MUIC_Fontpanel "Fontpanel.mui"
 3502 #endif
 3503 
 3504 /* Methods */
 3505 
 3506 
 3507 /* Attributes */
 3508 
 3509 #define MUIA_Fontpanel_ShowCollection       0x804225ea /* V20 i.. LONG              */
 3510 
 3511 #define MUIV_Fontpanel_ShowCollection_All -1
 3512 #define MUIV_Fontpanel_ShowCollection_FixedWidth 1
 3513 #define MUIV_Fontpanel_ShowCollection_Bitmap 2
 3514 #define MUIV_Fontpanel_ShowCollection_TrueType 4
 3515 #define MUIV_Fontpanel_ShowCollection_User 8
 3516 
 3517 
 3518 /****************************************************************************/
 3519 /** Screenmodepanel                                                        **/
 3520 /****************************************************************************/
 3521 
 3522 #ifdef _DCC
 3523 extern char MUIC_Screenmodepanel[];
 3524 #else
 3525 #define MUIC_Screenmodepanel "Screenmodepanel.mui"
 3526 #endif
 3527 
 3528 /* Methods */
 3529 
 3530 
 3531 /* Attributes */
 3532 
 3533 
 3534 
 3535 
 3536 /****************************************************************************/
 3537 /** Keyadjust                                                              **/
 3538 /****************************************************************************/
 3539 
 3540 #ifdef _DCC
 3541 extern char MUIC_Keyadjust[];
 3542 #else
 3543 #define MUIC_Keyadjust "Keyadjust.mui"
 3544 #endif
 3545 
 3546 /* Methods */
 3547 
 3548 
 3549 /* Attributes */
 3550 
 3551 #define MUIA_Keyadjust_AllowDoubleClick     0x8042be82 /* V20 isg BOOL              */
 3552 #define MUIA_Keyadjust_AllowMouseEvents     0x8042b61c /* V20 isg BOOL              */
 3553 #define MUIA_Keyadjust_AllowMultipleKeys    0x8042890b /* V20 isg BOOL              */
 3554 #define MUIA_Keyadjust_AllowTripleClick     0x8042fd79 /* V20 isg BOOL              */
 3555 #define MUIA_Keyadjust_ForceKeyCode         0x8042fbad /* V20 isg ULONG             */
 3556 #define MUIA_Keyadjust_Key                  0x8042e161 /* V20 isg STRPTR            */
 3557 
 3558 
 3559 
 3560 /****************************************************************************/
 3561 /** Imagebrowser                                                           **/
 3562 /****************************************************************************/
 3563 
 3564 #ifdef _DCC
 3565 extern char MUIC_Imagebrowser[];
 3566 #else
 3567 #define MUIC_Imagebrowser "Imagebrowser.mui"
 3568 #endif
 3569 
 3570 /* Methods */
 3571 
 3572 
 3573 /* Attributes */
 3574 
 3575 
 3576 
 3577 
 3578 /****************************************************************************/
 3579 /** Colorring                                                              **/
 3580 /****************************************************************************/
 3581 
 3582 #ifdef _DCC
 3583 extern char MUIC_Colorring[];
 3584 #else
 3585 #define MUIC_Colorring "Colorring.mui"
 3586 #endif
 3587 
 3588 /* Methods */
 3589 
 3590 
 3591 /* Attributes */
 3592 
 3593 
 3594 
 3595 
 3596 /****************************************************************************/
 3597 /** Coloradjust                                                            **/
 3598 /****************************************************************************/
 3599 
 3600 #ifdef _DCC
 3601 extern char MUIC_Coloradjust[];
 3602 #else
 3603 #define MUIC_Coloradjust "Coloradjust.mui"
 3604 #endif
 3605 
 3606 /* Methods */
 3607 
 3608 
 3609 /* Attributes */
 3610 
 3611 #define MUIA_Coloradjust_Alpha              0x8042a1f1 /* V22 isg UBYTE             */
 3612 #define MUIA_Coloradjust_ARGB               0x804250ca /* V22 isg ULONG             */
 3613 #define MUIA_Coloradjust_Blue               0x8042b8a3 /* V4  isg ULONG             */
 3614 #define MUIA_Coloradjust_Green              0x804285ab /* V4  isg ULONG             */
 3615 #define MUIA_Coloradjust_ModeID             0x8042ec59 /* V4  isg ULONG             */
 3616 #define MUIA_Coloradjust_Red                0x80420eaa /* V4  isg ULONG             */
 3617 #define MUIA_Coloradjust_RGB                0x8042f899 /* V4  isg ULONG *           */
 3618 #define MUIA_Coloradjust_ShowAlpha          0x8042e102 /* V22 isg BOOL              */
 3619 #define MUIA_Coloradjust_XRGB               0x8042cc13 /* V22 isg ULONG             */
 3620 
 3621 
 3622 
 3623 /****************************************************************************/
 3624 /** Process                                                                **/
 3625 /****************************************************************************/
 3626 
 3627 #ifdef _DCC
 3628 extern char MUIC_Process[];
 3629 #else
 3630 #define MUIC_Process "Process.mui"
 3631 #endif
 3632 
 3633 /* Methods */
 3634 
 3635 #define MUIM_Process_Kill                   0x804264cf /* V20 */
 3636 #define MUIM_Process_Launch                 0x80425df7 /* V20 */
 3637 #define MUIM_Process_Process                0x804230aa /* V20 */
 3638 #define MUIM_Process_Signal                 0x8042e791 /* V20 */
 3639 struct  MUIP_Process_Kill                   { ULONG MethodID; LONG maxdelay; };
 3640 struct  MUIP_Process_Launch                 { ULONG MethodID; };
 3641 struct  MUIP_Process_Process                { ULONG MethodID; ULONG *kill; Boopsiobject *proc; };
 3642 struct  MUIP_Process_Signal                 { ULONG MethodID; ULONG sigs; };
 3643 
 3644 /* Attributes */
 3645 
 3646 #define MUIA_Process_AutoLaunch             0x80428855 /* V20 i.. ULONG             */
 3647 #define MUIA_Process_Name                   0x8042732b /* V20 i.. ULONG             */
 3648 #define MUIA_Process_Priority               0x80422a54 /* V20 i.. ULONG             */
 3649 #define MUIA_Process_SourceClass            0x8042cf8b /* V20 i.. ULONG             */
 3650 #define MUIA_Process_SourceObject           0x804212a2 /* V20 i.. ULONG             */
 3651 #define MUIA_Process_StackSize              0x804230d0 /* V20 i.. ULONG             */
 3652 #define MUIA_Process_Task                   0x8042b123 /* V20 ..g ULONG             */
 3653 
 3654 
 3655 
 3656 /****************************************************************************/
 3657 /** Pubscreen                                                              **/
 3658 /****************************************************************************/
 3659 
 3660 #ifdef _DCC
 3661 extern char MUIC_Pubscreen[];
 3662 #else
 3663 #define MUIC_Pubscreen "Pubscreen.mui"
 3664 #endif
 3665 
 3666 /* Attributes */
 3667 
 3668 
 3669 
 3670 
 3671 /****************************************************************************/
 3672 /** Aboutpage                                                              **/
 3673 /****************************************************************************/
 3674 
 3675 #ifdef _DCC
 3676 extern char MUIC_Aboutpage[];
 3677 #else
 3678 #define MUIC_Aboutpage "Aboutpage.mui"
 3679 #endif
 3680 
 3681 /* Methods */
 3682 
 3683 
 3684 
 3685 /****************************************************************************/
 3686 /** Title                                                                  **/
 3687 /****************************************************************************/
 3688 
 3689 #ifdef _DCC
 3690 extern char MUIC_Title[];
 3691 #else
 3692 #define MUIC_Title "Title.mui"
 3693 #endif
 3694 
 3695 /* Methods */
 3696 
 3697 #define MUIM_Title_Close                    0x8042303a /* V20 */
 3698 #define MUIM_Title_FindPage                 0x80423d0d /* V20 */
 3699 #define MUIM_Title_New                      0x804247a6 /* V20 */
 3700 struct  MUIP_Title_Close                    { ULONG MethodID; Boopsiobject *tito; };
 3701 struct  MUIP_Title_FindPage                 { ULONG MethodID; Boopsiobject *titlebutton; };
 3702 struct  MUIP_Title_New                      { ULONG MethodID;  };
 3703 
 3704 /* Attributes */
 3705 
 3706 #define MUIA_Title_Clickable                0x80425959 /* V20 i.. LONG              */
 3707 #define MUIA_Title_Closable                 0x80420402 /* V20 isg BOOL              */
 3708 #define MUIA_Title_EventHandlerPriority     0x804286bc /* V20 i.. LONG              */
 3709 #define MUIA_Title_Newable                  0x80424145 /* V20 isg BOOL              */
 3710 #define MUIA_Title_OnLastClose              0x804253cf /* V21 is. LONG              */
 3711 #define MUIA_Title_Position                 0x804273a3 /* V20 isg LONG              */
 3712 #define MUIA_Title_Sortable                 0x804211f1 /* V20 isg BOOL              */
 3713 
 3714 #define MUIV_Title_EventHandlerPriority_Default 0
 3715 #define MUIV_Title_OnLastClose_Remove 0
 3716 #define MUIV_Title_OnLastClose_WindowAction 1
 3717 #define MUIV_Title_Position_Top 0
 3718 #define MUIV_Title_Position_Bottom 1
 3719 #define MUIV_Title_Position_Left 2
 3720 #define MUIV_Title_Position_Right 3
 3721 
 3722 
 3723 /****************************************************************************/
 3724 /** Transition                                                             **/
 3725 /****************************************************************************/
 3726 
 3727 #ifdef _DCC
 3728 extern char MUIC_Transition[];
 3729 #else
 3730 #define MUIC_Transition "Transition.mui"
 3731 #endif
 3732 
 3733 /* Methods */
 3734 
 3735 
 3736 /* Attributes */
 3737 
 3738 
 3739 
 3740 
 3741 /****************************************************************************/
 3742 /** Switchpanel                                                            **/
 3743 /****************************************************************************/
 3744 
 3745 #ifdef _DCC
 3746 extern char MUIC_Switchpanel[];
 3747 #else
 3748 #define MUIC_Switchpanel "Switchpanel.mui"
 3749 #endif
 3750 
 3751 /* Methods */
 3752 
 3753 #define MUIM_Switchpanel_Create             0x80427bb4 /* V20 */
 3754 struct  MUIP_Switchpanel_Create             { ULONG MethodID; Boopsiobject *switchitem; };
 3755 
 3756 /* Attributes */
 3757 
 3758 #define MUIA_Switchpanel_Current            0x80427e97 /* V20 isg Boopsiobject *    */
 3759 
 3760 #define MUIV_Switchpanel_Current_First -1
 3761 #define MUIV_Switchpanel_Current_Last -2
 3762 #define MUIV_Switchpanel_Current_Prev -3
 3763 #define MUIV_Switchpanel_Current_Next -4
 3764 #define MUIV_Switchpanel_Current_PrevGroup -5
 3765 #define MUIV_Switchpanel_Current_NextGroup -6
 3766 
 3767 
 3768 /****************************************************************************/
 3769 /** Switchitem                                                             **/
 3770 /****************************************************************************/
 3771 
 3772 #ifdef _DCC
 3773 extern char MUIC_Switchitem[];
 3774 #else
 3775 #define MUIC_Switchitem "Switchitem.mui"
 3776 #endif
 3777 
 3778 /* Methods */
 3779 
 3780 #define MUIM_Switchitem_Create              0x80421ef8 /* V20 */
 3781 struct  MUIP_Switchitem_Create              { ULONG MethodID; };
 3782 
 3783 /* Attributes */
 3784 
 3785 
 3786 
 3787 
 3788 /****************************************************************************/
 3789 /** Datamap                                                                **/
 3790 /****************************************************************************/
 3791 
 3792 #ifdef _DCC
 3793 extern char MUIC_Datamap[];
 3794 #else
 3795 #define MUIC_Datamap "Datamap.mui"
 3796 #endif
 3797 
 3798 /* Methods */
 3799 
 3800 #define MUIM_Datamap_Clear                  0x8042eebc /* V20 */
 3801 #define MUIM_Datamap_Find                   0x8042d650 /* V20 */
 3802 #define MUIM_Datamap_Get                    0x8042c2ba /* V21 */
 3803 #define MUIM_Datamap_Iterate                0x8042fda1 /* V20 */
 3804 #define MUIM_Datamap_IterationKey           0x8042bc15 /* V20 */
 3805 #define MUIM_Datamap_Remove                 0x804203d8 /* V20 */
 3806 #define MUIM_Datamap_Set                    0x8042b84f /* V20 */
 3807 struct  MUIP_Datamap_Clear                  { ULONG MethodID; };
 3808 struct  MUIP_Datamap_Find                   { ULONG MethodID; CONST_STRPTR key; };
 3809 struct  MUIP_Datamap_Get                    { ULONG MethodID; CONST_STRPTR key; ULONG *size; };
 3810 struct  MUIP_Datamap_Iterate                { ULONG MethodID; IPTR *counter; };
 3811 struct  MUIP_Datamap_IterationKey           { ULONG MethodID; IPTR *counter; };
 3812 struct  MUIP_Datamap_Remove                 { ULONG MethodID; CONST_STRPTR key; };
 3813 struct  MUIP_Datamap_Set                    { ULONG MethodID; APTR data; LONG len; CONST_STRPTR key; };
 3814 
 3815 /* Attributes */
 3816 
 3817 #define MUIA_Datamap_AutoLock               0x8042fbe4 /* V20 i.. BOOL              */
 3818 #define MUIA_Datamap_CopyKeys               0x8042a179 /* V20 i.. BOOL              */
 3819 #define MUIA_Datamap_Count                  0x80427580 /* V20 ..g ULONG             */
 3820 #define MUIA_Datamap_Pool                   0x80424724 /* V20 i.. APTR              */
 3821 
 3822 
 3823 
 3824 /****************************************************************************/
 3825 /** Slave                                                                  **/
 3826 /****************************************************************************/
 3827 
 3828 #ifdef _DCC
 3829 extern char MUIC_Slave[];
 3830 #else
 3831 #define MUIC_Slave "Slave.mui"
 3832 #endif
 3833 
 3834 /* Methods */
 3835 
 3836 #define MUIM_Slave_Cleanup                  0x80425e72 /* V20 */
 3837 #define MUIM_Slave_Dispatch                 0x8042361f /* V20 */
 3838 #define MUIM_Slave_Error                    0x8042e544 /* V20 */
 3839 #define MUIM_Slave_Setup                    0x80429faa /* V20 */
 3840 #define MUIM_Slave_SignalsReceived          0x8042d21a /* V20 */
 3841 struct  MUIP_Slave_Cleanup                  { ULONG MethodID; };
 3842 struct  MUIP_Slave_Dispatch                 { ULONG MethodID; ULONG flags; LONG count; /* ... */ };
 3843 struct  MUIP_Slave_Error                    { ULONG MethodID; Msg FailedDispatch; /* ... */ };
 3844 struct  MUIP_Slave_Setup                    { ULONG MethodID; };
 3845 struct  MUIP_Slave_SignalsReceived          { ULONG MethodID; ULONG sigmask; };
 3846 
 3847 /* Attributes */
 3848 
 3849 #define MUIA_Slave_Application              0x80427767 /* V20 i.. Boopsiobject *    */
 3850 #define MUIA_Slave_Class                    0x80420f8c /* V20 i.. Boopsiobject *    */
 3851 #define MUIA_Slave_Object                   0x804202ab /* V20 i.. Boopsiobject *    */
 3852 
 3853 
 3854 
 3855 /****************************************************************************/
 3856 /** Objectmap                                                              **/
 3857 /****************************************************************************/
 3858 
 3859 #ifdef _DCC
 3860 extern char MUIC_Objectmap[];
 3861 #else
 3862 #define MUIC_Objectmap "Objectmap.mui"
 3863 #endif
 3864 
 3865 /* Methods */
 3866 
 3867 #define MUIM_Objectmap_Clear                0x80422ee5 /* V20 */
 3868 #define MUIM_Objectmap_Find                 0x80426506 /* V20 */
 3869 #define MUIM_Objectmap_Iterate              0x804262bc /* V20 */
 3870 #define MUIM_Objectmap_IterationKey         0x8042d7ff /* V20 */
 3871 #define MUIM_Objectmap_Remove               0x8042f649 /* V20 */
 3872 #define MUIM_Objectmap_Set                  0x80421ec5 /* V20 */
 3873 struct  MUIP_Objectmap_Clear                { ULONG MethodID; };
 3874 struct  MUIP_Objectmap_Find                 { ULONG MethodID; CONST_STRPTR key; };
 3875 struct  MUIP_Objectmap_Iterate              { ULONG MethodID; IPTR *counter; };
 3876 struct  MUIP_Objectmap_IterationKey         { ULONG MethodID; IPTR *counter; };
 3877 struct  MUIP_Objectmap_Remove               { ULONG MethodID; CONST_STRPTR key; };
 3878 struct  MUIP_Objectmap_Set                  { ULONG MethodID; Boopsiobject *o; CONST_STRPTR key; };
 3879 
 3880 /* Attributes */
 3881 
 3882 #define MUIA_Objectmap_AutoLock             0x8042e65f /* V20 i.. BOOL              */
 3883 #define MUIA_Objectmap_CopyKeys             0x8042b964 /* V20 i.. BOOL              */
 3884 #define MUIA_Objectmap_Pool                 0x80422ed3 /* V20 i.. APTR              */
 3885 
 3886 
 3887 
 3888 /****************************************************************************/
 3889 /** FSProtectionBits                                                       **/
 3890 /****************************************************************************/
 3891 
 3892 #ifdef _DCC
 3893 extern char MUIC_FSProtectionBits[];
 3894 #else
 3895 #define MUIC_FSProtectionBits "FSProtectionBits.mui"
 3896 #endif
 3897 
 3898 /* Attributes */
 3899 
 3900 #define MUIA_FSProtectionBits_Flags         0x8042330c /* V21 isg ULONG             */
 3901 
 3902 
 3903 
 3904 /****************************************************************************/
 3905 /** Popcolor                                                               **/
 3906 /****************************************************************************/
 3907 
 3908 #ifdef _DCC
 3909 extern char MUIC_Popcolor[];
 3910 #else
 3911 #define MUIC_Popcolor "Popcolor.mui"
 3912 #endif
 3913 
 3914 /* Attributes */
 3915 
 3916 #define MUIA_Popcolor_ShowAlpha             0x8042e102 /* V22 i.. BOOL              */
 3917 
 3918 
 3919 
 3920 /****************************************************************************/
 3921 /** Stringscroll                                                           **/
 3922 /****************************************************************************/
 3923 
 3924 #ifdef _DCC
 3925 extern char MUIC_Stringscroll[];
 3926 #else
 3927 #define MUIC_Stringscroll "Stringscroll.mui"
 3928 #endif
 3929 
 3930 /* Methods */
 3931 
 3932 
 3933 /* Attributes */
 3934 
 3935 #define MUIA_Stringscroll_HorizBar          0x8042e049 /* V22 i.. MUIScrollbar *    */
 3936 #define MUIA_Stringscroll_NoInput           0x8042b2f3 /* V22 i.. BOOL              */
 3937 #define MUIA_Stringscroll_SetMin            0x8042cbbb /* V22 i.. BOOL              */
 3938 #define MUIA_Stringscroll_SetVMin           0x80420115 /* V22 i.. BOOL              */
 3939 #define MUIA_Stringscroll_String            0x804256a2 /* V22 ..g MUIString *       */
 3940 #define MUIA_Stringscroll_UseWinBorder      0x80422a61 /* V22 i.. BOOL              */
 3941 #define MUIA_Stringscroll_VertBar           0x804232f8 /* V22 i.. MUIScrollbar *    */
 3942 #define MUIA_Stringscroll_VertScrollerOnly  0x8042873b /* V22 i.. BOOL              */
 3943 
 3944 
 3945 
 3946 /*****************************************/
 3947 /* End of automatic header file creation */
 3948 /*****************************************/
 3949 
 3950 
 3951 
 3952 
 3953 
 3954 
 3955 /*************************************************************************
 3956 ** Structures and Macros for creating custom classes.
 3957 *************************************************************************/
 3958 
 3959 
 3960 /*
 3961 ** GENERAL NOTES:
 3962 **
 3963 ** - Everything described in this header file is only valid within
 3964 **   MUI classes. You may never use any of these things out of
 3965 **   a class, e.g. in a traditional MUI application.
 3966 **
 3967 ** - Except when otherwise stated, all structures are strictly read only.
 3968 */
 3969 
 3970 
 3971 /* Global information for every object */
 3972 
 3973 struct MUI_GlobalInfo
 3974 {
 3975    ULONG priv0;
 3976 	Boopsiobject *mgi_ApplicationObject;
 3977 
 3978 	/* ... private data follows ... */
 3979 };
 3980 
 3981 
 3982 /* Instance data of notify class */
 3983 
 3984 struct MUI_NotifyData
 3985 {
 3986 	struct MUI_GlobalInfo *mnd_GlobalInfo;
 3987 	ULONG                  mnd_UserData;
 3988 	ULONG                  mnd_ObjectID; 
 3989    ULONG priv1;
 3990    ULONG priv2;
 3991    ULONG priv3;
 3992    ULONG priv4;
 3993 };
 3994 
 3995 
 3996 /* MUI_MinMax structure holds information about minimum, maximum
 3997    and default dimensions of an object. */
 3998 
 3999 struct MUI_MinMax
 4000 {
 4001 	WORD MinWidth;
 4002 	WORD MinHeight;
 4003 	WORD MaxWidth;
 4004 	WORD MaxHeight;
 4005 	WORD DefWidth;
 4006 	WORD DefHeight;
 4007 };
 4008 
 4009 #define MUI_MAXMAX 10000 /* use this if a dimension is not limited. */
 4010 
 4011 
 4012 /* Hook message for custom layout */
 4013 
 4014 struct MUI_LayoutMsg
 4015 {
 4016 	ULONG                  lm_Type;     /* type of message (see defines below)                      */
 4017 	struct MinList        *lm_Children; /* list of this groups children, traverse with NextObject() */
 4018 	struct MUI_MinMax      lm_MinMax;   /* results for MUILM_MINMAX                                 */
 4019 	struct
 4020 	{
 4021 		LONG Width;
 4022 		LONG Height;
 4023    ULONG priv5;
 4024    ULONG priv6;
 4025 	} lm_Layout;   /* size (and result) for MUILM_LAYOUT                       */
 4026 };
 4027 
 4028 #define MUILM_MINMAX    1  /* MUI wants you to calc your min & max sizes */
 4029 #define MUILM_LAYOUT    2  /* MUI wants you to layout your children      */
 4030 
 4031 #define MUILM_UNKNOWN  -1  /* return this if your hook doesn't implement lm_Type */
 4032 
 4033 
 4034 /* (partial) instance data of area class */
 4035 
 4036 struct MUI_AreaData
 4037 {
 4038 	struct MUI_RenderInfo *mad_RenderInfo;     /* RenderInfo for this object */
 4039    ULONG priv7;
 4040 	struct TextFont       *mad_Font;           /* Font */
 4041 	struct MUI_MinMax      mad_MinMax;         /* min/max/default sizes */
 4042 	struct IBox            mad_Box;            /* position and dimension */
 4043 	BYTE                   mad_addleft;        /* frame & innerspacing left offset */
 4044 	BYTE                   mad_addtop;         /* frame & innerspacing top offset  */
 4045 	BYTE                   mad_subwidth;       /* frame & innerspacing add. width  */
 4046 	BYTE                   mad_subheight;      /* frame & innerspacing add. height */
 4047 	ULONG                  mad_Flags;          /* see definitions below */
 4048 
 4049 	/* ... private data follows ... */
 4050 };
 4051 
 4052 /* Definitions for mad_Flags, other flags are private */
 4053 
 4054 #define MADF_DRAWOBJECT        (1<< 0) /* completely redraw yourself */
 4055 #define MADF_DRAWUPDATE        (1<< 1) /* only update yourself */
 4056 
 4057 
 4058 
 4059 /* Drag and drop */
 4060 
 4061 struct MUI_DragImage
 4062 {
 4063 	struct BitMap *bm;
 4064 	WORD width;  /* exact width and height of bitmap */
 4065 	WORD height;
 4066 	WORD touchx; /* position of pointer click relative to bitmap */
 4067 	WORD touchy;
 4068 	ULONG flags; /* see flags below, all other flags reserved for future use */
 4069 	PLANEPTR mask;
 4070 };
 4071 
 4072 /* flags for struct MUI_DragImage */
 4073 #define MUIF_DRAGIMAGE_HASMASK       (1<<0) /* set this if mask contains a valid masking plane */
 4074 #define MUIF_DRAGIMAGE_SOURCEALPHA   (1<<1) /* set this if the bitmap contains information about pixel transparency */
 4075 #define MUIF_DRAGIMAGE_NOSHADOWS     (1<<2) /* set to disable bottom/right edge shadows */
 4076 
 4077 /* flags for MUIM_DragEvent */
 4078 #define MUIF_DRAGEVENT_REDRAW        (1<<0) /* set by the overloader in case the MUI_DragImage was modified during MUIM_DragEvent */
 4079 #define MUIF_DRAGEVENT_FOREIGNDROP   (1<<1) /* set by the overloader in case it can drop to a foreign window, the actual drop must be implemented in the Application's MUIM_DragDrop */
 4080 #define MUIF_DRAGEVENT_MOUSECHANGED  (1<<2) /* set by the overloader to force a custom mouse pointer instead of the one picked by MUI */
 4081 
 4082 /* MUI's draw pens */
 4083 
 4084 #define MPEN_SHINE      0
 4085 #define MPEN_HALFSHINE  1
 4086 #define MPEN_BACKGROUND 2
 4087 #define MPEN_HALFSHADOW 3
 4088 #define MPEN_SHADOW     4
 4089 #define MPEN_TEXT       5
 4090 #define MPEN_FILL       6
 4091 #define MPEN_MARK       7
 4092 #define MPEN_COUNT      8
 4093 
 4094 
 4095 /* flags for MUI_Request() */
 4096 
 4097 #define MUIREQ_XYPOS     (1<<31)
 4098 #define MUIREQ_MOVEALONG (1<<30)
 4099 #define MUIREQ_BOTTOM    (1<<29)
 4100 #define MUIREQ_RIGHT     (1<<28)
 4101 #define MUIREQ_LISTPOS   (1<<27)
 4102 
 4103 
 4104 /* Mask for pens from MUI_ObtainPen() */
 4105 
 4106 #define MUIPEN_MASK 0x0000ffff
 4107 #define MUIPEN(pen) ((pen) & MUIPEN_MASK)
 4108 
 4109 /* Information on display environment */
 4110 
 4111 
 4112 struct MUI_RenderInfo
 4113 {
 4114 	Boopsiobject    *mri_WindowObject;  /* valid between MUIM_Setup/MUIM_Cleanup */
 4115 
 4116 	struct Screen   *mri_Screen;        /* valid between MUIM_Setup/MUIM_Cleanup */
 4117 	struct DrawInfo *mri_DrawInfo;      /* valid between MUIM_Setup/MUIM_Cleanup */
 4118 	UWORD           *mri_Pens;          /* valid between MUIM_Setup/MUIM_Cleanup */
 4119 	struct Window   *mri_Window;        /* valid between MUIM_Show/MUIM_Hide */
 4120 	struct RastPort *mri_RastPort;      /* valid between MUIM_Show/MUIM_Hide */
 4121 	ULONG            mri_Flags;         /* valid between MUIM_Setup/MUIM_Cleanup */
 4122 	/* ... private data follows ... */
 4123 };
 4124 
 4125 
 4126 /*
 4127 ** If mri_Flags & MUIMRI_RECTFILL, RectFill() is quicker
 4128 ** than Move()/Draw() for horizontal or vertical lines.
 4129 ** on the current display.
 4130 */
 4131 #define MUIMRI_RECTFILL (1<<0)
 4132 
 4133 /*
 4134 ** If mri_Flags & MUIMRI_TRUECOLOR, display environment is a
 4135 ** cybergraphics emulated hicolor or true color display.
 4136 */
 4137 #define MUIMRI_TRUECOLOR (1<<1)
 4138 
 4139 /*
 4140 ** If mri_Flags & MUIMRI_THINFRAMES, MUI uses thin frames
 4141 ** (1:1) apsect ratio instead of standard 2:1 frames.
 4142 */
 4143 #define MUIMRI_THINFRAMES (1<<2)
 4144 
 4145 /*
 4146 ** If mri_Flags & MUIMRI_REFRESHMODE, MUI is currently
 4147 ** refreshing a WFLG_SIMPLEREFRESH window and is inbetween
 4148 ** a BeginRefresh()/EndRefresh() pair.
 4149 */
 4150 #define MUIMRI_REFRESHMODE (1<<3)
 4151 
 4152 /*
 4153 ** If mri_Flags & MUIMRI_PLANAR, display environment is an
 4154 ** old-style planar display.
 4155 */
 4156 #define MUIMRI_PLANAR (1<<4)
 4157 
 4158 
 4159 /* the following macros can be used to get pointers to an objects
 4160    GlobalInfo and RenderInfo structures. */
 4161 
 4162 struct __dummyXFC2__
 4163 {
 4164 	struct MUI_NotifyData mnd;
 4165 	struct MUI_AreaData   mad;
 4166 };
 4167 
 4168 #define muiNotifyData(obj) (&(((struct __dummyXFC2__ *)(obj))->mnd))
 4169 #define muiAreaData(obj)   (&(((struct __dummyXFC2__ *)(obj))->mad))
 4170 
 4171 #define muiGlobalInfo(obj) (((struct __dummyXFC2__ *)(obj))->mnd.mnd_GlobalInfo)
 4172 #define muiUserData(obj)   (((struct __dummyXFC2__ *)(obj))->mnd.mnd_UserData)
 4173 #define muiRenderInfo(obj) (((struct __dummyXFC2__ *)(obj))->mad.mad_RenderInfo)
 4174 
 4175 /* User configurable keyboard events coming with MUIM_HandleInput */
 4176 
 4177 enum
 4178 {
 4179 	MUIKEY_RELEASE = -2, /* not a real key, faked when MUIKEY_PRESS is released */
 4180 	MUIKEY_NONE    = -1,
 4181 	MUIKEY_PRESS,
 4182 	MUIKEY_TOGGLE,
 4183 	MUIKEY_UP,
 4184 	MUIKEY_DOWN,
 4185 	MUIKEY_PAGEUP,
 4186 	MUIKEY_PAGEDOWN,
 4187 	MUIKEY_TOP,
 4188 	MUIKEY_BOTTOM,
 4189 	MUIKEY_LEFT,
 4190 	MUIKEY_RIGHT,
 4191 	MUIKEY_WORDLEFT,
 4192 	MUIKEY_WORDRIGHT,
 4193 	MUIKEY_LINESTART,
 4194 	MUIKEY_LINEEND,
 4195 	MUIKEY_GADGET_NEXT,
 4196 	MUIKEY_GADGET_PREV,
 4197 	MUIKEY_GADGET_OFF,
 4198 	MUIKEY_WINDOW_CLOSE,
 4199 	MUIKEY_WINDOW_NEXT,
 4200 	MUIKEY_WINDOW_PREV,
 4201 	MUIKEY_HELP,
 4202 	MUIKEY_POPUP,
 4203 	MUIKEY_CUT,
 4204 	MUIKEY_COPY,
 4205 	MUIKEY_PASTE,
 4206 	MUIKEY_UNDO,
 4207 	MUIKEY_REDO,
 4208 	MUIKEY_DELETE,
 4209 	MUIKEY_BACKSPACE,
 4210 	MUIKEY_ICONIFY,
 4211 };
 4212 
 4213 #ifdef MUI_OBSOLETE /* keys are never used in bitmasks */
 4214 #define MUIKEYF_PRESS        (1<<MUIKEY_PRESS)
 4215 #define MUIKEYF_TOGGLE       (1<<MUIKEY_TOGGLE)
 4216 #define MUIKEYF_UP           (1<<MUIKEY_UP)
 4217 #define MUIKEYF_DOWN         (1<<MUIKEY_DOWN)
 4218 #define MUIKEYF_PAGEUP       (1<<MUIKEY_PAGEUP)
 4219 #define MUIKEYF_PAGEDOWN     (1<<MUIKEY_PAGEDOWN)
 4220 #define MUIKEYF_TOP          (1<<MUIKEY_TOP)
 4221 #define MUIKEYF_BOTTOM       (1<<MUIKEY_BOTTOM)
 4222 #define MUIKEYF_LEFT         (1<<MUIKEY_LEFT)
 4223 #define MUIKEYF_RIGHT        (1<<MUIKEY_RIGHT)
 4224 #define MUIKEYF_WORDLEFT     (1<<MUIKEY_WORDLEFT)
 4225 #define MUIKEYF_WORDRIGHT    (1<<MUIKEY_WORDRIGHT)
 4226 #define MUIKEYF_LINESTART    (1<<MUIKEY_LINESTART)
 4227 #define MUIKEYF_LINEEND      (1<<MUIKEY_LINEEND)
 4228 #define MUIKEYF_GADGET_NEXT  (1<<MUIKEY_GADGET_NEXT)
 4229 #define MUIKEYF_GADGET_PREV  (1<<MUIKEY_GADGET_PREV)
 4230 #define MUIKEYF_GADGET_OFF   (1<<MUIKEY_GADGET_OFF)
 4231 #define MUIKEYF_WINDOW_CLOSE (1<<MUIKEY_WINDOW_CLOSE)
 4232 #define MUIKEYF_WINDOW_NEXT  (1<<MUIKEY_WINDOW_NEXT)
 4233 #define MUIKEYF_WINDOW_PREV  (1<<MUIKEY_WINDOW_PREV)
 4234 #define MUIKEYF_HELP         (1<<MUIKEY_HELP)
 4235 #define MUIKEYF_POPUP        (1<<MUIKEY_POPUP)
 4236 #endif
 4237 
 4238 
 4239 /* Some useful shortcuts. define MUI_NOSHORTCUTS to get rid of them */
 4240 /* NOTE: These macros may only be used in custom classes and are    */
 4241 /* only valid if your class is inbetween the specified methods!     */
 4242 
 4243 #ifndef MUI_NOSHORTCUTS
 4244 
 4245 #define _app(obj)         (muiGlobalInfo(obj)->mgi_ApplicationObject) /* valid between MUIM_Setup/Cleanup */
 4246 #define _win(obj)         (muiRenderInfo(obj)->mri_WindowObject)      /* valid between MUIM_Setup/Cleanup */
 4247 #define _dri(obj)         (muiRenderInfo(obj)->mri_DrawInfo)          /* valid between MUIM_Setup/Cleanup */
 4248 #define _screen(obj)      (muiRenderInfo(obj)->mri_Screen)            /* valid between MUIM_Setup/Cleanup */
 4249 #define _pens(obj)        (muiRenderInfo(obj)->mri_Pens)              /* valid between MUIM_Setup/Cleanup */
 4250 #define _window(obj)      (muiRenderInfo(obj)->mri_Window)            /* valid between MUIM_Show/Hide */
 4251 #define _rp(obj)          (muiRenderInfo(obj)->mri_RastPort)          /* valid between MUIM_Show/Hide */
 4252 #define _left(obj)        (muiAreaData(obj)->mad_Box.Left)            /* valid during MUIM_Draw */
 4253 #define _top(obj)         (muiAreaData(obj)->mad_Box.Top)             /* valid during MUIM_Draw */
 4254 #define _width(obj)       (muiAreaData(obj)->mad_Box.Width)           /* valid during MUIM_Draw */
 4255 #define _height(obj)      (muiAreaData(obj)->mad_Box.Height)          /* valid during MUIM_Draw */
 4256 #define _right(obj)       (_left(obj)+_width(obj)-1)                  /* valid during MUIM_Draw */
 4257 #define _bottom(obj)      (_top(obj)+_height(obj)-1)                  /* valid during MUIM_Draw */
 4258 #define _addleft(obj)     (muiAreaData(obj)->mad_addleft  )           /* valid during MUIM_Draw */
 4259 #define _addtop(obj)      (muiAreaData(obj)->mad_addtop   )           /* valid during MUIM_Draw */
 4260 #define _subwidth(obj)    (muiAreaData(obj)->mad_subwidth )           /* valid during MUIM_Draw */
 4261 #define _subheight(obj)   (muiAreaData(obj)->mad_subheight)           /* valid during MUIM_Draw */
 4262 #define _mleft(obj)       (_left(obj)+_addleft(obj))                  /* valid during MUIM_Draw */
 4263 #define _mtop(obj)        (_top(obj)+_addtop(obj))                    /* valid during MUIM_Draw */
 4264 #define _mwidth(obj)      (_width(obj)-_subwidth(obj))                /* valid during MUIM_Draw */
 4265 #define _mheight(obj)     (_height(obj)-_subheight(obj))              /* valid during MUIM_Draw */
 4266 #define _mright(obj)      (_mleft(obj)+_mwidth(obj)-1)                /* valid during MUIM_Draw */
 4267 #define _mbottom(obj)     (_mtop(obj)+_mheight(obj)-1)                /* valid during MUIM_Draw */
 4268 #define _font(obj)        (muiAreaData(obj)->mad_Font)                /* valid between MUIM_Setup/Cleanup */
 4269 #define _minwidth(obj)    (muiAreaData(obj)->mad_MinMax.MinWidth)     /* valid between MUIM_Show/Hide */
 4270 #define _minheight(obj)   (muiAreaData(obj)->mad_MinMax.MinHeight)    /* valid between MUIM_Show/Hide */
 4271 #define _maxwidth(obj)    (muiAreaData(obj)->mad_MinMax.MaxWidth)     /* valid between MUIM_Show/Hide */
 4272 #define _maxheight(obj)   (muiAreaData(obj)->mad_MinMax.MaxHeight)    /* valid between MUIM_Show/Hide */
 4273 #define _defwidth(obj)    (muiAreaData(obj)->mad_MinMax.DefWidth)     /* valid between MUIM_Show/Hide */
 4274 #define _defheight(obj)   (muiAreaData(obj)->mad_MinMax.DefHeight)    /* valid between MUIM_Show/Hide */
 4275 #define _flags(obj)       (muiAreaData(obj)->mad_Flags)
 4276 
 4277 #endif
 4278 
 4279 
 4280 
 4281 /* MUI_CustomClass returned by MUI_CreateCustomClass() */
 4282 
 4283 struct MUI_CustomClass
 4284 {
 4285 	APTR mcc_UserData;                  /* use for whatever you want */
 4286 
 4287 	struct Library *mcc_UtilityBase;    /* MUI has opened these libraries */
 4288 	struct Library *mcc_DOSBase;        /* for you automatically. You can */
 4289 	struct Library *mcc_GfxBase;        /* use them or decide to open     */
 4290 	struct Library *mcc_IntuitionBase;  /* your libraries yourself.       */
 4291 
 4292 	struct IClass *mcc_Super;           /* pointer to super class   */
 4293 	struct IClass *mcc_Class;           /* pointer to the new class */
 4294 
 4295 	/* ... private data follows ... */
 4296 };
 4297 
 4298 
 4299 
 4300 /* Textinput.mcc */
 4301 #ifndef TEXTINPUT_MCC_H
 4302 #define TEXTINPUT_MCC_H
 4303 #define MUIC_Textinput "Textinput.mcc"
 4304 #define TextinputObject MUI_NewObject(MUIC_Textinput
 4305 #define MUIC_Textinputscroll "Textinputscroll.mcc"
 4306 #define TextinputscrollObject MUI_NewObject(MUIC_Textinputscroll
 4307 #define MCC_TI_TAGBASE ((TAG_USER)|((1307<<16)+0x712))
 4308 #define MCC_TI_ID(x) (MCC_TI_TAGBASE+(x))
 4309 #define MCC_Textinput_Version 29
 4310 #define MCC_Textinput_Revision 1
 4311 #define MUIM_Textinput_ExternalEdit MCC_TI_ID(1)        /* V1 */
 4312 #define MUIM_Textinput_SaveToFile MCC_TI_ID(5)          /* V1 */
 4313 #define MUIM_Textinput_LoadFromFile MCC_TI_ID(6)        /* V1 */
 4314 #define MUIM_Textinput_DoRevert MCC_TI_ID(8)            /* V1 */
 4315 #define MUIM_Textinput_DoDelLine MCC_TI_ID(9)           /* V1 */
 4316 #define MUIM_Textinput_DoMarkStart MCC_TI_ID(10)        /* V1 */
 4317 #define MUIM_Textinput_DoMarkAll MCC_TI_ID(11)          /* V1 */
 4318 #define MUIM_Textinput_DoCut MCC_TI_ID(12)              /* V1 */
 4319 #define MUIM_Textinput_DoCopy MCC_TI_ID(13)             /* V1 */
 4320 #define MUIM_Textinput_DoPaste MCC_TI_ID(14)            /* V1 */
 4321 #define MUIM_Textinput_AppendText MCC_TI_ID(15)         /* V1 */
 4322 #define MUIM_Textinput_DoToggleWordwrap MCC_TI_ID(19)   /* V1 */
 4323 #define MUIM_Textinput_Acknowledge MCC_TI_ID(20)        /* V1 */
 4324 #define MUIM_Textinput_TranslateEvent MCC_TI_ID(21)     /* V1 */
 4325 #define MUIM_Textinput_InsertText MCC_TI_ID(22)         /* V1 */
 4326 #define MUIM_Textinput_DoLeft MCC_TI_ID(23)             /* V1 */
 4327 #define MUIM_Textinput_DoRight MCC_TI_ID(24)            /* V1 */
 4328 #define MUIM_Textinput_DoUp MCC_TI_ID(25)               /* V1 */
 4329 #define MUIM_Textinput_DoDown MCC_TI_ID(26)             /* V1 */
 4330 #define MUIM_Textinput_DoLineStart MCC_TI_ID(27)        /* V1 */
 4331 #define MUIM_Textinput_DoLineEnd MCC_TI_ID(28)          /* V1 */
 4332 #define MUIM_Textinput_DoTop MCC_TI_ID(29)              /* V1 */
 4333 #define MUIM_Textinput_DoBottom MCC_TI_ID(30)           /* V1 */
 4334 #define MUIM_Textinput_DoPageUp MCC_TI_ID(31)           /* V1 */
 4335 #define MUIM_Textinput_DoPageDown MCC_TI_ID(32)         /* V1 */
 4336 #define MUIM_Textinput_DoPopup MCC_TI_ID(33)            /* V1 */
 4337 #define MUIM_Textinput_DoPrevWord MCC_TI_ID(34)         /* V1 */
 4338 #define MUIM_Textinput_DoNextWord MCC_TI_ID(35)         /* V1 */
 4339 #define MUIM_Textinput_DoDel MCC_TI_ID(36)              /* V1 */
 4340 #define MUIM_Textinput_DoDelEOL MCC_TI_ID(37)           /* V1 */
 4341 #define MUIM_Textinput_DoBS MCC_TI_ID(38)               /* V1 */
 4342 #define MUIM_Textinput_DoBSSOL MCC_TI_ID(39)            /* V1 */
 4343 #define MUIM_Textinput_DoubleClick MCC_TI_ID(42)        /* V1 */
 4344 #define MUIM_Textinput_DoBSWord MCC_TI_ID(43)           /* V1 */
 4345 #define MUIM_Textinput_DoDelWord MCC_TI_ID(44)          /* V1 */
 4346 #define MUIM_Textinput_DoInsertFile MCC_TI_ID(45)       /* V1 */
 4347 #define MUIM_Textinput_InsertFromFile MCC_TI_ID(46)     /* V1 */
 4348 #define MUIM_Textinput_HandleChar MCC_TI_ID(47)         /* V14 */
 4349 #define MUIM_Textinput_HandleURL MCC_TI_ID(48)          /* V16 */
 4350 #define MUIM_Textinput_DoToggleCase MCC_TI_ID(51)       /* V21 */
 4351 #define MUIM_Textinput_DoToggleCaseEOW MCC_TI_ID(52)    /* V21 */
 4352 #define MUIM_Textinput_DoIncrementDec MCC_TI_ID(53)     /* V21 */
 4353 #define MUIM_Textinput_DoDecrementDec MCC_TI_ID(54)     /* V21 */
 4354 #define MUIM_Textinput_DoUndo MCC_TI_ID(56)             /* V21 */
 4355 #define MUIM_Textinput_DoRedo MCC_TI_ID(57)             /* V21 */
 4356 #define MUIM_Textinput_DoTab MCC_TI_ID(58)              /* V22 */
 4357 #define MUIM_Textinput_DoNextGadget MCC_TI_ID(59)       /* V22 */
 4358 #define MUIM_Textinput_DoSetBookmark1 MCC_TI_ID(60)     /* V22 */
 4359 #define MUIM_Textinput_DoSetBookmark2 MCC_TI_ID(61)     /* V22 */
 4360 #define MUIM_Textinput_DoSetBookmark3 MCC_TI_ID(62)     /* V22 */
 4361 #define MUIM_Textinput_DoGotoBookmark1 MCC_TI_ID(63)    /* V22 */
 4362 #define MUIM_Textinput_DoGotoBookmark2 MCC_TI_ID(64)    /* V22 */
 4363 #define MUIM_Textinput_DoGotoBookmark3 MCC_TI_ID(65)    /* V22 */
 4364 #define MUIM_Textinput_DoCutLine MCC_TI_ID(66)          /* V22 */
 4365 #define MUIM_Textinput_DoCopyCut MCC_TI_ID(67)          /* V29 */
 4366 struct MUIP_Textinput_ExternalEdit { ULONG MethodID; };
 4367 struct MUIP_Textinputscroll_Inform { ULONG MethodID; ULONG xo; ULONG yo; ULONG xs; ULONG ys; ULONG xv; ULONG yv; ULONG noedit; };
 4368 struct MUIP_Textinputmcp_GrabCols  { ULONG MethodID; ULONG notall; };
 4369 struct MUIP_Textinput_Blink { ULONG MethodID; };
 4370 struct MUIP_Textinput_SaveToFile { ULONG MethodID; STRPTR filename; };
 4371 struct MUIP_Textinput_LoadFromFile { ULONG MethodID; STRPTR filename; };
 4372 struct MUIP_Textinput_ExternalEditDone { ULONG MethodID; ULONG changed; };
 4373 struct MUIP_Textinput_DoRevert { ULONG MethodID; };
 4374 struct MUIP_Textinput_DoDelLine { ULONG MethodID; };
 4375 struct MUIP_Textinput_DoCutLine { ULONG MethodID; };
 4376 struct MUIP_Textinput_DoMarkStart { ULONG MethodID; };
 4377 struct MUIP_Textinput_DoMarkAll { ULONG MethodID; };
 4378 struct MUIP_Textinput_DoCut { ULONG MethodID; };
 4379 struct MUIP_Textinput_DoCopyCut { ULONG MethodID; };
 4380 struct MUIP_Textinput_DoCopy { ULONG MethodID; };
 4381 struct MUIP_Textinput_DoPaste { ULONG MethodID; };
 4382 struct MUIP_Textinput_AppendText { ULONG MethodID; STRPTR text; LONG len; };
 4383 struct MUIP_Textinputmcp_LAct { ULONG MethodID; ULONG which; };
 4384 struct MUIP_Textinputmcp_LCopy { ULONG MethodID; };
 4385 struct MUIP_Textinputmcp_LAdd { ULONG MethodID; };
 4386 struct MUIP_Textinput_DoToggleWordwrap { ULONG MethodID; };
 4387 struct MUIP_Textinput_Acknowledge { ULONG MethodID; STRPTR contents; };
 4388 struct MUIP_Textinput_TranslateEvent { ULONG MethodID; struct InputEvent *ie; STRPTR mappedstring; ULONG *mappedlen; };
 4389 struct MUIP_Textinput_InsertText { ULONG MethodID; STRPTR text; LONG len; };
 4390 struct MUIP_Textinput_DoLeft { ULONG MethodID; };
 4391 struct MUIP_Textinput_DoRight { ULONG MethodID; };
 4392 struct MUIP_Textinput_DoUp { ULONG MethodID; };
 4393 struct MUIP_Textinput_DoDown { ULONG MethodID; };
 4394 struct MUIP_Textinput_DoLineStart { ULONG MethodID; };
 4395 struct MUIP_Textinput_DoLineEnd { ULONG MethodID; };
 4396 struct MUIP_Textinput_DoTop { ULONG MethodID; };
 4397 struct MUIP_Textinput_DoBottom { ULONG MethodID; };
 4398 struct MUIP_Textinput_DoPageUp { ULONG MethodID; };
 4399 struct MUIP_Textinput_DoPageDown { ULONG MethodID; };
 4400 struct MUIP_Textinput_DoPopup { ULONG MethodID; };
 4401 struct MUIP_Textinput_DoPrevWord { ULONG MethodID; };
 4402 struct MUIP_Textinput_DoNextWord { ULONG MethodID; };
 4403 struct MUIP_Textinput_DoDel { ULONG MethodID; };
 4404 struct MUIP_Textinput_DoDelEOL { ULONG MethodID; };
 4405 struct MUIP_Textinput_DoBS { ULONG MethodID; };
 4406 struct MUIP_Textinput_DoBSSOL { ULONG MethodID; };
 4407 struct MUIP_Textinput_DoubleClick { ULONG MethodID; ULONG xp; ULONG yp; ULONG cnt; };
 4408 struct MUIP_Textinput_DoDelWord { ULONG MethodID; };
 4409 struct MUIP_Textinput_DoBSWord { ULONG MethodID; };
 4410 struct MUIP_Textinput_DoInsertFile { ULONG MethodID; };
 4411 struct MUIP_Textinput_InsertFromFile { ULONG MethodID; STRPTR filename; };
 4412 struct MUIP_Textinput_HandleChar { ULONG MethodID; ULONG ch; ULONG quiet; };
 4413 struct MUIP_Textinput_HandleURL { ULONG MethodID; STRPTR url; };
 4414 struct MUIP_Textinput_HandleRexxSignal { ULONG MethodID; };
 4415 struct MUIP_Textinput_HandleMisspell { ULONG MethodID; STRPTR word; STRPTR pos; STRPTR correction; };
 4416 struct MUIP_Textinput_DoToggleCase { ULONG MethodID; };
 4417 struct MUIP_Textinput_DoToggleCaseEOW { ULONG MethodID; };
 4418 struct MUIP_Textinput_DoIncrementDec { ULONG MethodID; };
 4419 struct MUIP_Textinput_DoDecrementDec { ULONG MethodID; };
 4420 struct MUIP_Textinputmcp_DefaultKeys { ULONG MethodID; };
 4421 struct MUIP_Textinput_DoUndo { ULONG MethodID; };
 4422 struct MUIP_Textinput_DoRedo { ULONG MethodID; };
 4423 struct MUIP_Textinput_DoTab { ULONG MethodID; };
 4424 struct MUIP_Textinput_DoNextGadget { ULONG MethodID; };
 4425 struct MUIP_Textinput_DoSetBookmark1 { ULONG MethodID; };
 4426 struct MUIP_Textinput_DoSetBookmark2 { ULONG MethodID; };
 4427 struct MUIP_Textinput_DoSetBookmark3 { ULONG MethodID; };
 4428 struct MUIP_Textinput_DoGotoBookmark1 { ULONG MethodID; };
 4429 struct MUIP_Textinput_DoGotoBookmark2 { ULONG MethodID; };
 4430 struct MUIP_Textinput_DoGotoBookmark3 { ULONG MethodID; };
 4431 #define MUIA_Textinput_Multiline MCC_TI_ID(100)             /* V1 i.g BOOL */
 4432 #define MUIA_Textinput_MaxLen MCC_TI_ID(101)                /* V1 i.g ULONG */
 4433 #define MUIA_Textinput_MaxLines MCC_TI_ID(102)              /* V1 i.g ULONG */
 4434 #define MUIA_Textinput_AutoExpand MCC_TI_ID(103)            /* V1 isg BOOL */
 4435 #define MUIA_Textinput_Contents MCC_TI_ID(104)              /* V1 isg STRPTR */
 4436 #define MUIA_Textinput_Blinkrate MCC_TI_ID(108)             /* V1 isg ULONG */
 4437 #define MUIA_Textinput_Cursorstyle MCC_TI_ID(109)           /* V1 isg ULONG */
 4438 #define MUIA_Textinput_AdvanceOnCR MCC_TI_ID(110)           /* V1 isg BOOL */
 4439 #define MUIA_Textinput_TmpExtension MCC_TI_ID(111)          /* V1 isg STRPTR */
 4440 #define MUIA_Textinput_Quiet MCC_TI_ID(112)                 /* V1 .sg BOOL */
 4441 #define MUIA_Textinput_Acknowledge MCC_TI_ID(113)           /* V1 ..g STRPTR */
 4442 #define MUIA_Textinput_Integer MCC_TI_ID(114)               /* V1 isg ULONG */
 4443 #define MUIA_Textinput_MinVersion MCC_TI_ID(115)            /* V1 i.. ULONG */
 4444 #define MUIA_Textinput_DefaultPopup MCC_TI_ID(117)          /* V1 i.. BOOL */
 4445 #define MUIA_Textinput_WordWrap MCC_TI_ID(118)              /* V1 isg ULONG */
 4446 #define MUIA_Textinput_IsNumeric MCC_TI_ID(119)             /* V1 isg BOOL */
 4447 #define MUIA_Textinput_MinVal MCC_TI_ID(120)                /* V1 isg ULONG */
 4448 #define MUIA_Textinput_MaxVal MCC_TI_ID(121)                /* V1 isg ULONG */
 4449 #define MUIA_Textinput_AcceptChars MCC_TI_ID(122)           /* V1 isg STRPTR */
 4450 #define MUIA_Textinput_RejectChars MCC_TI_ID(123)           /* V1 isg STRPTR */
 4451 #define MUIA_Textinput_Changed MCC_TI_ID(124)               /* V1 .sg BOOL */
 4452 #define MUIA_Textinput_AttachedList MCC_TI_ID(125)          /* V1 isg Boopsiobject */
 4453 #define MUIA_Textinput_RemainActive MCC_TI_ID(126)          /* V1 isg BOOL */
 4454 #define MUIA_Textinput_CursorPos MCC_TI_ID(127)             /* V1 .sg ULONG */
 4455 #define MUIA_Textinput_Secret MCC_TI_ID(128)                /* V1 isg BOOL */
 4456 #define MUIA_Textinput_Lines MCC_TI_ID(129)                 /* V1 ..g ULONG */
 4457 #define MUIA_Textinput_Editable MCC_TI_ID(130)              /* V1 isg BOOL */
 4458 #define MUIA_Textinputscroll_UseWinBorder MCC_TI_ID(131)    /* V1 i.. BOOL */
 4459 #define MUIA_Textinput_IsOld MCC_TI_ID(132)                 /* V1 isg BOOL */
 4460 #define MUIA_Textinput_MarkStart MCC_TI_ID(133)             /* V13 isg ULONG */
 4461 #define MUIA_Textinput_MarkEnd MCC_TI_ID(134)               /* V13 isg ULONG */
 4462 #define MUIA_Textinputscroll_VertScrollerOnly MCC_TI_ID(135)/* V14 i.. BOOL */
 4463 #define MUIA_Textinput_NoInput MCC_TI_ID(136)               /* V15 i.g BOOL */
 4464 #define MUIA_Textinput_SetMin MCC_TI_ID(137)                /* V15 isg BOOL */
 4465 #define MUIA_Textinput_SetMax MCC_TI_ID(138)                /* V15 isg BOOL */
 4466 #define MUIA_Textinput_SetVMax MCC_TI_ID(139)               /* V15 isg BOOL */
 4467 #define MUIA_Textinput_Styles MCC_TI_ID(140)                /* V15 isg ULONG */
 4468 #define MUIA_Textinput_PreParse MCC_TI_ID(141)              /* V18 isg STRPTR */
 4469 #define MUIA_Textinput_Format MCC_TI_ID(142)                /* V19 i.g ULONG */
 4470 #define MUIA_Textinput_SetVMin MCC_TI_ID(143)               /* V20 isg BOOL */
 4471 #define MUIA_Textinput_HandleURLHook MCC_TI_ID(144)         /* V22 isg struct Hook * */
 4472 #define MUIA_Textinput_Tabs MCC_TI_ID(145)                  /* V22 i** ULONG */
 4473 #define MUIA_Textinput_TabLen MCC_TI_ID(146)                /* V22 i** ULONG */
 4474 #define MUIA_Textinput_Bookmark1 MCC_TI_ID(147)             /* V22 isg ULONG */
 4475 #define MUIA_Textinput_Bookmark2 MCC_TI_ID(148)             /* V22 isg ULONG */
 4476 #define MUIA_Textinput_Bookmark3 MCC_TI_ID(149)             /* V22 isg ULONG */
 4477 #define MUIA_Textinput_CursorSize MCC_TI_ID(150)            /* V22 isg ULONG */
 4478 #define MUIA_Textinput_TopLine MCC_TI_ID(151)               /* V22 isg ULONG */
 4479 #define MUIA_Textinput_Font MCC_TI_ID(152)                  /* V23 isg ULONG */
 4480 #define MUIA_Textinput_SuggestParse MCC_TI_ID(153)          /* V24 isg ULONG */
 4481 #define MUIA_Textinput_ProhibitParse MCC_TI_ID(154)         /* V24 isg ULONG */
 4482 #define MUIA_Textinput_NoCopy MCC_TI_ID(155)                /* V26 isg ULONG */
 4483 #define MUIA_Textinput_MinimumWidth MCC_TI_ID(156)          /* V26 i.g ULONG */
 4484 #define MUIA_Textinput_ResetMarkOnCursor MCC_TI_ID(157)     /* V29 isg BOOL */
 4485 #define MUIA_Textinput_NoExtraSpacing MCC_TI_ID(158)        /* V29 isg BOOL */
 4486 #define MUIA_Textinputscroll_VertBar MCC_TI_ID(159)         /* V29 i   APTR */
 4487 #define MUIA_Textinputscroll_HorizBar MCC_TI_ID(160)        /* V29 i   APTR */
 4488 #define MUIV_Textinput_ParseB_URL      0
 4489 #define MUIV_Textinput_ParseB_Misspell 1
 4490 #define MUIV_Textinput_ParseF_URL      (1<<MUIV_Textinput_ParseB_URL)
 4491 #define MUIV_Textinput_ParseF_Misspell (1<<MUIV_Textinput_ParseB_Misspell)
 4492 #define MUIV_Textinput_Tabs_Ignore  0
 4493 #define MUIV_Textinput_Tabs_Spaces  1
 4494 #define MUIV_Textinput_Tabs_Disk    2
 4495 #define MUIV_Textinput_Tabs_Tabs    3
 4496 #define MUIV_Textinput_NoMark ((ULONG)~0)
 4497 #define MUIV_Textinput_Styles_None  0
 4498 #define MUIV_Textinput_Styles_MUI   1
 4499 #define MUIV_Textinput_Styles_IRC   2
 4500 #define MUIV_Textinput_Styles_Email 3
 4501 #define MUIV_Textinput_Styles_HTML  4
 4502 #define MUIV_Textinput_Format_Left      0
 4503 #define MUIV_Textinput_Format_Center    1
 4504 #define MUIV_Textinput_Format_Centre    1
 4505 #define MUIV_Textinput_Format_Right     2
 4506 #define MUIV_Textinput_Font_Normal 0
 4507 #define MUIV_Textinput_Font_Fixed  1
 4508 #endif
 4509 
 4510 #endif /* LIBRARIES_MUI_H */