BBjSysGui

Description

A BBjSysGui object is an object that represents a SYSGUI channel, which is used to facilitate the creation and manipulation of custom graphical windows and controls in a GUI application.

Creation

BBjAPI > BBjSysGui

The BBjSysGui object is created through the following BBjAPI object method:

Return Value

Method

BBjSysGui

getSysGui()

BBjSysGui

openSysGui()

Methods of BBjSysGui

Return Value

Method

void

addImageList(int id, int width, BBjImage image)

BBjPopupMenu

addPopupMenu()

BBjTopLevelWindow

addWindow(int context, int x, int y, int width, int height, string title)

addWindow(int context, int x, int y, int width, int height, string title, byte[] flags)

addWindow(int context, int x, int y, int width, int height, string title, byte[] flags, string event_mask)

addWindow(int x, int y, int width, int height, string title)

addWindow(int x, int y, int width, int height, string title, byte[] flags)

addWindow(int x, int y, int width, int height, string title, byte[] flags, byte[] event_mask)

addWindow(int context, string title)

addWindow(int context, string title, byte[] flags)

addWindow(int context, string title, byte[] flags, string event_mask)

addWindow(string title)

addWindow(string title, byte[] flags)

addWindow(string title, byte[] flags, byte[] event_mask)

void

beep()

void

bufferWrites()

BBjPopupMenu

createPopupMenu(int resHandle, int popupMenuID)

BBjRecordSet createRecordSet(int resHandle, int recordSetID)
BBjTopLevelWindow

createTopLevelWindow(int resHandle, int windowID)

Object executeScript(string script)

void

flushEvents()

void

flushWrites()

int

getActiveContext()

BBjWindow

getActiveWindow()

int

getAvailableContext()

int

getChannel()

int

getContext()

BBjVector getContextList()

int

getDefaultScrollWheelBehavior()

BBjGeolocation

getGeolocation()

BBjImageManager

getImageManager()

BBjEvent

getLastEvent()

byte[]

getLastEventString()

int

getMeasure(String text)

BBjVector

getMeasures(BBjVector vector)

BBjBatch

getMessageBatch()

BBjPopupMenu

getPopupMenu(int ID)

boolean

getRepaintEnabled()

number

getScaleX()

number

getScaleY()

BBjSystemMetrics

getSystemMetrics()

BBjWindow

getWindow(int contextID)

getWindow(string name)

BBjVector

getWindows()

getWindows(string name)

void

injectScript(string script)

injectScript(string script, boolean top)

boolean isTouchSupported()

BBjColor

makeColor(int colorNum)

makeColor(int red, int green, int blue)

makeColor(int red, int green, int blue, int alpha)

makeColor(string colorName)

BBjFont

makeFont(string name, int size, int style)

void

playSoundData(string bytes)

playSoundData(string bytes, boolean loop)

playSoundData(string bytes, boolean loop, string mime)

void

playSoundFile(string filename)

playSoundFile(string filename, boolean loop)

playSoundFile(string filename, boolean loop, string mime)

void

playSoundUrl(string url)

playSoundUrl(string url, boolean loop)

playSoundUrl(string url, boolean loop, string mime)

void

removeImageList(int id)

void

resClose(int handle)

int

resOpen(string filename)

void

setContext(int context)

void

setDefaultScrollWheelBehavior(int mode)

void

setLookAndFeel(string lookAndFeel) –deprecated in BBj 5.0. Use the LF option documented in Running BBj from the Command Line

void

setRepaintEnabled(boolean mode)

void

setScale(number x, number y)

Events

None.

Remarks

The SYSGUI channel must be open before the getSysGui method will function properly.

Constants

