<*PRAGMA LL*>A
MenuBtnVBT.T
is a button suitable for the items in pop-up
and pull-down menus.
When the cursor rolls into a menu button, the pre
method is called
and the button is {\it readied}. If it receives a mouse transition
of type LastUp
while it is readied, the action
and post
methods
are called. The cancel
method is called if the cursor leaves the
button or the user chords with the mouse while the button is readied
.
INTERFACEThe callMenuBtnVBT ; IMPORT ButtonVBT, VBT; TYPE T <: ButtonVBT.T;
v.init(ch, action, ref)
initializes v
as a menu button
with child ch
and action procedure action
, and adds ref
to
v
's property set if it is not NIL
.
PROCEDURE New( ch: VBT.T; action: ButtonVBT.Proc; ref: REFANY := NIL): T; <* LL.sup = VBT.mu *>
New(...)
is equivalent toNEW(T).init(...)
.
PROCEDURE TextItem( name: TEXT; action: ButtonVBT.Proc; ref: REFANY := NIL): T; <* LL.sup = VBT.mu *>
Return a menu button that displays the text name
.
TextItem
is a convenience procedure for making a menu button with
a TextVBT
child. The borders are initialized to make the button
suitable for stacking into a menu using a vertical HVSplit
. More
precisely, TextItem
is equivalent to:
New(TextVBT.New(name, 0.0, 0.5, 3.0, 0.5), action, ref)
END MenuBtnVBT.