BBjWindow::addColorChooser

Description

In BBj 7.0 and higher, this method creates a BBjColorChooser in the BBjWindow.

Syntax

Return Value

Method

BBjColorChooser

addColorChooser(int ID, number x, number y, number w, number h)

BBjColorChooser

addColorChooser(int ID, number x, number y, number w, number h, BBjColor selected!)

BBjColorChooser

addColorChooser(int ID, number x, number y, number w, number h, BBjColor selected!, string flags)

BBjColorChooser addColorChooser(int ID)
BBjColorChooser addColorChooser(int ID, BBjColor selected!)
BBjColorChooser addColorChooser(int ID, BBjColor selected!, string flags)
BBjColorChooser addColorChooser()
BBjColorChooser addColorChooser(BBjColor selected!)
BBjColorChooser addColorChooser(BBjColor selected!, string flags)

Parameters

Variable

Description

ID

Specifies the 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 control in current units.

y

Vertical position of the upper-left corner of the control in current units.

width

Width of the control in current units.

height

Height of the control in current units.

selected

Initial color selection.

flags

Control flags, as follows:

Flag Description

$0001$

Sets the control to be initially disabled.

$0010$

Sets the control to be initially invisible.

$0100$

Passes the Home and Delete keys as Keypress Notify events.

$0800$

Draws a recessed client edge around the control.

$1000$

Draws a raised edge around the control

Return Value

Returns the created BBjColorChooser object.

Remarks

If the ID parameter is not specified, a control ID is assigned dynamically using getAvailableControlID().

If the x, y, width, and height parameters are not specified, they are all initialized to 0. This is typically for use with DWC windows that dynamically arrange their contents (window creation flag $00100000$).

Example

rem 'Add a color chooser 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 = 350
HEIGHT = 250
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 color chooser on the window
myColorChooser! = myWindow!.addColorChooser(101,0,0,350,250)

rem 'Register the CALLBACK routines
CALLBACK(ON_COLORCHOOSER_APPROVE,APPROVED,mySysGui!.getContext(),myColorChooser!.getID())
CALLBACK(ON_COLORCHOOSER_CANCEL,CANCELLED,mySysGui!.getContext(),myColorChooser!.getID())
CALLBACK(ON_CLOSE,CANCELLED,mySysGui!.getContext())

rem 'Process Events
process_events

rem 'Callback routine called when the colorchooser's OK button is pressed
APPROVED:
    rem 'Display a message with the approprate color
    MESSAGE$="The Color chosen was: " + STR(myColorChooser!.getColor())
    let X = MSGBOX(MESSAGE$)
release

rem 'Callback routine called when the colorchooser's Cancel button is
rem 'pressed or the window is closed without selecting a color
CANCELLED:
    rem 'Display a message notifying of the cancel
    MESSAGE$="No color was chosen!"
    let X = MSGBOX(MESSAGE$)
release

See Also

BBjAPI

BBjSysGui

BBjControl

BBjWindow

BBjColor

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