Value Control Constant
-1 UNKNOWN_CONTROL
0 WINDOW
1 MAIN_WINDOW
2 CHILD_WINDOW
3 MENU
4 SPECIAL_CONTROL
5 NATIVE_CONTROL
11 PUSHBUTTON_CONTROL
12 RADIOBUTTON_CONTROL
13 CHECKBOX_CONTROL
14 HSCROLL_CONTROL
15 VSCROLL_CONTROL
16 EDIT_CONTROL
17 TEXT_CONTROL
18 LISTBOX_CONTROL
19 LISTBUTTON_CONTROL
20 LISTEDIT_CONTROL
21 GROUPBOX_CONTROL
22 CEDIT_CONTROL
24 LINECHART_CONTROL
25 BARCHART_CONTROL
26 PIECHART_CONTROL
27 HTMLVIEW_CONTROL
28 MENUBUTTON_CONTROL
29 PRINTPREVIEW_CONTROL
30 GENERICCHART_CONTROL
31 WRAPPED_JCOMPONENT_CONTROL
32 WEB_COMPONENT_CONTROL
91 INPUTT_CONTROL
92 INPUTT_SPINNER_CONTROL
99 SPLITTER_CONTROL
100 MENUITEM_CONTROL
101 CHECKABLE_MENUITEM_CONTROL
102 STATUSBAR_CONTROL
103 TOOLBUTTON_CONTROL
104 INPUTE_CONTROL
105 INPUTN_CONTROL
106 TAB_CONTROL
107 GRID_CONTROL
108 IMAGE_CONTROL
109 TREE_CONTROL
110 DATAAWARE_GRID_CONTROL
112 PROGRESS_CONTROL
113 NAVIGATOR_CONTROL
114 INPUTD_CONTROL
115 NAMESPACE_CONTROL
116 GRID_HEADER_CONTROL
117 HSLIDER_CONTROL
118 VSLIDER_CONTROL
119 FILECHOOSER_CONTROL
120 COLORCHOOSER_CONTROL
121 FONTCHOOSER_CONTROL
122 DATABOUND_GRID_CONTROL
123 INPUTD_SPINNER_CONTROL
124 INPUTE_SPINNER_CONTROL
125 INPUTN_SPINNER_CONTROL
126 EDIT_SPINNER_CONTROL
127 HTMLEDIT_CONTROL

Alignment Constants

ALIGN_LEFT
ALIGN_RIGHT
ALIGN_CENTER

Orientation Constants

HORIZONTAL
VERTICAL

Menu Cut/Copy/Paste Constants

Value Constant
32027 CUT
32028 COPY
32029 PASTE

Button Constants (For BBj 21.00 and Higher)

Value Constant Buttons
0 MSGBOX_BUTTONS_OK

OK

1 MSGBOX_BUTTONS_OK_CANCEL

OK and Cancel

2 MSGBOX_BUTTONS_ABORT_RETRY_IGNORE

Abort, Retry, and Ignore

3 MSGBOX_BUTTONS_YES_NO_CANCEL

Yes, No, and Cancel

4 MSGBOX_BUTTONS_YES_NO

Yes and No

5 MSGBOX_BUTTONS_RETRY_CANCEL

Retry and Cancel

7 MSGBOX_BUTTONS_CUSTOM

Custom

Default Button Constants

Value BBjSysGui Constant Default Button
0 MSGBOX_DEFAULT_FIRST First Button
256 MSGBOX_DEFAULT_SECOND Second Button
512 MSGBOX_DEFAULT_THIRD Third Button
65536  MSGBOX_DEFAULT_NONE

Do not allow the currently highlighted button to be selected with Enter.

Icon Constants (For BBj 21.00 and Higher)

Value Constant Icon
0 MSGBOX_ICON_NONE None
16 MSGBOX_ICON_STOP Stop Sign
32 MSGBOX_ICON_QUESTION Question Mark
48 MSGBOX_ICON_EXCLAMATION Exclamation Point
64 MSGBOX_ICON_INFORMATION Information Symbol

MDI Constants

Value Constant Action
131072 MSGBOX_MDI_DESKTOP If the current window is contained within an MDI desktop, limit the MSGBOX dialog to the MDI desktop. Ignored if not in MDI.

Color Constants

Value Constant
0 BLACK
1 BLUE
2 RED
3 MAGENTA
4 GREEN
5 CYAN
6 YELLOW
7 WHITE
8 DKGRAY
9 GRAY
10 LTGRAY

Example

rem 'Obtain the instance of the BBjSysGui object

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()

See Also

BBjAPI

BBj Object Variables

BBj Object Assignment

BBj Object Error Handling

BBj Object Operators

CALLBACK Verb - Register BBj Subroutine

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