BBjWindow::addToolButton

Description

Adds a tool button control in the BBjWindow.

Syntax

Return Value

Method

BBjToolButton

addToolButton(int ID, int x, int y, int width, int height, string title)

BBjToolButton

addToolButton(int ID, int x, int y, int width, int height, string title, string flags)

Parameters

Variable

Description

ID

Control ID number. It must be an integer between 1 and 32767 and be unique within a given top-level window.

x

Horizontal position of the upper-left corner of the tab control.

y

Vertical position of the upper-left corner of the tab control.

width

Width of the control in current units.

height

Height of the control in current units.

title

Tool button title. The title can be ordinary text or "BITMAP=", followed by a path name. (PREFIX is not searched.) If the BITMAP= syntax is used, an attempt is made to locate and load a bitmapped image (see the 'IMAGE' mnemonic) from that file. If it succeeds, the image is drawn in the button. Otherwise the text, complete with "BITMAP=", is displayed. The title or bitmap can be changed at any time with the 'TITLE' mnemonic. Including the '&' before a character in the title causes it to be an accelerator.

flags

Control flags, as follows:

 

Flag

Description

 

$0001$

$0002$

$0004$

$0010$

$0020$

$0400$

$0800$

$1000$

$2000$

$4000$

$8000$

Sets the control to be initially disabled.

Places title text to the left of the control.

Sets the control to be initially checked.

Sets the control to be initially invisible.

Designates the control to be part of a keyboard navigation group.

Creates a "click on, click off" toggle button.

Draws a recessed client edge around the control.

Draws a raised edge around the control.

Left-justifies tool button text.

Centers tool button text.

Right-justifies tool button text.

Return Value

Returns the created BBjToolButton object.

Remarks

A tool button:

  • Displays additional information (mouse position, mouse button, Ctrl and Shift key status).

  • Can display either text or a picture (bitmap).

  • Can operate normally or as a toggle (click on, click off).

  • Can use the 'COLORSET' or 'OPTIONS' mnemonic to modify the displayed color.

  • Cannot be focused with keyboard navigation commands.

  • Does not include a "focus rectangle" when it has focus.

Example

REM Add a tool button to a window

REM Obtain the instance of the BBjAPI object
LET myAPI!=BBjAPI()

REM Open the SysGui device
SYSGUI=UNT
OPEN (SYSGUI) "X0"

REM Obtain the instance of the BBjSysGui object
LET mySysGui!=myAPI!.getSysGui()

REM Set addWindow param values
X=10
Y=10
WIDTH=200
HEIGHT=200
TITLE$="BBj Window"

REM Set the current context
mySysGui!.setContext(0)

REM Create a window
myWindow! = mySysGui!.addWindow(X,Y,WIDTH,HEIGHT,TITLE$)

REM Add a tool button on the window
myToolButton! = myWindow!.addToolButton(101,50,100,90,30,"Tool Button",$0800$)

REM Register the CALLBACK routines
CALLBACK(ON_TOOL_BUTTON_PUSH,TOOL_BUTTON_PUSHED,mySysGui!.getContext(),myToolButton!.getID())
CALLBACK(ON_CLOSE,APP_CLOSE,mySysGui!.getContext())

REM Process Events
PROCESS_EVENTS

REM Callback routine called when the tool button is pressed
TOOL_BUTTON_PUSHED:
REM Create the BBjColor Object using colorNum constant
myColorRed! = mySysGui!.makeColor(mySysGui!.RED)
REM Set the tool button forecolor to RED
myToolButton!.setForeColor(myColorRed!)
RETURN

REM Callback routine called when the user closes the application window
APP_CLOSE:
RELEASE
RETURN

See Also

BBjAPI

BBjSysGui

BBjControl

BBjWindow

'TBUTTON' Mnemonic

See the BBj Object Diagram for an illustration of the relationship between BBj Objects.