AT&T Home | AT&T Labs | Research
AT&T Labs, Inc. - Research

The Yoix® Scripting Language

Home | What's New | Grammar | Documentation | Download | License | YDAT | YWAIT | Byzgraf | FAQs
Checkbox typedict
 
A Checkbox is the interface to Java's AWT Checkbox Component. Yoix programs normally interact with a Checkbox using event handlers and by reading or writing the following fields:
autotrim An int that is 1 when white space is automatically trimmed from both ends of every string read from or written to the text field, and 0 otherwise.
background The Color that is used to paint the background of the checkbox. Reading returns a snapshot of the current color. Writing immediately changes the background to the new color. Storing NULL in background is special and means use the background of the nearest component that contains the checkbox and was assigned a background color other than NULL; if no component qualifies the checkbox uses VM.screen.background.
cursor An Object that should be an int, Image, or String that selects the cursor shown when the pointer is over the checkbox. A cursor that is an int should be one of the cursors defined in the yoix.awt.Cursor dictionary. A cursor that is an Image can describe the cursor using its size and hotspot fields and often draws it using its paint function. A cursor that is a String should be the name of a cursor that is already defined in yoix.awt.Cursor or the name a local a file or URL that contains a GIF or JPEG image that will be used as the cursor.

Reading returns the current cursor. Writing immediately changes the checkbox's cursor to the new value. Storing STANDARD_CURSOR (the default) or NULL in cursor is special and means use the cursor assigned to the nearest component that contains the checkbox and was assigned a cursor other than STANDARD_CURSOR; if no component qualifies the checkbox uses DEFAULT_CURSOR.

enabled An int that is 1 when the checkbox can respond to user input, and 0 otherwise. Reading returns the current state. Writing immediately sets the checkbox's state to the new value.
focusowner A read-only int that is non-zero when the checkbox has the focus.
font The Font, or font name if it is a String, used to paint the characters stored in the text field. Reading returns a snapshot of the current font. Writing immediately repaints the text in the new font.
foreground The Color that is used to paint the characters stored in the text field. Reading returns a snapshot of the current color. Writing immediately repaints the text in the new color. Storing NULL in foreground is special and means use the foreground of the nearest component that contains the checkbox and was assigned a foreground color other than NULL; if no component qualifies the checkbox uses VM.screen.foreground.
group A CheckboxGroup that, when it is not NULL, imposes radio button behavior (i.e., at most one checkbox can be selected) on all the checkboxes in the group.
location A Point that determines the location of the checkbox in a coordinate system that has its origin at the upper left corner of the container closest to the checkbox (in the component hierarchy) that actually contains it, positive x to the right, positive y down, and a resolution of 72 dots per inch. Reading returns a snapshot of the current location. Writing is allowed, but layout managers usually get the final say, so setting location should be viewed as a request that may not be honored.
popup A PopupMenu that is associated with the checkbox. Reading returns the current popup menu. Writing immediately shows the popup menu at the point in the checkbox's coordinate system specified by the popup menu's location field, assuming of course that the checkbox is showing on the screen. Storing TRUE in the popup menu's visible field, which was added in release 1.2.0, is an easy way to show the popup menu that currently belongs to the checkbox.
requestfocus An int can be used to request or transfer the keyboard focus. Storing a non-zero value in requestfocus tries to get the focus. Storing 0 tries to transfer the focus. Reading requestfocus does not currently return any useful information.
root An Object that is automatically updated by the interpreter's layout machinery so it is always the top-level object that contains the checkbox. For example, put a checkbox in a panel and root will be set to that panel; add the panel to a frame and the checkbox's root field will be set to that frame. A checkbox's event handlers can use root when they need to interact with the other components in the container.
showing A read-only int that is non-zero when the checkbox is showing on the screen.
size A Dimension that determines the size of the checkbox in units of 72 dots per inch. Reading returns a snapshot of the current size. Writing is allowed, but layout managers usually get the final say, so setting size should be viewed as a request that may not be honored.
state An int that is 1 when the checkbox is selected, and 0 otherwise. Reading returns the current state. Writing immediately sets the checkbox's state to the new value.
tag A String used to identify the checkbox that is either supplied when the checkbox is declared, or automatically generated otherwise. Add a checkbox to a container, like a Frame or Panel, and the interpreter's layout machinery updates the root field so it points at the top-level container and then adds the checkbox, as tag, to the root.components dictionary.
text A String of characters that are painted next to the checkbox. Reading returns the current text. Writing immediately paints the new text.
visible An int that is 1 when the checkbox is visible, and 0 otherwise. Reading returns the current visibility. Writing immediately sets the checkbox's visibility to the new state.
Several permanent fields have not been documented and should not be used in Yoix applications. Event handlers are functions that must be added to a checkbox when it is declared. The handlers that work with checkboxes are listed below; the names should be familiar if you have done some Java programming. The actionPerformed event handler is only for menus.
 
 Event Handlers:   actionPerformed, componentHidden, componentMoved, componentResized, componentShown, dragDropEnd, dragEnter, dragExit, dragGestureRecognized, dragMouseMoved, dragOver, drop, dropActionChanged, focusGained, focusLost, invocationRun, itemStateChanged, keyPressed, keyReleased, keyTyped, mouseClicked, mouseDragged, mouseEntered, mouseExited, mouseMoved, mousePressed, mouseReleased, mouseWheelMoved
 
 Example:   The program,
import yoix.*.*;

CheckboxGroup cbg;

Frame f = {
    FlowLayout layoutmanager = {
        int hgap = 10;
        int vgap = 72;
    };

    Array layout = {
        new Checkbox {
            CheckboxGroup group = cbg;
            String        text = "Right";
            int           state = 1;

            itemStateChanged(e) {
                printf("e=%O\n", e);
            }
        },

        new Checkbox {
            String text = "Quit";
            int    state = 0;

            itemStateChanged(e) {
                 if (e.state)
                     exit(0);
            }
        },

        new Checkbox {
            CheckboxGroup group = cbg;
            String        text = "Left";
            int           state = 1;

            itemStateChanged(e) {
                printf("e=%O\n", e);
            }
        },
    };
};

f.visible = TRUE;
adds three checkboxes to a frame, puts two in the same CheckboxGroup, prints the event when the left or right checkbox is selected, and quits when the middle checkbox is selected.
 
 See Also:   Button, Canvas, Choice, Dialog, FileDialog, Frame, Label, List, Panel, postEvent, ScrollPane, Scrollbar, TableColumn, TableManager, TextArea, TextCanvas, TextField, TextTerm, Window

 

Yoix is a registered trademark of AT&T Intellectual Property.