home *** CD-ROM | disk | FTP | other *** search
-
- The assmebly support macros for the bgui.library operate simular to the C
- versions of the macros. There are a couple of exceptions though:
-
- o The macro require V38.3 of the library! This is due to the usage of the
- GROUP_Inverted and PAGE_Inverted tags. The stuff will work on lower
- versions only the GUI is inverted (I.E. The last object will be first and
- the first object last).
-
- o The layout macros:
-
- FixMinWidth
- FixMinHeight
- Weight
- FixWidth
- FixHeight
- Align
- FixMinSize
- FixSize
- NoAlign
-
- In the C and E macro support these can be specified directly after a
- EndObject macro. In the assembly macros these can only be specified after
- the EndMember macro. This must be done on the same line e.g.:
-
- C version:
-
- StartMember,
- Button( "Hello", 0 ), FixMinHeight,
- EndMember
-
- Asm version:
-
- StartMember
- Button hello,0
- Endmember FixMinHeight
-
- hello: dc.b 'Hello',0
-
- Also when you specify more than one layout macro you must seperate them by
- a comma:
-
- C version:
-
- StartMember,
- Button( "Hello", 0 ), FixMinHeight, Weight( 100 ),
- EndMember
-
- Asm version:
-
- Startmember
- Button hello,0
- EndMember FixMinHeight,,Weight,100
-
- hello: dc.b 'Hello',0
-
- Please note the double comma between FixMinHeight and Weight. The EndMember
- macro is interpreted like this:
-
- EndMember [macro1,argmacro1,macro2,argmacro2,...]
-
- So if the layout macro specified does not require an argument you still
- need to pass an empty argument. Upto seven macro/arg pairs can be passed.
-
- o The HGroupObject and VGroupObject automatically pass a GROUP_Inverted tag.
- The PageObject macro automatically passes a PAGE_Inverted tag. Do not
- change this or your GUI will be created with the first object at the end of
- the window. If you create custom group or page macros please make sure that
- you add these tags.
-
- o The following macros are to be found in the assembly macros which you will
- not find in the C and E macros:
-
- DOMETHOD object,methodID[,arg1,args2,...]
-
- This macro will invoke method 'methodID' on object 'object'. Upto
- eight extra arguments can be passed to this macro. This should be
- enough for most methods.
-
- DOGADGETMETHOD object,win,req,methodID[,arg1,arg2,...]
-
- The same as the DOMETHOD macro only this will call BGUI_DoGadgetMethod
- and add a GadgetInfo structure to the method so that the object can
- do visual updates. This macro can take upto six extra arguments.
-
- PUTC value1[,value2,...]
-
- This macro pushes upto 15 immediate or absolute values on the stack.
- The value you pass will get a '#' prepended to it so only immediate
- and absolute values are allowed. All object creation macros use this
- macro.
-
- PUTV value1[,value2,...]
-
- The same as PUTC only the values will not get a '#' prepended so you
- can add all sorts of data to the stack.
-
- For the rest the assembly macros should be pretty straight forward. Please
- look at the supplied demo program "Demo.s"
-
- Enjoy,
- Jan
-