🗐 JAPI.E for Euphoria 3.1.1


                 Version 1.01, March/6/2018, by Shian Lee.



-Introduction
 ============

 This library provides Graphical User Interface (GUI) routines, using the Java
 Application Programming Interface (JAPI) 1.0.6, for WIN32 and LINUX platforms.

 The author of JAPI version 1.0.6 (26 Feb 2003) library is Merten Joost. See
 http://www.japi.de/ for more information.

 I've created this text version of the JAPI Reference Manual especially for lib2
 and EDU editor. It is based on refeng.pdf for Euphoria by Merten Joost. In EDU
 editor you can press Esc-J (jump) to navigate quickly in this manual, or press
 Ctrl-K to display context sensitive help for the current word.

 - Note that this manual is an ongoing work, and hopefully the next versions of
   this manual will contain less mistakes and more examples. Meanwhile you can
   also download the original manual from http://www.japi.de/ as a "backup"
   (the original manual contains mistakes as well).

 For running japi on Windows you will need to download and install the free
 Java Runtime Environment (JRE). You can download JRE version 1.1.8 from
 http://www.japi.de/, or download the latest JRE version from
 https://java.com/en/download/. On Linux you can use the free OpenJDK Runtime
 Environment which is installed on Linux Ubuntu by default (or use Oracle Java).
 The JRE has to be in your PATH variable. To test it, open a shell and type:

        java

 Or type:

        jre

 If the JRE is correctly installed, you will see the Java Runtime Environment
 options.

 - If you get a Java Exception error when running some programs, you may want
   to try to install a different version of JRE (not necessarily the latest).

 To write a program with the use of japi functions you have to include the
 header file japi.e into your source file:

        include japi.e

 The japi dll library, 'japi.dll' for Windows or 'japi.so' for Linux, is
 installed in euphoria/bin directory when you install lib2. japi.e will first
 look for the japi dll library in the current directory, and then in
 euphoria/bin directory (EUDIR must be set correctly. See install.doc).

 There are many example programs in euphoria/demo/japi directory to help you
 get started quickly.


 From http://www.japi.de/:

 First of all, JAPI is a library for Graphical User Interfaces (GUI). It was
 designed for quick and dirty use, cause it's NOT object oriented. Therefore,
 it's easy to learn. Even beginners with little experiences in programming are
 now able to write first applications with graphical user interfaces.

 JAPI is build on top of the AWT. The AWT (abstract windowing toolkit) is part
 of the freely distributed Java Developer Toolkit (JDK). The AWT is composed of
 a package of classes and it supports everything from creating buttons, menus,
 and dialog boxes to complete GUI applications. Notable, the AWT is platform
 indepented.

 Let's have a look at the graphical components that comes with JAPI. The
 following list provides an overview over all available components:

    frame
    menubar, menu, menuitem, popupmenu
    canvas
    button, graphicbutton
    label, graphiclabel
    checkbox
    radiobutton
    choice
    list
    textarea, textfield
    scrollbar
    panel
    scrollpane
    dialog
    window
    filedialog


 To do the layout of your application you can either use fix coordinated to
 place the components in your main window, or you can use one of the layout
 manager that comes with (the preferred method for platform independent
 programing):

    flowlayout
    gridlayout
    borderlayout


 Every component comes with its own action event. To react to aditional user
 actions, there are five listeners which can be bound to all of the components:

    mouselistener
    keylistener
    focuslistener
    componentlistener
    windowlistener


 There are a lot of graphic commands available. The following list provides an
 overview to the graphic primitives:

    colors
        setforegroundcolor
        setbackgroundcolor
    graphic primitives
        draw pixel
        draw (poly) line
        draw (filled) polygon
        draw (filled) rectangle
        draw (filled) round rectangle
        draw (filled) circle
        draw (filled) oval
        draw (filled) arc
    image functions
        load image
        save image
        get (scaled) image
        draw (scaled) image
        get image source
        draw image source

 Least, there are some goodies coming with like printing and some C-functions
 which are not available in some languages:

    debug window
    printing
    some C functions (sleep, random)


-Licence
 =======

 JAPI is a free software. You can use it under the conditions of the licence
 GNU Lesser General Public License. See http://www.gnu.org/copyleft/lesser.txt.

 In short this means that you can use JAPI free of charge, and you can also
 embed it into proprietary, non-free software.


-Disclaimer
 ==========

 Use this library at your own risk. The author of JAPI, Merten Joost, or the
 author of lib2, Shian Lee, will not be responsible for any damage or data loss.

 I've tested some of the functions in this library on Linux Mint 17.3 using
 OpenJDK Runtime Environment (IcedTea 2.6.11) and Oracle Java 8 and 9, and on
 Windows-XP 32-bit using Java JRE 7 Update 55. The code or the documentation
 might still contain errors or mistakes.


-Constants
 =========

 The following constants are defined in japi.e (more constants are listed in
 the routine's description, some of them can be used by more then one routine):

 global constant --  Boolean
        J_TRUE  = 1,
        J_FALSE = 0

 global constant --  Orientation
        J_HORIZONTAL = 0,
        J_VERTICAL   = 1

 global constant --  Colors
        J_BLACK        = 0,
        J_WHITE        = 1,
        J_RED          = 2,
        J_GREEN        = 3,
        J_BLUE         = 4,
        J_CYAN         = 5,
        J_MAGENTA      = 6,
        J_YELLOW       = 7,
        J_ORANGE       = 8,
        J_GREEN_YELLOW = 9,
        J_GREEN_CYAN   = 10,
        J_BLUE_CYAN    = 11,
        J_BLUE_MAGENTA = 12,
        J_RED_MAGENTA  = 13,
        J_DARK_GRAY    = 14,
        J_LIGHT_GRAY   = 15,
        J_GRAY         = 16


-Components
 ==========

 A GUI component (object) is a function which returns an event number (or error
 number), which later can be used by other Routines to manipulate that
 component.


 ---------------------------------<j_button>-----------------------------------

 Syntax:        include japi.e
                i = j_button(integer obj, sequence label)

 Description:   Creates a new button component with the specified label and
                returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       frame = j_frame("j_button")
                button = j_button(frame, "Hello World")

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getlength, j_getparentid, j_getstringwidth,
                j_gettext, j_getwidth, j_getxpos, j_getypos, j_hide, j_isparent,
                j_isvisible, j_keylistener, j_mouselistener, j_popupmenu,
                j_print, j_release, j_setborderpos, j_setcolorbg, j_setcolor,
                j_setcursor, j_setfocus, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setnamedcolorbg,
                j_setnamedcolor, j_setpos, j_setsize, j_settext, j_show

 Example Program: demo\japi\button1.exw

 See Also:      n/a

 -------------------------------<j_borderpanel>--------------------------------

 Syntax:        include japi.e
                i = j_borderpanel(integer obj, integer type)

 Description:   Creates a new borderpanel component with the style type and
                returns its event number.

                The following border style constants are defined in japi.e:

                        global constant
                                J_NONE     = 0,
                                J_LINEDOWN = 1,
                                J_LINEUP   = 2,
                                J_AREADOWN = 3,
                                J_AREAUP   = 4

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       j_setgridlayout(frame, 1, 4)
                p1 = j_borderpanel(frame, J_LINEDOWN)
                p2 = j_borderpanel(frame, J_LINEUP)
                p3 = j_borderpanel(frame, J_AREADOWN)
                p4 = j_borderpanel(frame, J_AREAUP)

 Routines:      j_add, j_borderpanel, j_button, j_canvas, j_checkbox, j_choice,
                j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getinheight, j_getinsets, j_getinwidth, j_getlayoutid,
                j_getparentid, j_getstringwidth, j_getwidth,
                j_getxpos, j_getypos, j_graphicbutton, j_graphiclabel, j_hide,
                j_hscrollbar, j_isparent, j_isvisible, j_keylistener, j_label,
                j_led, j_line, j_list, j_meter, j_mouselistener, j_pack,
                j_panel, j_popupmenu, j_print, j_progressbar, j_radiogroup,
                j_releaseall, j_release, j_scrollpane, j_setalign,
                j_setborderlayout, j_setborderpos, j_setcolorbg, j_setcolor,
                j_setcursor, j_setfixlayout, j_setflowfill, j_setflowlayout,
                j_setfocus, j_setfontname, j_setfont, j_setfontsize,
                j_setfontstyle, j_setgridlayout, j_sethgap, j_setinsets,
                j_setnamedcolorbg, j_setnamedcolor, j_setnolayout, j_setpos,
                j_setsize, j_setvgap, j_sevensegment, j_show, j_textarea,
                j_textfield, j_vscrollbar

 See Also:      n/a

 -----------------------------------<j_canvas>---------------------------------

 Syntax:        include japi.e
                i = j_canvas(integer obj, integer width, integer height)

 Description:   Creates a new canvas component with the given width and
                height and returns its event number. A canvas can be used for
                general drawing functions. A canvas generates an event, if its
                size changes. On error -1 will be returned.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       canvas = j_canvas(frame, 200, 50)
                j_setnamedcolorbg(canvas, J_RED)

 Routines:      j_add, j_cliprect, j_componentlistener, j_disable, j_dispose,
                j_drawarc, j_drawcircle, j_drawimage, j_drawimagesource,
                j_drawline, j_drawoval, j_drawpixel, j_drawpolygon,
                j_drawpolyline, j_drawrect, j_drawroundrect, j_drawscaleddimage,
                j_drawstring, j_enable, j_fillarc, j_fillcircle, j_filloval,
                j_fillpolygon, j_fillrect, j_fillroundrect, j_focuslistener,
                j_getfontascent, j_getfontheight, j_getheight, j_getimage,
                j_getimagesource, j_getparentid, j_getscaledimage,
                j_getstringwidth, j_getwidth, j_getxpos, j_getypos, j_hide,
                j_isparent, j_isvisible, j_keylistener, j_mouselistener,
                j_popupmenu, j_print, j_release, j_setborderpos, j_setcolorbg,
                j_setcolor, j_setcursor, j_setfocus, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setnamedcolorbg,
                j_setnamedcolor, j_setpos, j_setsize, j_setxor, j_show,
                j_translate

 Example Program: demo\japi\canvas.exw

 See Also:      n/a

 --------------------------------<j_checkbox>----------------------------------

 Syntax:        include japi.e
                i = j_checkbox(integer obj, sequence label)

 Description:   Creates a new checkbox component with the specified label and
                returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       frame = j_frame("j_checkbox")
                checkbox = j_checkbox(frame, "click me")

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getparentid, j_getstate, j_getstringwidth,
                j_gettext, j_getwidth, j_getxpos, j_getypos, j_hide,
                j_isparent, j_isvisible, j_keylistener, j_mouselistener,
                j_popupmenu, j_print, j_release, j_setborderpos, j_setcolorbg,
                j_setcolor, j_setcursor, j_setfocus, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setnamedcolorbg,
                j_setnamedcolor, j_setpos, j_setsize, j_setstate, j_settext,
                j_show

 Example Program: demo\japi\checkbox.exw

 See Also:      n/a

 ------------------------------<j_checkmenuitem>-------------------------------

 Syntax:        include japi.e
                i = j_checkmenuitem(integer obj, sequence label)

 Description:   creates a new checkmenuitem with the specified label and returns
                its event number.

 Targets:       j_menu, j_popupmenu, j_helpmenu

 Example:       menubar = j_menubar(frame)
                style = j_menu(menubar, "Style")
                bold = j_checkmenuitem(style, "Bold")
                italic = j_checkmenuitem(style, "Italic")

 Routines:      j_disable, j_dispose, j_enable, j_getlength, j_getstate,
                j_gettext, j_setfontname, _setfont, j_setfontsize,
                j_setfontstyle, j_setshortcut, j_setstate, j_settext

 Example Program: demo\japi\menu2.exw

 See Also:      j_menubar, j_menu, j_menuitem, j_helpmenu, j_seperator,
                j_setshortcut, j_disable, j_setfont, j_popupmenu, j_settext

 ---------------------------------<j_choice>-----------------------------------

 Syntax:        include japi.e
                i = j_choice(integer obj)

 Description:   Creates a new choice component and returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       choice = j_choice(frame)
                j_additem(choice, "Eintrag 1")
                j_additem(choice, "Eintrag 2")

 Routines:      j_additem, j_add, j_componentlistener, j_disable, j_dispose,
                j_enable, j_focuslistener, j_getfontascent, j_getfontheight,
                j_getheight, j_getitemcount, j_getitem, j_getparentid,
                j_getselect, j_getstringwidth, j_getwidth,
                j_getxpos, j_getypos, j_hide, j_insert, j_isparent, j_isvisible,
                j_keylistener, j_mouselistener, j_popupmenu, j_print,
                j_release, j_removeall, j_removeitem, j_remove, j_select,
                j_setborderpos, j_setcolorbg, j_setcolor, j_setcursor,
                j_setfocus, j_setfontname, j_setfont, j_setfontsize,
                j_setfontstyle, j_setnamedcolorbg, j_setnamedcolor, j_setpos,
                j_setsize, j_show

 Example Program: demo\japi\choice.exw

 See Also:      n/a

 ---------------------------------<j_dialog>-----------------------------------

 Syntax:        include japi.e
                i = j_dialog(integer obj, sequence label)

 Description:   Creates a new dialog window with the specified label and returns
                its event number.

 Targets:       j_frame

 Example:       dialog = j_dialog(frame, "j_dialog")
                j_setsize(dialog, 200, 80)
                j_show(dialog)

 Routines:      j_add, j_borderpanel, j_button, j_canvas, j_checkbox, j_choice,
                j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getinheight, j_getinsets, j_getinwidth, j_getlayoutid,
                j_getlength, j_getparentid, j_getstringwidth,
                j_gettext, j_getwidth, j_getxpos, j_getypos, j_graphicbutton,
                j_graphiclabel, j_hide, j_hscrollbar, j_isparent, j_isresizable,
                j_isvisible, j_keylistener, j_label, j_led, j_line, j_list,
                j_meter, j_mouselistener, j_pack, j_panel, j_popupmenu,
                j_print, j_progressbar, j_radiogroup, j_releaseall, j_release,
                j_scrollpane, j_setalign, j_setborderlayout, j_setborderpos,
                j_setcolorbg, j_setcolor, j_setcursor, j_setfixlayout,
                j_setflowfill, j_setflowlayout, j_setfocus, j_setfontname,
                j_setfont, j_setfontsize, j_setfontstyle, j_setgridlayout,
                j_sethgap, j_setinsets, j_setnamedcolorbg, j_setnamedcolor,
                j_setnolayout, j_setpos, j_setresizable, j_setsize, j_settext,
                j_setvgap, j_sevensegment, j_show, j_textarea, j_textfield,
                j_vscrollbar, j_windowlistener

 Example Program: demo\japi\dialog.exw

 See Also:      n/a

 -----------------------------<j_focuslistener>--------------------------------

 Syntax:        include japi.e
                i = j_focuslistener(integer obj)

 Description:   Adds a new focus listener to component obj, and returns its
                event number.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Routines:      j_dispose, j_hasfocus

 Example Program: demo\japi\focus.exw

 See Also:      j_mouselistener, j_keylistener, j_componentlistener,
                j_windowlistener

 ----------------------------------<j_frame>-----------------------------------

 Syntax:        include japi.e
                i = j_frame(sequence label)

 Description:   Creates a new frame component with the specified label and
                returns its event number.

 Example:       frame = j_frame("j_frame")
                j_show(frame)

 Routines:      j_add, j_alertbox, j_borderpanel, j_button, j_canvas,
                j_checkbox, j_choicebox2, j_choicebox3, j_choice,
                j_componentlistener, j_dialog, j_disable, j_dispose, j_enable,
                j_filedialog, j_fileselect, j_focuslistener, j_getfontascent,
                j_getfontheight, j_getheight, j_getinheight, j_getinsets,
                j_getinwidth, j_getlayoutid, j_getlength, j_getparentid,
                j_getstringwidth, j_gettext, j_getwidth,
                j_getxpos, j_getypos, j_graphicbutton, j_graphiclabel, j_hide,
                j_hscrollbar, j_isparent, j_isresizable, j_isvisible,
                j_keylistener, j_label, j_led, j_line, j_list, j_menubar,
                j_messagebox, j_meter, j_mouselistener, j_pack, j_panel,
                j_popupmenu, j_printer, j_print, j_progressbar, j_radiogroup,
                j_releaseall, j_release, j_scrollpane, j_setalign,
                j_setborderlayout, j_setborderpos, j_setcolorbg, j_setcolor,
                j_setcursor, j_setfixlayout, j_setflowfill, j_setflowlayout,
                j_setfocus, j_setfontname, j_setfont, j_setfontsize,
                j_setfontstyle, j_setgridlayout, j_sethgap, j_seticon,
                j_setinsets, j_setnamedcolorbg, j_setnamedcolor, j_setnolayout,
                j_setpos, j_setresizable, j_setsize, j_settext, j_setvgap,
                j_sevensegment, j_show, j_textarea, j_textfield, j_vscrollbar,
                j_windowlistener, j_window

 Example Program: demo\japi\simple.exw

 See Also:      j_panel, j_window

 ---------------------------------<j_helpmenu>---------------------------------

 Syntax:        include japi.e
                i = j_helpmenu(integer obj, sequence label)

 Description:   Creates a new helpmenu component with the specified label and
                returns its event number.

 Targets:       j_menubar

 Example:       frame = j_frame("j_menu Component")
                menubar = j_menubar(frame)
                file = j_menu(menubar, "File")
                help = j_helpmenu(menubar, "?")

 Routines:      j_checkmenuitem, j_disable, j_dispose, j_enable, j_getlength,
                j_gettext, j_menuitem, j_seperator, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setshortcut, j_settext

 Example Program: demo\japi\menu2.exw

 See Also:      j_menubar, j_menu, j_menuitem, j_seperator, j_setshortcut,
                j_checkmenuitem, j_disable, j_setfont, j_popupmenu

 -------------------------------<j_hscrollbar>---------------------------------

 Syntax:        include japi.e
                i = j_hscrollbar(integer obj)

 Description:   Creates a new horizontal scrollbar and returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame,
                j_scrollpane

 Example:       scroll = j_hscrollbar(frame)
                j_setpos(scroll, 20, 40)
                j_setsize(scroll, 150, 20)

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getparentid, j_getstringwidth, j_getvalue,
                j_getwidth, j_getxpos, j_getypos, j_hide, j_isparent,
                j_isvisible, j_keylistener, j_mouselistener, j_popupmenu,
                j_print, j_release, j_setblockinc, j_setborderpos, j_setcolorbg,
                j_setcolor, j_setcursor, j_setfocus, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setmax, j_setmin,
                j_setnamedcolorbg, j_setnamedcolor, j_setpos, j_setsize,
                j_setslidesize, j_setunitinc, j_setvalue, j_show

 Example Program: demo\japi\scrolbar.exw

 See Also:      n/a

 ------------------------------<j_graphicbutton>-------------------------------

 Syntax:        include japi.e
                i = j_graphicbutton(integer obj, sequence filename)

 Description:   Creates a new graphicbutton component with the image loaded
                from filename and returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       frame = j_frame("j_graphicbutton")
                button = j_graphicbutton(frame, "save.gif")

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getparentid, j_getstringwidth, j_getwidth,
                j_getxpos, j_getypos, j_hide, j_isparent, j_isvisible,
                j_keylistener, j_mouselistener, j_popupmenu, j_print, j_release,
                j_setborderpos, j_setcolorbg, j_setcolor, j_setcursor,
                j_setfocus, j_setfontname, j_setfont, j_setfontsize,
                j_setfontstyle, j_setimage, j_setnamedcolorbg, j_setnamedcolor,
                j_setpos, j_setsize, j_show

 Example Program: demo\japi\button2.exw

 See Also:      n/a

 ---------------------------<j_graphiclabel>-----------------------------------

 Syntax:        include japi.e
                i = j_graphiclabel(integer obj, sequence str)

 Description:   Creates a new graphiclabel component with the image loaded from
                filename and returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       frame = j_frame("j_graphiclabel")
                label = j_graphiclabel(frame, "new.gif")

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getparentid, j_getstringwidth, j_getwidth,
                j_getxpos, j_getypos, j_hide, j_isparent, j_isvisible,
                j_keylistener, j_mouselistener, j_popupmenu, j_print, j_release,
                j_setborderpos, j_setcolorbg, j_setcolor, j_setcursor,
                j_setfocus, j_setfontname, j_setfont, j_setfontsize,
                j_setfontstyle, j_setimage, j_setnamedcolorbg, j_setnamedcolor,
                j_setpos, j_setsize, j_show

 Example Program: demo\japi\label2.exw

 See Also:      n/a

 ---------------------------------<j_image>------------------------------------

 Syntax:        include japi.e
                i = j_image(integer width, integer height)

 Description:   Creates a new(memory) image component with the given width and
                height and returns its event number. The return value is the
                eventnumber of the image. On error -1 will be returned.

 Example:       image = j_image(200, 200)

 Routines:      j_cliprect, j_dispose, j_drawarc, j_drawcircle, j_drawimage,
                j_drawimagesource, j_drawline, j_drawoval, j_drawpixel,
                j_drawpolygon, j_drawpolyline, j_drawrect, j_drawroundrect,
                j_drawscaleddimage, j_drawstring, j_fillarc, j_fillcircle,
                j_filloval, j_fillpolygon, j_fillrect, j_fillroundrect,
                j_getheight, j_getimage, j_getimagesource, j_getscaledimage,
                j_getwidth, j_print, j_setxor, j_translate

 See Also:      n/a

 -----------------------------<j_keylistener>----------------------------------

 Syntax:        include japi.e
                i = j_keylistener(integer obj)

 Description:   Adds a new key listener to component obj, and returns its event
                number.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Routines:      j_dispose, j_getkeychar, j_getkeycode

 Example Program: demo\japi\key.exw

 See Also:      j_mouselistener, j_focuslistener, j_componentlistener,
                j_windowlistener

 ---------------------------------<j_label>------------------------------------

 Syntax:        include japi.e
                i = j_label(integer obj, sequence label)

 Description:   Creates a new label component with the specified label and
                returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       frame = j_frame("j_label")
                label = j_label(frame, "Hello World")

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getparentid, j_getstringwidth, j_gettext,
                j_getwidth, j_getxpos, j_getypos, j_hide, j_isparent,
                j_isvisible, j_keylistener, j_mouselistener, j_popupmenu,
                j_print, j_release, j_setborderpos, j_setcolorbg, j_setcolor,
                j_setcursor, j_setfocus, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setnamedcolorbg,
                j_setnamedcolor, j_setpos, j_setsize, j_settext, j_show

 See Also:      n/a

 ---------------------------------<j_led>--------------------------------------

 Syntax:        include japi.e
                i = j_led(integer obj, integer style, integer color)

 Description:   Creates a new led component and returns its event number. The
                LEDs shape could be round if style = J_ROUND or a rectangle if
                style = J_RECT. The color could be one of the predefined colors
                (eg. J_RED, J_GREEN).

                The following led style constants are defined in japi.e:

                        global constant
                                J_ROUND = 0,
                                J_RECT  = 1

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       led1 = j_led(frame, J_ROUND, J_RED)
                led2 = j_led(frame, J_RECT, J_BLUE)

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getparentid, j_getstate, j_getstringwidth,
                j_getwidth, j_getxpos, j_getypos, j_hide, j_isparent,
                j_isvisible, j_keylistener, j_mouselistener, j_popupmenu,
                j_print, j_release, j_setborderpos, j_setcolorbg, j_setcolor,
                j_setcursor, j_setfocus, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setnamedcolorbg,
                j_setnamedcolor, j_setpos, j_setsize, j_setstate, j_show

 See Also:      n/a

 ---------------------------------<j_list>-------------------------------------

 Syntax:        include japi.e
                i = j_list(integer obj, integer rows)

 Description:   Creates a new list component with the specified number of rows
                and returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       list = j_list(frame, 3)
                j_additem(list, "Eintrag 1")
                j_additem(list,"Eintrag 2")

 Routines:      j_additem, j_add, j_componentlistener, j_deselect, j_disable,
                j_dispose, j_enable, j_focuslistener, j_getfontascent,
                j_getfontheight, j_getheight, j_getitemcount, j_getitem,
                j_getparentid, j_getselect, j_getstringwidth,
                j_getwidth, j_getxpos, j_getypos, j_hide, j_insert, j_isparent,
                j_isselect, j_isvisible, j_keylistener, j_mouselistener,
                j_multiplemode, j_popupmenu, j_print, j_release, j_removeall,
                j_removeitem, j_remove, j_select, j_setborderpos, j_setcolorbg,
                j_setcolor, j_setcursor, j_setfocus, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setnamedcolorbg,
                j_setnamedcolor, j_setpos, j_setsize, j_show

 See Also:      n/a

 ---------------------------------<j_menu>-------------------------------------

 Syntax:        include japi.e
                i = j_menu(integer obj, sequence str)

 Description:   Creates a new menu component with the specified label and
                returns its event number.

 Targets:       j_menubar, j_menu

 Example:       frame = j_frame("j_menu Component")
                menubar = j_menubar(frame)
                file = j_menu(menubar, "File")
                quit = j_menuitem(file, "Quit")

 Routines:      j_checkmenuitem, j_disable, j_dispose, j_enable, j_getlength,
                j_gettext, j_helpmenu, j_menuitem, j_menu, j_seperator,
                j_setfontname, j_setfont, j_setfontsize, j_setfontstyle,
                j_setshortcut, j_settext

 Example Program: demo\japi\menu2.exw

 See Also:      j_menubar, j_menuitem, j_helpmenu, j_seperator, j_setshortcut,
                j_checkmenuitem, j_disable, j_setfont, j_popupmenu

 --------------------------------<j_menuitem>----------------------------------

 Syntax:        include japi.e
                i = j_menuitem(integer obj, sequence label)

 Description:   Creates a new menuitem with the specified label and returns its
                event number.

 Targets:       j_menu, j_popupmenu, j_helpmenu

 Example:       frame = j_frame("j_menu Component")
                menubar = j_menubar(frame)
                file = j_menu(menubar, "File")
                quit = j_menuitem(file, "Quit")

 Routines:      j_disable, j_dispose, j_enable, j_getlength, j_gettext,
                j_setfontname, j_setfont, j_setfontsize, j_setfontstyle,
                j_setshortcut, j_settext

 Example Program: demo\japi\menu2.exw

 See Also:      j_menubar, j_menu, j_helpmenu, j_seperator, j_setshortcut,
                j_checkmenuitem, j_disable, j_setfont, j_popupmenu

 ---------------------------------<j_meter>------------------------------------

 Syntax:        include japi.e
                i = j_meter(integer obj, sequence title)

 Description:   Creates a new pointer-instrument with the specified label title
                and returns its event number. The meter has predifiend values
                from 0 to 100. This can be canged via j_setmin() and j_setmax().
                A danger value is set to 80 and can be justified with
                j_setdanger().

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       meter = j_meter(frame, "Volt")
                j_setvalue(meter, 40)

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getdanger, j_getfontascent, j_getfontheight,
                j_getheight, j_getparentid, j_getstringwidth,
                j_getwidth, j_getxpos, j_getypos, j_hide, j_isparent,
                j_isvisible, j_keylistener, j_mouselistener, j_popupmenu,
                j_print, j_release, j_setborderpos, j_setcolorbg, j_setcolor,
                j_setcursor, j_setdanger, j_setfocus, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setmax, j_setmin,
                j_setnamedcolorbg, j_setnamedcolor, j_setpos, j_setsize,
                j_setvalue, j_show

 See Also:      n/a

 ----------------------------<j_mouselistener>---------------------------------

 Syntax:        include japi.e
                i = j_mouselistener(integer obj, integer kind)

 Description:   Adds a new mouse listener to component obj, and returns its
                event number. An event occures, if the user action is of kind
                kind. Possible values for kind are defined in japi.e:

                        global constant
                                J_MOVED       = 0,
                                J_DRAGGED     = 1,
                                J_PRESSED     = 2,
                                J_RELEASED    = 3,
                                J_ENTERERD    = 4,
                                J_EXITED      = 5,
                                J_DOUBLECLICK = 6

                - J_ENTERED
                  -- An event occures if the mouse cursor has been
                     moved into the component obj.

                - J_MOVED
                  -- An event occures if the mouse cursor has been
                     moved inside the component obj.

                - J_EXITED
                  -- An event occures if the mouse cursor has been
                     moved out of the component obj.

                - J_PRESSED
                  -- An event occures if a mouse button was pressed.

                - J_DRAGGED
                  -- An event occures if the mouse cursor has been dragged
                     (moved with pressed button) inside the component obj.

                - J_RELEASED
                  -- An event occures if a mouse button was released.

                - J_DOUBLECLICK
                  -- An event occures if a mouse button was doubleclicked.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example Program: demo\japi\mouse1.exw

 Routines:      j_dispose, j_getmousebutton, j_getmousex, j_getmousey

 See Also:      j_keylistener, j_focuslistener, j_componentlistener,
                j_windowlistener

 ----------------------------------<j_panel>-----------------------------------

 Syntax:        include japi.e
                i = j_panel(integer obj)

 Description:   Creates a new panel component and returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       panel = j_panel(frame)
                j_setnamedcolorbg(panel, J_WHITE)
                j_setpos(panel, 50, 30)
                label = j_label(panel, "This is the panel")
                j_setpos(label, 0, 0)

 Routines:      j_add, j_borderpanel, j_button, j_canvas, j_checkbox, j_choice,
                j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getinheight, j_getinsets, j_getinwidth, j_getlayoutid,
                j_getparentid, j_getstringwidth, j_getwidth,
                j_getxpos, j_getypos, j_graphicbutton, j_graphiclabel, j_hide,
                j_hscrollbar, j_isparent, j_isvisible, j_keylistener, j_label,
                j_led, j_line, j_list, j_meter, j_mouselistener, j_pack,
                j_panel, j_popupmenu, j_print, j_progressbar, j_radiogroup,
                j_releaseall, j_release, j_scrollpane, j_setalign,
                j_setborderlayout, j_setborderpos, j_setcolorbg, j_setcolor,
                j_setcursor, j_setfixlayout, j_setflowfill, j_setflowlayout,
                j_setfocus, j_setfontname, j_setfont, j_setfontsize,
                j_setfontstyle, j_setgridlayout, j_sethgap, j_setinsets,
                j_setnamedcolorbg, j_setnamedcolor, j_setnolayout, j_setpos,
                j_setsize, j_setvgap, j_sevensegment, j_show, j_textarea,
                j_textfield, j_vscrollbar

 Example Program: demo\japi\panel.exw

 See Also:      n/a

 ---------------------------------<j_popupmenu>--------------------------------

 Syntax:        include japi.e
                i = j_popupmenu(integer obj, sequence label)

 Description:   Creates a new popupmenu with the specified label and returns
                its event number.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       choose = j_popupmenu(frame, "Choose")
                close = j_menuitem(choose, "Close")
                quit = j_menuitem(choose, "Quit")
                j_showpopup(choose, 100, 100)

 Routines:      j_checkmenuitem, j_disable, j_dispose, j_enable, j_getlength,
                j_gettext, j_menuitem, j_seperator, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setshortcut, j_settext,
                j_showpopup

 Example Program: demo\japi\menu3.exw

 See Also:      j_menubar, j_menu, j_menuitem, j_helpmenu, j_seperator,
                j_setshortcut, j_checkmenuitem, j_disable, j_setfont, j_settext

 ---------------------------------<j_printer>----------------------------------

 Syntax:        include japi.e
                i = j_printer(integer frame)

 Description:   Creates a new object, representing a paper of the printer and
                returns its event number. On error -1 will be returned. A
                printer object can be used like a canvas, where all drawing
                functions will be passed to the printer, instead of a window.
                A printer generates no event.

 Targets:       j_frame

 Example:       printer = j_printer(frame)
                j_drawimage(printer, image, 100, 100)

 Routines:      j_cliprect, j_dispose, j_drawarc, j_drawcircle, j_drawimage,
                j_drawimagesource, j_drawline, j_drawoval, j_drawpixel,
                j_drawpolygon, j_drawpolyline, j_drawrect, j_drawroundrect,
                j_drawscaleddimage, j_drawstring, j_fillarc, j_fillcircle,
                j_filloval, j_fillpolygon, j_fillrect, j_fillroundrect, j_print,
                j_setxor, j_translate

 Example Program: demo\japi\print.exw

 See Also:      n/a

 ---------------------------------<j_progressbar>------------------------------

 Syntax:        include japi.e
                i = j_progressbar(integer obj, integer orient)

 Description:   Creates a new progressbar with the specified orientation and
                returns its event number. Orientation could be J_HORIZONTAL or
                J_VERTICAL. The progressbar has predifiend values from 0 to 100.
                This can be canged via j_setmin() and j_setmax().

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       progress = j_progressbar(frame, J_HORIZONTAL)
                j_setvalue(progress, 90)

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getparentid, j_getstringwidth, j_getwidth,
                j_getxpos, j_getypos, j_hide, j_isparent, j_isvisible,
                j_keylistener, j_mouselistener, j_popupmenu, j_print, j_release,
                j_setborderpos, j_setcolorbg, j_setcolor, j_setcursor,
                j_setfocus, j_setfontname, j_setfont, j_setfontsize,
                j_setfontstyle, j_setnamedcolorbg, j_setnamedcolor, j_setpos,
                j_setsize, j_show

 See Also:      n/a

 ---------------------------------<j_radiobutton>------------------------------

 Syntax:        include japi.e
                i = j_radiobutton(integer obj, sequence label)

 Description:   Creates a new radiobutton with the specified label and returns
                its event number.

 Targets:       j_radiogroup

 Example:       radiogroup = j_radiogroup(frame)
                radio1 = j_radiobutton(radiogroup, "j_radiobutton 1")
                radio2 = j_radiobutton(radiogroup, "j_radiobutton 2")

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getparentid, j_getstate, j_getstringwidth,
                j_gettext, j_getwidth, j_getxpos, j_getypos, j_hide,
                j_isparent, j_isvisible, j_keylistener, j_mouselistener,
                j_popupmenu, j_print, j_release, j_setborderpos, j_setcolorbg,
                j_setcolor, j_setcursor, j_setfocus, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setnamedcolorbg,
                j_setnamedcolor, j_setpos, j_setradiogroup, j_setsize,
                j_setstate, j_settext, j_show

 See Also:      n/a

 ---------------------------------<j_sevensegment>-----------------------------

 Syntax:        include japi.e
                i = j_sevensegment(integer obj, integer color)

 Description:   Creates a new sevensegment display and returns its event number.
                The color could be one of the predefined colors(eg. J_RED,
                J_GREEN).

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       seven = j_sevensegment(frame, J_GREEN)
                j_setvalue(seven, 5)

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getparentid, j_getstringwidth, j_getwidth,
                j_getxpos, j_getypos, j_hide, j_isparent, j_isvisible,
                j_keylistener, j_mouselistener, j_popupmenu, j_print, j_release,
                j_setborderpos, j_setcolorbg, j_setcolor, j_setcursor,
                j_setfocus, j_setfontname, j_setfont, j_setfontsize,
                j_setfontstyle, j_setnamedcolorbg, j_setnamedcolor, j_setpos,
                j_setsize, j_setvalue, j_show

 See Also:      n/a

 ---------------------------------<j_scrollpane>-------------------------------

 Syntax:        include japi.e
                i = j_scrollpane(integer obj)

 Description:   Creates a new scrollpane component and returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       scrollpane = j_scrollpane(frame)
                image = j_graphiclabel(scrollpane, "mandel.gif")
                j_setsize(scrollpane, 240, 100)

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getparentid, j_getstringwidth,
                j_getviewportheight, j_getviewportwidth, j_getwidth, j_getxpos,
                j_getypos, j_hide, j_hscrollbar, j_isparent, j_isvisible,
                j_keylistener, j_mouselistener, j_popupmenu, j_print,
                j_release, j_setborderpos, j_setcolorbg, j_setcolor,
                j_setcursor, j_setfocus, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setnamedcolorbg,
                j_setnamedcolor, j_setpos, j_setsize, j_show, j_vscrollbar

 See Also:      n/a

 ---------------------------------<j_textarea>---------------------------------

 Syntax:        include japi.e
                i = j_textarea(integer obj, integer rows, integer columns)

 Description:   Creates a new textarea component with the specified number of
                rows columns and returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       frame = j_frame("j_textarea")
                text = j_textarea(frame, 30, 4)

 Routines:      j_add, j_appendtext, j_componentlistener, j_delete, j_disable,
                j_dispose, j_enable, j_focuslistener, j_getcolumns, j_getcurpos,
                j_getfontascent, j_getfontheight, j_getheight, j_getlength,
                j_getparentid, j_getrows, j_getselend,
                j_getselstart, j_getseltext, j_getstringwidth, j_gettext,
                j_getwidth, j_getxpos, j_getypos, j_hide, j_inserttext,
                j_isparent, j_isvisible, j_keylistener, j_mouselistener,
                j_popupmenu, j_print, j_release, j_replacetext, j_selectall,
                j_selecttext, j_setborderpos, j_setcolorbg, j_setcolor,
                j_setcolumns, j_setcurpos, j_setcursor, j_seteditable,
                j_setfocus, j_setfontname, j_setfont, j_setfontsize,
                j_setfontstyle, j_setnamedcolorbg, j_setnamedcolor, j_setpos,
                j_setrows, j_setsize, j_settext, j_show

 See Also:      n/a

 ---------------------------------<j_textfield>--------------------------------

 Syntax:        include japi.e
                i = j_textfield(integer obj, integer columns)

 Description:   Creates a new textfield component with the specified number of
                columns and returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       frame = j_frame("j_textfield")
                text = j_textfield(frame, 30)

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getcolumns, j_getcurpos, j_getfontascent,
                j_getfontheight, j_getheight, j_getlength, j_getparentid,
                j_getselend, j_getselstart, j_getseltext,
                j_getstringwidth, j_gettext, j_getwidth, j_getxpos, j_getypos,
                j_hide, j_isparent, j_isvisible, j_keylistener, j_mouselistener,
                j_popupmenu, j_print, j_release, j_selectall, j_selecttext,
                j_setborderpos, j_setcolorbg, j_setcolor, j_setcolumns,
                j_setcurpos, j_setcursor, j_setechochar, j_seteditable,
                j_setfocus, j_setfontname, j_setfont, j_setfontsize,
                j_setfontstyle, j_setnamedcolorbg, j_setnamedcolor, j_setpos,
                j_setsize, j_settext, j_show

 See Also:      n/a

 ---------------------------------<j_vscrollbar>-------------------------------

 Syntax:        include japi.e
                i = j_vscrollbar(integer obj)

 Description:   Creates a new vertical scrollbar and returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame,
                j_scrollpane

 Example:       scroll = j_vscrollbar(frame)
                j_setpos(scroll, 120, 40)
                j_setsize(scroll, 20, 100)

 Routines:      j_add, j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getparentid, j_getstringwidth, j_getvalue,
                j_getwidth, j_getxpos, j_getypos, j_hide, j_isparent,
                j_isvisible, j_keylistener, j_mouselistener, j_popupmenu,
                j_print, j_release, j_setblockinc, j_setborderpos, j_setcolorbg,
                j_setcolor, j_setcursor, j_setfocus, j_setfontname, j_setfont,
                j_setfontsize, j_setfontstyle, j_setmax, j_setmin,
                j_setnamedcolorbg, j_setnamedcolor, j_setpos, j_setsize,
                j_setslidesize, j_setunitinc, j_setvalue, j_show

 See Also:      n/a

 ---------------------------------<j_window>-----------------------------------

 Syntax:        include japi.e
                i = j_window(integer obj)

 Description:   Creates a new simple window and returns its event number.

 Targets:       j_frame

 Example:       window = j_window(frame)
                label = j_label(window, "Mouse pressed at ... ")
                j_setnamedcolorbg(label, J_YELLOW)

 Routines:      j_add, j_borderpanel, j_button, j_canvas, j_checkbox, j_choice,
                j_componentlistener, j_disable, j_dispose, j_enable,
                j_focuslistener, j_getfontascent, j_getfontheight, j_getheight,
                j_getinheight, j_getinsets, j_getinwidth, j_getlayoutid,
                j_getparentid, j_getstringwidth, j_getwidth,
                j_getxpos, j_getypos, j_graphicbutton, j_graphiclabel, j_hide,
                j_hscrollbar, j_isparent, j_isvisible, j_keylistener, j_label,
                j_led, j_line, j_list, j_meter, j_mouselistener, j_pack,
                j_panel, j_popupmenu, j_print, j_progressbar, j_radiogroup,
                j_releaseall, j_release, j_scrollpane, j_setalign,
                j_setborderlayout, j_setborderpos, j_setcolorbg, j_setcolor,
                j_setcursor, j_setfixlayout, j_setflowfill, j_setflowlayout,
                j_setfocus, j_setfontname, j_setfont, j_setfontsize,
                j_setfontstyle, j_setgridlayout, j_sethgap, j_setinsets,
                j_setnamedcolorbg, j_setnamedcolor, j_setnolayout, j_setpos,
                j_setsize, j_setvgap, j_sevensegment, j_show, j_textarea,
                j_textfield, j_vscrollbar, j_windowlistener

 See Also:      n/a

 ------------------------------------------------------------------------------



-Routines
 ========

 These are the routines that you can use to manipulate a component.

 ---------------------------------<j_additem>----------------------------------

 Syntax:        include japi.e
                j_additem(integer obj, sequence str)

 Description:   adds a new item containing str to component obj.

 Targets:       j_list, j_choice

 Example:       list = j_list(frame,3)
                j_additem(list,"Eintrag 1")
                j_additem(list,"Eintrag 2")

 Example Program: demo\japi\list1.exw

 See Also:      j_getselect, j_select, j_deselect, j_isselect, j_multiplemode,
                j_setnamedcolor

 ---------------------------------<j_add>--------------------------------------

 Syntax:        include japi.e
                j_add(integer obj, integer cont)

 Description:   Adds component obj to container cont

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_alertbox>---------------------------------

 Syntax:        include japi.e
                j_alertbox(integer obj, sequence title, sequence text,
                                                        sequence button)

 Description:   Shows a alertbox with the specified title, text and button.
                Alert-boxes are modal dialogs, the application is blocked until
                the button or the closeicon is clicked. The return value is 0 if
                the closeicon is clicked and 1 if the buttons is used.

 Targets:       j_frame

 Example:       retval =
                  j_alertbox(frame, "Info", "You won't do that !", "   No   ")

 Example Program: demo\japi\alert.exw

 See Also:      j_choicebox2, j_choicebox3, j_messagebox

 -----------------------------<j_appendtext>-----------------------------------

 Syntax:        include japi.e
                j_appendtext(integer obj, sequence text)

 Description:   Appends the given text to the obj current text.

 Targets:       j_textarea

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_beep>-------------------------------------

 Syntax:        include japi.e
                j_beep()

 Description:   Emits an audio beep.

 Example:       n/a

 See Also:      n/a

 --------------------------------<j_centerframe>-------------------------------

 Syntax:        include japi.e
                j_centerframe(integer obj)

 Description:   Position the frame of obj in the middle of the screen.
                (routine added by Shian).

 Targets:       j_frame (or any object within a j_frame)

 Example:       frame = j_frame("test")
                label = j_label(frame, "*Euphoria*")
                j_setpos(label, 50, 90)
                j_centerframe(label)

 See Also:      j_getscreenwidth, j_getscreenheight, j_getwidth

 ---------------------------------<j_choicebox2>-------------------------------

 Syntax:        include japi.e
                j_choicebox2(integer obj, sequence title, sequence text,
                                        sequence button1, sequence button2)

 Description:   Shows a choicebox with the specified title, text and two
                buttons. Choiceboxes are modal dialogs, the application is
                blocked until a button or the closeicon is clicked. The focus is
                set to the first button. The return value is 0 if the closeicon
                is clicked, 1 for the first button and 2 for the second one.

 Targets:       j_frame

 Example:       retval = j_choicebox2(frame, "Unstable System",
                                        "Restart the computer ?", " Yes ","No")

 Example Program: demo\japi\alert.exw

 See Also:      j_choicebox3, j_alertbox, j_messagebox

 ---------------------------------<j_choicebox3>-------------------------------

 Syntax:        include japi.e
                j_choicebox3(integer obj, sequence title, sequence text,
                        sequence button1, sequence button2, sequence button3)

 Description:   Shows a choicebox with the specified title, text and three
                buttons. Choiceboxes are modal dialogs, the application is
                blocked until a button or the closeicon is clicked. The focus is
                set to the first button. The return value is 0 if the closeicon
                is clicked, 1 for the first button, 2 for the second and 3 for
                the third one.

 Targets:       j_frame

 Example:       retval = j_choicebox3(frame, "Viruswarning ?", "I love you",
                                          "Ups", "Arrrg", "Cancel")

 Example Program: demo\japi\alert.exw

 See Also:      j_choicebox2, j_alertbox, j_messagebox

 ---------------------------------<j_cliprect>---------------------------------

 Syntax:        include japi.e
                j_cliprect(integer obj, integer x, integer y,
                                        integer width, integer height)

 Description:   Changes current clipping region to the specified
                rectangle(x, y, width, height).

 Targets:       j_canvas, j_image, j_printer

 Example:       n/a

 See Also:      n/a

 -----------------------------<j_componentlistener>----------------------------

 Syntax:        include japi.e
                i = j_componentlistener(integer obj, integer kind)

 Description:   Adds a new componentlistener to component obj, and returns its
                event number. An event occures, if the user action is of kind
                kind. Possible values for kind are defined in japi.e:

                        global constant
                                J_RESIZED = 1,
                                J_HIDDEN  = 2,
                                J_SHOWN   = 3

                - J_RESIZED
                  -- An event occures when the component has been resized.

                - J_HIDDEN
                  -- An event occures when the component has been hidden.

                - J_SHOWN
                  -- An event occures when the component has been shown.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       n/a

 See Also:      j_mouselistener, j_keylistener, j_focuslistener,
                j_windowlistener

 ---------------------------------<j_connect>----------------------------------

 Syntax:        include japi.e
                i = j_connect(sequence hostname)

 Description:   Connects a running japi kernel on host hostname.

 Example:       if j_connect("atan.japi.de") = J_FALSE then
                -- or...
                if j_connect("127.0.0.1") = J_FALSE then

 See Also:      n/a

 ---------------------------------<j_delete>-----------------------------------

 Syntax:        include japi.e
                j_delete(integer obj, integer start, integer end)

 Description:   Delets text from starting position start to ending position end.

 Targets:       j_textarea

 Example Program: demo\japi\text1.exw

 See Also:      j_replacetext, j_getcurpos, j_selecttext, j_settext

 ---------------------------------<j_deselect>---------------------------------

 Syntax:        include japi.e
                i = j_deselect(integer obj, integer item)

 Description:   Deselects the item at the designated position item, if selected.

 Targets:       j_list

 Example Program: demo\japi\list1.exw

 See Also:      j_additem, j_getselect, j_select, j_isselect, j_multiplemode

 ---------------------------------<j_disable>----------------------------------

 Syntax:        include japi.e
                j_disable(integer obj)

 Description:   Disables component obj so that it is unresponsive to user
                interactions.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment, j_menuitem, j_menu,
                j_helpmenu, j_popupmenu

 Example Program: demo\japi\radiobtn.exw

 See Also:      j_enable, j_getstate, j_hide, j_dispose

 ---------------------------------<j_dispose>----------------------------------

 Syntax:        include japi.e
                j_dispose(integer obj)

 Description:   Releases the resources of the component obj.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment, j_image, j_printer,
                j_keylistener, j_focuslistener, j_mouselistener

 Example Program: demo\japi\alert.exw

 See Also:      j_hide, j_disable

 ---------------------------------<j_drawarc>----------------------------------

 Syntax:        include japi.e
                j_drawarc(integer obj, integer x, integer y,
                                        integer rx, integer ry,
                                        integer arc1, integer arc2)

 Description:   Draws an unfilled arc from angle arc1 to angle arc2 with the
                center(x, y) and the horizontal radius rx and the vertical
                radius ry.

 Targets:       j_canvas, j_image, j_printer

 Example:       canvas = j_canvas(frame, 200, 100)
                j_drawarc(canvas, 100, 50, 80, 40, 45, -270)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_drawline, j_drawpolygon,
                j_drawrect, j_drawroundrect, j_drawcircle, j_drawoval,
                j_drawpolyline, j_fillpolygon, j_fillrect, j_fillroundrect,
                j_fillcircle, j_filloval, j_fillarc, j_drawpixel, j_setxor

 ---------------------------------<j_drawcircle>-------------------------------

 Syntax:        include japi.e
                j_drawcircle(integer obj, integer x, integer y, integer r)

 Description:   Draws an unfilled circle with center(x, y) and radius x.

 Targets:       j_canvas, j_image, j_printer

 Example:       canvas = j_canvas(frame, 200, 100)
                j_drawcircle(canvas, 100, 50, 40)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_drawline, j_drawpolygon,
                j_drawrect, j_drawroundrect, j_drawoval, j_drawarc,
                j_drawpolyline, j_fillpolygon, j_fillrect, j_fillroundrect,
                j_fillcircle, j_filloval, j_fillarc, j_drawpixel, j_setxor

 ------------------------------<j_drawimagesource>-----------------------------

 Syntax:        include japi.e
                j_drawimagesource(integer obj, integer x, integer y,
                                        integer w, integer h,
                                        sequence r, sequence g, sequence b)

 Description:   Paints an image at Position(x, y,) with width and height. The
                red, green and blue values of each pixel are given by the arrays
                r, g, b.

 Targets:       j_canvas, j_image, j_printer

 Example Program: demo\japi\image1.exw

 See Also:      j_setimage, j_drawimage, j_loadimage, j_getimagesource,
                j_getwidth, j_drawscaledimage, j_getscaledimage, j_seticon,
                j_drawpixel, j_setxor

 ---------------------------------<j_drawimage>--------------------------------

 Syntax:        include japi.e
                j_drawimage(integer obj, integer image, integer x, integer y)

 Description:   Copies the image, given by its eventnumber image, to position
                (x, y).

 Targets:       j_canvas, j_image, j_printer

 Example Program: demo\japi\image1.exw

 See Also:      j_setimage, j_loadimage, j_getimagesource, j_drawimagesource,
                j_getwidth, j_drawscaledimage, j_getscaledimage, j_seticon,
                j_drawpixel, j_setxor

 ---------------------------------<j_drawline>---------------------------------

 Syntax:        include japi.e
                j_drawline(integer obj, integer x1, integer y1,
                                        integer x2, integer y2)

 Description:   Draws a line connecting (x1, y1) and (x2, y2).

 Targets:       j_canvas, j_image, j_printer

 Example:       canvas = j_canvas(frame, 256, 50)
                j_drawline(canvas, 0, 0, 256, 50)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_drawpolygon, j_drawrect,
                j_drawroundrect, j_drawcircle, j_drawoval, j_drawarc,
                j_drawpolyline, j_fillpolygon, j_fillrect, j_fillroundrect,
                j_fillcircle, j_filloval, j_fillarc, j_line, j_drawpixel,
                j_setxor

 ---------------------------------<j_drawoval>---------------------------------

 Syntax:        include japi.e
                j_drawoval(integer obj, integer x, integer y,
                                        integer rx, integer ry)

 Description:   Draws an unfilled oval with the center (x, y) and the horizontal
                radius rx and the vertical radius ry.

 Targets:       j_canvas, j_image, j_printer

 Example:       canvas = j_canvas(frame, 200, 100)
                j_drawoval(canvas, 100, 50, 80, 40)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_drawline, j_drawpolygon,
                j_drawrect, j_drawroundrect, j_drawcircle, j_drawarc,
                j_drawpolyline, j_fillpolygon, j_fillrect, j_fillroundrect,
                j_fillcircle, j_filloval, j_fillarc, j_drawpixel, j_setxor

 ---------------------------------<j_drawpixel>--------------------------------

 Syntax:        include japi.e
                j_drawpixel(integer obj, integer x, integer y)

 Description:   Draws a pixel at (x, y).

 Targets:       j_canvas, j_image, j_printer

 Example:       canvas = j_canvas(frame, 256, 50)
                for i = 0 to 1000 do
                  j_drawpixel(canvas, mod(j_random(), 256), mod(j_random(), 50))
                end for

 See Also:      j_translate, j_drawstring, j_drawline, j_drawpolygon,
                j_drawrect, j_drawroundrect, j_drawcircle, j_drawarc,
                j_drawpolyline, j_fillpolygon, j_fillrect, j_fillroundrect,
                j_fillcircle, j_filloval, j_fillarc, j_setxor

 ---------------------------------<j_drawpolygon>------------------------------

 Syntax:        include japi.e
                j_drawpolygon(integer obj, integer len, sequence x, sequence y)

 Description:   Draws an unfilled polygon based on first len elements in x and
                y.

 Targets:       j_canvas, j_image, j_printer

 Example:       x = {20,40,60,80,100,120,140,160,180,200}
                y = {10,40,10,40, 10, 40, 10, 40, 10, 40}
                canvas = j_canvas(frame, 256, 50)
                j_drawpolygon(canvas, 10, x, y)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_drawline, j_drawrect,
                j_drawroundrect, j_drawcircle, j_drawoval, j_drawarc,
                j_drawpolyline, j_fillpolygon, j_fillrect, j_fillroundrect,
                j_fillcircle, j_filloval, j_fillarc, j_drawpixel, j_setxor

 ---------------------------------<j_drawpolyline>-----------------------------

 Syntax:        include japi.e
                j_drawpolyline(integer obj, integer len, sequence x, sequence y)

 Description:   Draws a series of line segments based on first len elements in x
                and y.

 Targets:       j_canvas, j_image, j_printer

 Example:       x = {20,40,60,80,100,120,140,160,180,200}
                y = {10,40,10,40, 10, 40, 10, 40, 10, 40}
                canvas = j_canvas(frame, 256, 50)
                j_drawpolyline(canvas, 10, x, y)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_drawline, j_drawpolygon,
                j_drawrect, j_drawroundrect, j_drawcircle, j_drawoval,
                j_drawarc, j_fillpolygon, j_fillrect, j_fillroundrect,
                j_fillcircle, j_filloval, j_fillarc, j_drawpixel, j_setxor

 ---------------------------------<j_drawrect>---------------------------------

 Syntax:        include japi.e
                j_drawrect(integer obj, integer x, integer y,
                                        integer width, integer height)

 Description:   Draws an unfilled rectangle from (x, y) of size width x height.

 Targets:       j_canvas, j_image, j_printer

 Example:       canvas = j_canvas(frame, 220, 50)
                j_drawrect(canvas, 20, 10, 180, 30)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_drawline, j_drawpolygon,
                j_drawroundrect, j_drawcircle, j_drawoval, j_drawarc,
                j_drawpolyline, j_fillpolygon, j_fillrect, j_fillroundrect,
                j_fillcircle, j_filloval, j_fillarc, j_drawpixel, j_setxor

 ---------------------------------<j_drawroundrect>----------------------------

 Syntax:        include japi.e
                j_drawroundrect(integer obj, integer x, integer y,
                                        integer width, integer height,
                                        integer arcx, integer arcy)

 Description:   Draws an unfilled rectangle from (x, y) of size width x height
                with rounded corners. arcx and arcy specify the radius of
                rectangle corners.

 Targets:       j_canvas, j_image, j_printer

 Example:       canvas = j_canvas(frame, 220, 50)
                j_drawroundrect(canvas, 20, 10, 180, 30, 10, 5)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_drawline, j_drawpolygon,
                j_drawrect, j_drawcircle, j_drawoval, j_drawarc,
                j_drawpolyline, j_fillpolygon, j_fillrect, j_fillroundrect,
                j_fillcircle, j_filloval, j_fillarc, j_drawpixel, j_setxor

 -----------------------------<j_drawscaledimage>------------------------------

 Syntax:        include japi.e
                j_drawscaleddimage(integer obj, integer image,
                        integer sx, integer sy, integer sw, integer sh,
                        integer tx, integer ty, integer tw, integer th)

 Description:   Copy the contents of the rectangular area defined by x, y,
                width sw, and height sh of the image to position tx, ty. The
                area will be scaled to target width th and target height th.

 Targets:       j_canvas, j_image, j_printer

 Example Program: demo\japi\image2.exw

 See Also:      j_getscaledimage, j_setimage, j_drawimage, j_loadimage,
                j_getimagesource, j_drawimagesource, j_getwidth, j_seticon,
                j_drawpixel, j_setxor

 ---------------------------------<j_drawstring>-------------------------------

 Syntax:        include japi.e
                j_drawstring(integer obj, integer x, integer y, sequence str)

 Description:   Draws text on screen at position (x, y).

 Targets:       j_canvas, j_image, j_printer

 Example:       j_drawstring(canvas, 100, 50, "Hello World")

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawline, j_drawpixel, j_setxor

 ---------------------------------<j_enable>-----------------------------------

 Syntax:        include japi.e
                j_enable(integer obj)

 Description:   enables the component obj.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment, j_menuitem, j_menu,
                j_helpmenu, j_popupmenu

 Example Program: demo\japi\radiobtn.exw

 See Also:      j_disable, j_getstate, j_show

 ---------------------------------<j_filedialog>-------------------------------

 Syntax:        include japi.e
                s = j_filedialog(integer frame, sequence title,
                                                        sequence directory)

 Description:   Opens a filedialog box in the specified directory with the
                specified title and returns the selected filename. If title
                contains "/S" the SAVE-filedialog will be called. The substring
                "/S" will be removed.

 Targets:       j_frame

 Example:       filename = j_filedialog(frame, "Save/S File", "..")

 Example Program: demo\japi\file.exw

 See Also:      j_fileselect

 ---------------------------------<j_fileselect>-------------------------------

 Syntax:        include japi.e
                s = j_fileselect(integer frame, sequence title, sequence filter)

 Description:   Opens a fileslector box with the preselected filename and the
                specified title and returns the selected filename. filter
                specifies the Filename Filter. A Fileselector can be used with
                output redirections via j_connect().

 Targets:       j_frame

 Example:       filename = j_fileselect(frame, "Open File", "*")

 See Also:      j_filedialog

 ---------------------------------<j_fillarc>----------------------------------

 Syntax:        include japi.e
                j_fillarc(integer obj, integer x, integer y,
                                        integer rx, integer ry,
                                        integer arc1, integer arc2)

 Description:   Draws an filled arc from angle arc1 to angle arc2 with the
                center (x, y) and the horizontal radius rx and the vertical
                radius ry.

 Targets:       j_canvas, j_image, j_printer

 Example:       canvas = j_canvas(frame, 200, 100)
                j_fillarc(canvas, 100, 50, 80, 40, 45, -270)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_fillpolygon, j_fillroundrect,
                j_fillcircle, j_filloval, j_fillarc, j_drawline, j_drawpolygon,
                j_drawrect, j_drawroundrect, j_drawcircle, j_drawoval,
                j_drawarc, j_drawpolyline, j_drawpixel, j_setxor

 ---------------------------------<j_fillcircle>-------------------------------

 Syntax:        include japi.e
                j_fillcircle(integer obj, integer x, integer y, integer r)

 Description:   Draws an filled circle with center (x, y) and radius x.

 Targets:       j_canvas, j_image, j_printer

 Example:       canvas = j_canvas(frame, 200, 100)
                j_fillcircle(canvas, 100, 50, 40)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_fillpolygon, j_fillrect,
                j_fillroundrect, j_filloval, j_fillarc, j_drawline,
                j_drawpolygon, j_drawrect, j_drawroundrect, j_drawpixel,
                j_setxor, j_drawcircle, j_drawoval, j_drawarc, j_drawpolyline

 ---------------------------------<j_filloval>---------------------------------

 Syntax:        include japi.e
                j_filloval(integer obj, integer x, integer y,
                                        integer rx, integer ry)

 Description:   Draws an filled oval with the center (x, y) and the horizontal
                radius rx and the vertical radius ry.

 Targets:       j_canvas, j_image, j_printer

 Example:       canvas = j_canvas(frame, 200, 100)
                j_filloval(canvas, 100, 50, 80, 40)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_fillpolygon, j_fillrect,
                j_fillroundrect, j_fillcircle, j_fillarc, j_drawline,
                j_drawpolygon, j_drawrect, j_drawroundrect, j_drawpixel,
                j_setxor, j_drawcircle, j_drawoval, j_drawarc, j_drawpolyline

 ---------------------------------<j_fillpolygon>------------------------------

 Syntax:        include japi.e
                j_fillpolygon(integer obj, integer len, sequence x, sequence y)

 Description:   Draws an filled polygon based on first len elements in x and y.

 Targets:       j_canvas, j_image, j_printer

 Example:       x = {20,40,60,80,100,120,140,160,180,200}
                y = {10,40,10,40, 10, 40, 10, 40, 10, 40}
                canvas = j_canvas(frame, 256, 50)
                j_fillpolygon(canvas, 10, x, y)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_fillrect, j_fillroundrect,
                j_fillcircle, j_filloval, j_fillarc, j_drawline, j_drawpolygon,
                j_drawrect, j_drawroundrect, j_drawcircle, j_drawoval,
                j_drawarc, j_drawpolyline, j_drawpixel, j_setxor

 ---------------------------------<j_fillrect>---------------------------------

 Syntax:        include japi.e
                j_fillrect(integer obj, integer x, integer y,
                                        integer width, integer height)

 Description:   Draws an filled rectangle from (x, y) of size width x height.

 Targets:       j_canvas, j_image, j_printer

 Example:       canvas = j_canvas(frame, 220, 50)
                j_fillrect(canvas, 20, 10, 180, 30)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_fillpolygon, j_fillroundrect,
                j_fillcircle, j_filloval, j_fillarc, j_drawline, j_drawpolygon,
                j_drawrect, j_drawroundrect, j_drawcircle, j_drawoval,
                j_drawarc, j_drawpolyline, j_drawpixel, j_setxor

 --------------------------------<j_fillroundrect>-----------------------------

 Syntax:        include japi.e
                j_fillroundrect(integer obj, integer x, integer y,
                                        integer width, integer height,
                                        integer arcx, integer arcy)

 Description:   Draws an filled rectangle from (x, y) of size width x height
                with rounded corners. arcx and arcy specify the radius of
                rectangle corners.

 Targets:       j_canvas, j_image, j_printer

 Example:       canvas = j_canvas(frame, 220, 50)
                j_fillroundrect(canvas, 20, 10, 180, 30, 10, 5)

 Example Program: demo\japi\graphic.exw

 See Also:      j_translate, j_drawstring, j_fillpolygon, j_fillrect,
                j_fillcircle, j_filloval, j_fillarc, j_drawline, j_drawpolygon,
                j_drawrect, j_drawroundrect, j_drawcircle, j_drawoval,
                j_drawarc, j_drawpolyline, j_drawpixel, j_setxor

 ---------------------------------<j_getaction>--------------------------------

 Syntax:        include japi.e
                i = j_getaction()

 Description:   returns the next event, or 0 if no event available.

 Example Program: demo\japi\label1.exw

 See Also:      j_nextaction

 ---------------------------------<j_getcolumns>-------------------------------

 Syntax:        include japi.e
                j_getcolumns(integer obj)

 Description:   Gets the number of columns in obj.

 Targets:       j_textarea, j_textfield, j_gridlayout

 Example:       text = j_text(frame, 30, 4)
                j_getcolumns(text)  --> 30

 See Also:      j_getrows, j_getstringwidth, j_getfontheight

 ---------------------------------<j_getcurpos>--------------------------------

 Syntax:        include japi.e
                i = j_getcurpos(integer obj)

 Description:   Returns the position, in characters, of the text cursor.

 Targets:       j_textarea, j_textfield

 Example Program: demo\japi\text1.exw

 See Also:      j_setcurpos, j_getselstart, j_getlength

 ---------------------------------<j_getdanger>--------------------------------

 Syntax:        include japi.e
                j_getdanger(integer obj)

 Description:   Returns the danger value of component obj.

 Targets:       j_meter

 Example Program: demo\japi\vumeter.exw

 See Also:      j_setvalue

 -------------------------------<j_getfontascent>------------------------------

 Syntax:        include japi.e
                i = j_getfontascent(integer obj)

 Description:   Returns the ascent (space above the baseline) of the actual font
                of component obj.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example Program: demo\japi\font.exw

 See Also:      j_setfont, j_setfontname, j_setfontstyle, j_setfontsize,
                j_getfontheight, j_getstringwidth

 ------------------------------<j_getfontheight>-------------------------------

 Syntax:        include japi.e
                i = j_getfontheight(integer obj)

 Description:   Returns the total pixel height of the actual font of component
                obj.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example Program: demo\japi\font.exw

 See Also:      j_setfont, j_setfontname, j_setfontstyle, j_setfontsize,
                j_getfontascent, j_getstringwidth

 ---------------------------------<j_getheight>--------------------------------

 Syntax:        include japi.e
                i = j_getheight(integer obj)

 Description:   Returns the height of component obj.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment, j_image

 Example:       label = j_getlabel(frame, "Hello World")
                ? j_getheight(label) --> 22

 See Also:      j_getwidth, j_getinwidth, j_getinheight, j_getinsets, j_setsize,
                j_getxpos, j_getypos, j_getparentid

 ------------------------------<j_getimagesource>------------------------------

 Syntax:        include japi.e
                j_getimagesource(integer obj, integer x, integer y,
                                                integer w, integer h,
                                                object r, object g, object b)

 Description:   Returns an image of the specified size (x, y, width, height) of
                component. The red, green and blue values of each pixel will be
                stored in r, g, b.

 Targets:       j_canvas, j_image

 Example Program: demo\japi\image1.exw

 See Also:      j_setimage, j_drawimage, j_loadimage, j_drawimagesource,
                j_getwidth, j_drawscaledimage, j_getscaledimage, j_seticon,
                j_getimage

 ---------------------------------<j_getimage>---------------------------------

 Syntax:        include japi.e
                i = j_getimage(integer obj)

 Description:   Copy the contents of component obj into an image and return its
                eventnumber.

 Targets:       j_canvas, j_image

 Example:       n/a

 See Also:      j_setimage, j_drawimage, j_loadimage, j_getimagesource,
                j_drawimagesource, j_getwidth, j_drawscaledimage,
                j_getscaledimage, j_seticon

 ---------------------------------<j_getinheight>------------------------------

 Syntax:        include japi.e
                i = j_getinheight(integer cont)

 Description:   Returns the height of the client size.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       frame = j_frame("Hello World")
                j_setsize(frame, 300, 400)
                ? j_getinheight(frame)  --> 370

 See Also:      j_getwidth, j_getheight, j_getinwidth, j_getinsets, j_setsize

 ---------------------------------<j_getinsets>--------------------------------

 Syntax:        include japi.e
                i = j_getinsets(integer obj, integer side)

 Description:   Returns the width of the specified inset. Possible values for
                side are defined in japi.e:

                        global constant
                                J_LEFT        = 0,
                                J_CENTER      = 1,
                                J_RIGHT       = 2,
                                J_TOP         = 3,
                                J_BOTTOM      = 4,
                                J_TOPLEFT     = 5,
                                J_TOPRIGHT    = 6,
                                J_BOTTOMLEFT  = 7,
                                J_BOTTOMRIGHT = 8

                - J_TOP    -- returns the height of the top inset.

                - J_BOTTOM -- returns the height of the bottom inset.

                - J_LEFT   -- returns the width of the left inset.

                - J_RIGHT  -- returns the width of the right inset.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       frame = j_frame("j_getinsets")
                ? {j_getinsets(frame, J_TOP),  j_getinsets(frame, J_BOTTOM),
                   j_getinsets(frame, J_LEFT), j_getinsets(frame, J_RIGHT)}
                --> {25, 5, 5, 6}

 Example Program: demo\japi\insets.exw

 See Also:      j_getwidth, j_getheight, j_getinwidth, j_getinheight, j_setsize

 ---------------------------------<j_getinwidth>-------------------------------

 Syntax:        include japi.e
                i = j_getinwidth(integer cont)

 Description:   Returns the width of the client size.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       frame = j_frame("Hello World")
                j_setsize(frame, 300, 400)
                ? j_getinwidth(frame)  --> 289

 See Also:      j_getwidth, j_getheight, j_getinheight, j_getinsets, j_setsize

 --------------------------------<j_getitemcount>------------------------------

 Syntax:        include japi.e
                i = j_getitemcount(integer obj)

 Description:   Returns the number of items of component obj.

 Targets:       j_list, j_choice

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_getitem>----------------------------------

 Syntax:        include japi.e
                s = j_getitem(integer obj, integer item)

 Description:   returns the label of the given item.

 Targets:       j_list, j_choice

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_getkeychar>-------------------------------

 Syntax:        include japi.e
                i = j_getkeychar(integer obj)

 Description:   Returns the ascii value of the last pressed key.

 Targets:       j_keylistener

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_getkeycode>-------------------------------

 Syntax:        include japi.e
                i = j_getkeycode(integer obj)

 Description:   Returns the integer key code of the last pressed key.

 Targets:       j_keylistener

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_getlayoutid>------------------------------

 Syntax:        include japi.e
                i = j_getlayoutid(integer obj)

 Description:   Returns the event number of the layoutmanager for containers
                obj.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       j_setgridlayout(frame, 2, 2)
                grid = j_getlayoutid(frame)

 See Also:      n/a

 ---------------------------------<j_getlength>--------------------------------

 Syntax:        include japi.e
                i = j_getlength(integer obj)

 Description:   Returns the length of component's label or text.

 Targets:       j_textarea, j_textfield, j_dialog, j_frame, j_button,
                j_menuitem, j_checkbox, j_menuitem, j_menu, j_helpmenu,
                j_popupmenu

 Example Program: demo\japi\text1.exw

 See Also:      n/a

 -----------------------------<j_getmousebutton>-------------------------------

 Syntax:        include japi.e
                i = j_getmousebutton(integer mouselistener)

 Description:   Returns the latest used mousebutton. The return value is:

                - J_LEFT   -- left mousebutton

                - J_CENTER -- middle mousebutton

                - J_RIGHT  -- right mousebutton

 Targets:       j_mouselistener

 Example:       n/a

 See Also:      j_mouselistener, j_getmousex, j_getmousey

 -------------------------------<j_getmousepos>--------------------------------

 Syntax:        include japi.e
                j_getmousepos(integer obj, atom pointer, atom pointer)

 Description:   [not documented yet].

 Targets:       n/a

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_getmousex>--------------------------------

 Syntax:        include japi.e
                i = j_getmousex(integer mouselistener)

 Description:   Returns the current horizontal position of the mouse in its
                parent's coordinate space.

 Targets:       j_mouselistener

 Example Program: demo\japi\mouse1.exw

 See Also:      j_getmousey, j_getmousebutton, j_setcursor, j_getcurpos

 ---------------------------------<j_getmousey>--------------------------------

 Syntax:        include japi.e
                i = j_getmousey(integer mouselistener)

 Description:   Returns the current vertical position of the mouse in its
                parent's coordinate space.

 Targets:       j_mouselistener

 Example Program: demo\japi\mouse1.exw

 See Also:      j_getmousex, j_getmousebutton, j_setcursor, j_getcurpos

 ---------------------------------<j_getparentid>------------------------------

 Syntax:        include japi.e
                i = j_getparentid(integer obj)

 Description:   Returns the parent event number of component obj. If obj is a
                frame -1 will be returned.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment, j_menubar, j_menuitem,
                j_checkbox, j_menuitem, j_menu, j_helpmenu, j_popupmenu,
                j_radiogroup

 Example:       radio1 = j_radiobutton(j_radiogroup(frame), "j_radiobutton 1")
                radio2 = j_radiobutton(j_getparentid(radio1), "j_radiobutton 2")

 See Also:      j_isparent, j_getheight, j_getwidth, j_getxpos, j_getypos,
                j_nextaction, j_getaction

 -------------------------------<j_getpos>-------------------------------------

 Syntax:        include japi.e
                j_getpos(integer obj, atom pointer, atom pointer)

 Description:   [not documented yet].

 Targets:       n/a

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_getrows>----------------------------------

 Syntax:        include japi.e
                j_getrows(integer obj)

 Description:   Gets the number of rows in obj.

 Targets:       j_textarea, j_gridlayout

 Example:       text = j_text(frame, 30, 4)
                j_getrows(text) --> 4

 See Also:      j_getcolumns, j_getstringwidth

 ------------------------------<j_getscaledimage>------------------------------

 Syntax:        include japi.e
                i = j_getscaledimage(integer obj, integer x, integer y,
                                                integer sw, integer sh,
                                                integer tw, integer th)

 Description:   Copy the contents of the rectangular area defined by x, y, width
                sw, and height sh into an image and return its eventnumber. The
                image will be scaled to target width th and target height th.

 Targets:       j_canvas, j_image

 Example Program: demo\japi\image2.exw

 See Also:      j_drawscaledimage, j_setimage, j_drawimage, j_loadimage,
                j_getimagesource, j_drawimagesource, j_getwidth, j_seticon

 ------------------------------<j_getscreenheight>-----------------------------

 Syntax:        include japi.e
                i = j_getscreenheight()

 Description:   Returns the screens height in pixel. If a virtual screen is
                installed, the virtual height will be returned.

 Example:       ? {j_getscreenwidth(), j_getscreenheight()} --> {1280, 1024}

 See Also:      j_getscreenwidth, j_centerframe

 ------------------------------<j_getscreenwidth>------------------------------

 Syntax:        include japi.e
                i = j_getscreenwidth()

 Description:   Returns the screens width in pixel. If a virtual screen is
                installed, the virtual width will be returned.

 Example:       ? {j_getscreenwidth(), j_getscreenheight()} --> {1280, 1024}

 See Also:      j_getscreenheight, j_centerframe

 ---------------------------------<j_getselect>--------------------------------

 Syntax:        include japi.e
                i = j_getselect(integer obj)

 Description:   Returns the position of currently selected item.

 Targets:       j_list, j_choice

 Example Program: demo\japi\list1.exw

 See Also:      j_additem, j_select, j_deselect, j_isselect, j_multiplemode,
                j_setnamedcolor

 ---------------------------------<j_getselend>--------------------------------

 Syntax:        include japi.e
                i = j_getselend(integer obj)

 Description:   Returns the ending position of any selected text.

 Targets:       j_textarea, j_textfield

 Example Program: demo\japi\text1.exw

 See Also:      j_selectall, j_selecttext, j_getselstart,
                j_getseltext, j_getlength, j_gettext, j_settext,
                j_inserttext, j_replacetext, j_delete, j_getcurpos

 ---------------------------------<j_getselstart>------------------------------

 Syntax:        include japi.e
                i = j_getselstart(integer obj)

 Description:   Returns the initial position of any selected text.

 Targets:       j_textarea, j_textfield

 Example Program: demo\japi\text1.exw

 See Also:      j_selectall, j_selecttext, j_getselend, j_getseltext,
                j_getlength, j_gettext, j_settext, j_inserttext, j_replacetext,
                j_delete, j_getcurpos

 ---------------------------------<j_getseltext>-------------------------------

 Syntax:        include japi.e
                s = j_getseltext(integer obj)

 Description:   Returns the currently selected text of component obj.

 Targets:       j_textarea, j_textfield

 Example Program: demo\japi\text1.exw

 See Also:      j_selectall, j_selecttext, j_getselstart, j_getselend,
                j_getlength, j_gettext, j_settext, j_inserttext, j_replacetext,
                j_delete, j_getcurpos

 ---------------------------------<j_getstate>---------------------------------

 Syntax:        include japi.e
                i = j_getstate(integer obj)

 Description:   Returns J_TRUE, if component is selected, J_FALSE otherwise.

 Targets:       j_checkbox, j_radiobutton, j_checkmenuitem, j_led

 Example Program: demo\japi\menu2.exw

 See Also:      j_disable, j_enable, j_hide

 -----------------------------<j_getstringwidth>-------------------------------

 Syntax:        include japi.e
                i = j_getstringwidth(integer obj, sequence str)

 Description:   Returns the length of str of the actual font of component obj.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example Program: demo\japi\font.exw

 See Also:      j_getfontheight

 ---------------------------------<j_gettext>----------------------------------

 Syntax:        include japi.e
                s = j_gettext(integer obj)

 Description:   returns the component's text or label.

 Targets:       j_button, j_label, j_checkbox, j_radiobutton, j_dialog, j_frame,
                j_menuitem, j_menu, j_helpmenu, j_popupmenu, j_textarea,
                j_textfield

 Example:       label = j_label(frame, "Hello World")
                puts(1, j_gettext(label))  --> Hello World

 Example Program: demo\japi\text1.exw

 See Also:      j_settext, j_getcurpos

 ---------------------------------<j_getvalue>---------------------------------

 Syntax:        include japi.e
                i = j_getvalue(integer obj)

 Description:   Returns the current setting of the scrollbar.

 Targets:       j_hscrollbar, j_vscrollbar

 Example Program: demo\japi\scrolbar.exw

 See Also:      j_setvalue, j_setmin, j_setmax, j_setslidesize, j_setunitinc,
                j_setblockinc

 -----------------------------<j_getviewportheight>----------------------------

 Syntax:        include japi.e
                i = j_getviewportheight(integer obj)

 Description:   Returns the height of the component's obj port (the area that is
                shown).

 Targets:       j_scrollpane

 Example Program: demo\japi\scrolpan.exw

 See Also:      j_getviewportwidth

 ------------------------------<j_getviewportwidth>----------------------------

 Syntax:        include japi.e
                i = j_getviewportwidth(integer obj)

 Description:   Returns the width of the component's obj port (the area that is
                shown).

 Targets:       j_scrollpane

 Example Program: demo\japi\scrolpan.exw

 See Also:      j_getviewportheight

 ---------------------------------<j_getwidth>---------------------------------

 Syntax:        include japi.e
                i = j_getwidth(integer obj)

 Description:   Returns the width of component obj.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment, j_image

 Example:       label = j_getlabel(frame, "Hello World")
                ? j_getwidth(label) --> 84

 See Also:      j_getheight, j_getinwidth, j_getinheight, j_getinsets,
                j_setsize, j_getxpos, j_getypos, j_getparentid

 ---------------------------------<j_getxpos>----------------------------------

 Syntax:        include japi.e
                i = j_getxpos(integer obj)

 Description:   Returns the current horizontal position of component obj in its
                parent's coordinate space.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       n/a

 See Also:      j_getypos, j_getheight, j_getwidth, j_getparentid

 ---------------------------------<j_getypos>----------------------------------

 Syntax:        include japi.e
                i = j_getypos(integer obj)

 Description:   Returns the current vertical position of component obj in its
                parent's coordinate space.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       n/a

 See Also:      j_getxpos, j_getheight, j_getwidth, j_getparentid

 ---------------------------------<j_hasfocus>---------------------------------

 Syntax:        include japi.e
                i = j_hasfocus(integer obj)

 Description:   Returns J_TRUE if the component has the focus, J_FALSE
                otherwise.

 Targets:       j_focuslistener

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_hide>-------------------------------------

 Syntax:        include japi.e
                j_hide(integer obj)

 Description:   Hides the component obj.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       n/a

 See Also:      j_show, j_disable, j_dispose

 ---------------------------------<j_insert>-----------------------------------

 Syntax:        include japi.e
                i = j_insert(integer obj, integer pos, sequence label)

 Description:   inserts a new item to component obj at position pos with the
                specified label.

 Targets:       j_list, j_choice

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_inserttext>-------------------------------

 Syntax:        include japi.e
                j_inserttext(integer obj, sequence text, integer pos)

 Description:   Places additional text within the component at the given
                position pos.

 Targets:       j_textarea

 Example Program: demo\japi\text1.exw

 See Also:      j_replacetext, j_delete, j_getcurpos, j_selecttext, j_settext

 ---------------------------------<j_isparent>---------------------------------

 Syntax:        include japi.e
                i = j_isparent(integer obj, integer cont)

 Description:   Returns J_TRUE if cont is parent of obj, J_FALSE otherwise.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment, j_menubar, j_menuitem,
                j_checkbox, j_menuitem, j_menu, j_helpmenu, j_popupmenu,
                j_radiogroup

 Example:       n/a

 See Also:      j_getparentid

 ---------------------------------<j_isresizable>------------------------------

 Syntax:        include japi.e
                i = j_isresizable(integer obj)

 Description:   returns J_TRUE if component is resizable, J_FALSE otherwise.

 Targets:       j_dialog, j_frame

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_isselect>---------------------------------

 Syntax:        include japi.e
                i = j_isselect(integer obj, integer item)

 Description:   Returns J_TRUE if the particular item is currently selected,
                J_FALSE otherwise.

 Targets:       j_list

 Example Program: demo\japi\list2.exw

 See Also:      j_additem, j_getselect, j_select, j_deselect

 ---------------------------------<j_isvisible>--------------------------------

 Syntax:        include japi.e
                i = j_isvisible(integer obj)

 Description:   Returns J_TRUE if obj is visible, J_FALSE otherwise.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       n/a

 See Also:      n/a

 --------------------------------<j_kill>--------------------------------------

 Syntax:        include japi.e
                j_kill()

 Description:   [not documented yet].

 Targets:       n/a

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_line>-------------------------------------

 Syntax:        include japi.e
                i = j_line(integer obj, integer orient, integer style,
                                                        integer length)

 Description:   Creates a new line component with the specified length and
                returns its event number. A line may be used to separate groups
                of components. On Error -1 will returned. The parameter orient
                specifies the orientation of the line:

                        - J_HORIZONTAL -- horizontal line

                        - J_VERTICAL   -- vertical line

                The Parameter style specifies the linestyle:

                        - J_LINEDOWN -- etched-in linestyle.

                        - J_LINEUP   -- etchet-out linestyle.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       line1 = j_line(frame, J_HORIZONTAL, J_LINEDOWN, 200)
                line2 = j_line(frame, J_HORIZONTAL, J_LINEUP, 200)

 Example Program: demo\japi\line.exw

 See Also:      j_sethgap, j_setvgap, j_drawline, j_seperator

 ---------------------------------<j_loadimage>--------------------------------

 Syntax:        include japi.e
                i = j_loadimage(sequence filename)

 Description:   Loads the j_image from file filename and returns its
                eventnumber. The file could be of the following format (defined
                in japi.e): J_GIF, J_JPG, J_PPM or J_BMP.

 Example:       image = j_loadimage("mandel.jpg")

 Example Program: demo\japi\image1.exw

 See Also:      j_setimage, j_getimage, j_drawimage, j_getimagesource,
                j_drawimagesource, j_getwidth, j_drawscaledimage,
                j_getscaledimage, j_seticon

 ---------------------------------<j_menubar>----------------------------------

 Syntax:        include japi.e
                i = j_menubar(integer obj)

 Description:   Creates a new menubar and returns its event number.

 Targets:       j_frame

 Example:       frame = j_frame("j_menu Component")
                menubar = j_menubar(frame)
                file = j_menu(menubar, "File")
                quit = j_menuitem(file, "Quit")

 Example Program: demo\japi\menu2.exw

 See Also:      j_menu, j_menuitem, j_helpmenu, j_seperator, j_setshortcut,
                j_checkmenuitem, j_disable, j_setfont, j_popupmenu

 ---------------------------------<j_messagebox>-------------------------------

 Syntax:        include japi.e
                j_messagebox(integer obj, sequence title, sequence text)

 Description:   Shows a messagebox with the specified title and text and returns
                its event number. In the case of error -1 will be returend.
                j_messagebox generates an event, if the close icon is clicked.

 Targets:       j_frame

 Example:       mbox = j_messagebox(frame, "Info",
                                "This messages will disappear in 5 seconds")
                j_sleep(5000)
                j_dispose(mbox)

 Example Program: demo\japi\alert.exw

 See Also:      j_choicebox2, j_choicebox3, j_alertbox

 ---------------------------------<j_multiplemode>-----------------------------

 Syntax:        include japi.e
                i = j_multiplemode(integer obj, integer bool)

 Description:   if bool is J_TRUE, selection mode is turned to multiplemode.

 Targets:       j_list

 Example Program: demo\japi\list2.exw

 See Also:      j_additem, j_getselect, j_select, j_deselect, j_isselect

 ---------------------------------<j_nextaction>-------------------------------

 Syntax:        include japi.e
                i = j_nextaction()

 Description:   Waits for the next event.

 Example Program: demo\japi\label1.exw

 See Also:      j_getaction, j_show, j_quit, j_start

 ---------------------------------<j_pack>-------------------------------------

 Syntax:        include japi.e
                j_pack(integer obj)

 Description:   Resizes component to the minimal size of contained components.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       j_setflowlayout(jframe, J_HORIZOMTAL)
                canvas = j_canvas(frame, 200, 50)
                j_setnamedcolorbg(canvas, J_RED)
                j_pack(frame)

 Example Program: demo\japi\flow2.exw

 See Also:      j_show, j_centerframe, j_sethgap, j_setvgap, j_setsize,
                j_setflowlayout

 --------------------------------<j_play>--------------------------------------

 Syntax:        include japi.e
                j_play(integer obj)

 Description:   [not documented yet].

 Targets:       n/a

 Example:       n/a

 See Also:      n/a

 -----------------------------<j_playsoundfile>--------------------------------

 Syntax:        include japi.e
                j_playsoundfile(sequence filename)

 Description:   [not documented yet].

 Targets:       n/a

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_print>------------------------------------

 Syntax:        include japi.e
                j_print(integer obj)

 Description:   Prints the component. With X-Windows all components have
                Motif-look. If component is a printer, the actual page will be
                closed, and a new page will be opened. The pages are not jet
                printed. To print all pages call j_dispose(printer).

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment, j_canvas, j_image,
                j_printer

 Example:       frame = j_frame("j_textfield")
                text = j_textfield(frame, 30)
                j_print(frame)

 See Also:      n/a

 ---------------------------------<j_quit>-------------------------------------

 Syntax:        include japi.e
                j_quit()

 Description:   Cancels the connection to the JAPI Kernel.

 Example Program: demo\japi\simple.exw

 See Also:      j_start, j_show, j_sleep

 ---------------------------------<j_radiogroup>-------------------------------

 Syntax:        include japi.e
                i = j_radiogroup(integer obj)

 Description:   Creates a new radiogroup and returns its event number.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       radiogroup = j_radiogroup(frame)
                radio1 = j_radiobutton(radiogroup, "j_radiobutton 1")
                radio2 = j_radiobutton(radiogroup, "j_radiobutton 2")

 See Also:      n/a

 ---------------------------------<j_random>-----------------------------------

 Syntax:        include japi.e
                a = j_random()

 Description:   Generates a pseudo random number. The returned value will be in
                the range of 0 to 2147483647 (power(2, 31) - 1).

                The following constant is defined in japi.e:

                        global constant
                                J_RANDMAX = 2147483647

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_releaseall>-------------------------------

 Syntax:        include japi.e
                j_releaseall(integer obj)

 Description:   Releases all components from component obj.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_release>----------------------------------

 Syntax:        include japi.e
                j_release(integer obj)

 Description:   Releases component obj from its parent component(container).

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_removeall>--------------------------------

 Syntax:        include japi.e
                i = j_removeall(integer obj)

 Description:   Removes all items from the component.

 Targets:       j_list, j_choice

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_removeitem>-------------------------------

 Syntax:        include japi.e
                i = j_removeitem(integer obj, sequence item)

 Description:   remove the first occurrence of item from the component.

 Targets:       j_list, j_choice

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_remove>-----------------------------------

 Syntax:        include japi.e
                i = j_remove(integer obj, integer item)

 Description:   removes the Item with the Index item from the component.

 Targets:       j_list, j_choice

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_replacetext>------------------------------

 Syntax:        include japi.e
                j_replacetext(integer obj, sequence text, integer start,
                                                                integer end)

 Description:   Replaces the text from starting position start to ending
                position end with the given text.

 Targets:       j_textarea

 Example Program: demo\japi\text1.exw

 See Also:      j_inserttext, j_delete, j_getcurpos, j_selecttext, j_settext

 ---------------------------------<j_saveimage>--------------------------------

 Syntax:        include japi.e
                i = j_saveimage(integer obj, sequence filename, integer filetyp)

 Description:   Saves the components image to file filename. The specified file
                formats are defined in japi.e:

                        global constant
                                J_GIF = 0, -- (possible?)
                                J_JPG = 1, -- (possible?)
                                J_PPM = 2,
                                J_BMP = 3

                        - J_BMP -- Win32 Bitmap Format

                        - J_PPM -- Portable pixmap

 Example:       if j_saveimage(canvas, "mandel.bmp", J_BMP) = J_FALSE then
                    puts(1, "Error saving Bitmap file")
                end if

 See Also:      n/a

 ---------------------------------<j_selectall>--------------------------------

 Syntax:        include japi.e
                j_selectall(integer obj)

 Description:   Selects all the text in the component.

 Targets:       j_textarea, j_textfield

 Example Program: demo\japi\text1.exw

 See Also:      j_selecttext, j_getselstart, j_getselend,
                j_getseltext, j_getlength, j_gettext, j_settext,
                j_inserttext, j_replacetext, j_delete, j_getcurpos

 ---------------------------------<j_select>-----------------------------------

 Syntax:        include japi.e
                i = j_select(integer obj, integer item)

 Description:   Makes the given item the selected one for the component.

 Targets:       j_list, j_choice

 Example Program: demo\japi\list1.exw

 See Also:      j_additem, j_getselect, j_deselect, j_isselect, j_multiplemode,
                j_setnamedcolor

 ---------------------------------<j_selecttext>-------------------------------

 Syntax:        include japi.e
                j_selecttext(integer obj, integer start, integer end)

 Description:   Selects text from starting position start to ending position
                end.

 Targets:       j_textarea, j_textfield

 Example Program: demo\japi\text1.exw

 See Also:      j_selectall, j_getselstart, j_getselend,
                j_getseltext, j_getlength, j_gettext, j_settext,
                j_inserttext, j_replacetext, j_delete, j_getcurpos

 ---------------------------------<j_seperator>--------------------------------

 Syntax:        include japi.e
                j_seperator(integer obj)

 Description:   Adds a separator bar to the component.

 Targets:       j_menu, j_helpmenu, j_popupmenu

 Example:       file = j_menu(menubar, "File")
                open = j_menuitem(file, "Open")
                save = j_menuitem(file, "Save")
                j_seperator(file)
                quit = j_menuitem(file, "Quit")

 Example Program: demo\japi\menu2.exw

 See Also:      j_menubar, j_menu, j_menuitem, j_helpmenu, j_setshortcut,
                j_checkmenuitem, j_disable, j_setfont, j_popupmenu, j_settext

 ---------------------------------<j_setalign>---------------------------------

 Syntax:        include japi.e
                j_setalign(integer obj, integer align)

 Description:   Sets the alignment in component obj to align. Needs a flowlayout
                Manager.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example Program: demo\japi\flow2.exw

 See Also:      j_setflowlayout, j_setflowfill, j_pack, j_sethgap, j_setsize

 ---------------------------------<j_setblockinc>------------------------------

 Syntax:        include japi.e
                i = j_setblockinc(integer obj, integer val)

 Description:   Changes the block increment amount for the component to val.

 Targets:       j_hscrollbar, j_vscrollbar

 Example Program: demo\japi\scrolbar.exw

 See Also:      j_setvalue, j_setmin, j_setmax, j_setslidesize, j_setunitinc

 ------------------------------<j_setborderlayout>-----------------------------

 Syntax:        include japi.e
                j_setborderlayout(integer obj)

 Description:   Adds a borderlayout manager to component obj.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example Program: demo\japi\border.exw

 See Also:      j_setborderpos, j_setflowlayout, j_setgridlayout, j_pack,
                j_sethgap, j_setsize

 ---------------------------------<j_setborderpos>-----------------------------

 Syntax:        include japi.e
                j_setborderpos(integer obj, integer pos)

 Description:   Moves component obj at a certain position. The outer container
                needs a border layout manager.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example Program: demo\japi\border.exw

 See Also:      j_setborderlayout

 ---------------------------------<j_setcolorbg>-------------------------------

 Syntax:        include japi.e
                j_setcolorbg(integer obj, integer r, integer g, integer b)

 Description:   Sets the background color to the (r, g, b) values.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       button = j_button(frame, "Hello World")
                j_setcolorbg(button, 150, 0, 0)
                j_settext(button, "Hello World")

 Example Program: demo\japi\colors.exw

 See Also:      j_setcolor, j_setnamedcolor, j_setnamedcolorbg

 ---------------------------------<j_setcolor>---------------------------------

 Syntax:        include japi.e
                j_setcolor(integer obj, integer r, integer g, integer b)

 Description:   Sets the foreground color to the (r, g, b) values.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       button = j_button(frame, "Hello World")
                j_setcolor(button, 150, 0, 0)
                j_settext(button, "Hello World")

 Example Program: demo\japi\colors.exw

 See Also:      j_setcolorbg, j_setnamedcolor, j_setnamedcolorbg

 ---------------------------------<j_setcolumns>-------------------------------

 Syntax:        include japi.e
                j_setcolumns(integer obj, integer columns)

 Description:   Sets the number of columns for obj to columns.

 Targets:       j_textarea, j_textfield, j_gridlayout

 Example:       text = j_text(frame, 10, 4)
                j_setcolumns(text, 30)

 See Also:      n/a

 ---------------------------------<j_setcurpos>--------------------------------

 Syntax:        include japi.e
                j_setcurpos(integer obj, integer pos)

 Description:   Change the location of the text cursor to the specified position
                pos.

 Targets:       j_textarea, j_textfield

 Example Program: demo\japi\text1.exw

 See Also:      j_getcurpos, j_setcursor

 ---------------------------------<j_setcursor>--------------------------------

 Syntax:        include japi.e
                i = j_setcursor(integer obj, integer cursor)

 Description:   Changes the component's obj cursor to the specified cursor.

                The following cursor constants are defined in japi.e:

                        global constant
                                J_DEFAULT_CURSOR   = 0,
                                J_CROSSHAIR_CURSOR = 1,
                                J_TEXT_CURSOR      = 2,
                                J_WAIT_CURSOR      = 3,
                                J_SW_RESIZE_CURSOR = 4,
                                J_SE_RESIZE_CURSOR = 5,
                                J_NW_RESIZE_CURSOR = 6,
                                J_NE_RESIZE_CURSOR = 7,
                                J_N_RESIZE_CURSOR  = 8,
                                J_S_RESIZE_CURSOR  = 9,
                                J_W_RESIZE_CURSOR  = 10,
                                J_E_RESIZE_CURSOR  = 11,
                                J_HAND_CURSOR      = 12,
                                J_MOVE_CURSOR      = 13

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example Program: demo\japi\cursor.exw

 See Also:      j_setcurpos, j_getcurpos, j_getmousex, j_getmousey

 ---------------------------------<j_setdanger>--------------------------------

 Syntax:        include japi.e
                j_setdanger(integer obj, integer val)

 Description:   Changes the danger value of component obj to val.

 Targets:       j_meter

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_setdebug>---------------------------------

 Syntax:        include japi.e
                j_setdebug(integer level)

 Description:   Sets the debuglevel to level.

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_setechochar>------------------------------

 Syntax:        include japi.e
                j_setechochar(integer obj, integer chr)

 Description:   Changes the character chr that is used to echo all user input in
                the component.

 Targets:       j_textfield

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_seteditable>------------------------------

 Syntax:        include japi.e
                j_seteditable(integer obj, integer bool)

 Description:   Allows to make the component editable (bool = J_TRUE) or
                read-only (bool = J_FALSE).

 Targets:       j_textarea, j_textfield

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_setfixlayout>-----------------------------

 Syntax:        include japi.e
                j_setfixlayout(integer obj)

 Description:   Adds a fixlayout manager to component obj (default layout
                manager).

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_setflowfill>------------------------------

 Syntax:        include japi.e
                j_setflowfill(integer obj, integer bool)

 Description:   Resizes all containing component to the height (width) of
                component obj. Needs a flowlayout manager.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example Program: demo\japi\flow2.exw

 See Also:      j_setflowlayout, j_setalign, j_pack, j_sethgap, j_setsize

 ---------------------------------<j_setflowlayout>----------------------------

 Syntax:        include japi.e
                j_setflowlayout(integer obj, integer align)

 Description:   Adds a flowlayout manager to component obj with the specified
                alignment.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example Program: demo\japi\flow2.exw

 See Also:      j_setflowfill, j_setalign, j_setgridlayout, j_setborderlayout,
                j_pack, j_sethgap, j_setvgap, j_setsize

 ---------------------------------<j_setfocus>---------------------------------

 Syntax:        include japi.e
                j_setfocus(integer obj)

 Description:   Directs the input focus to component obj.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_setfontname>------------------------------

 Syntax:        include japi.e
                j_setfontname(integer obj, integer name)

 Description:   Changes the font to the given name.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment, j_menuitem, j_menu,
                j_helpmenu, j_popupmenu

 Example:       label = j_label(jframe, "Hello World")
                j_setfontname(label, J_HELVETIA)

 Example Program: demo\japi\font.exw

 See Also:      j_setfont, j_setfontstyle, j_setfontsize,
                j_getfontascent, j_getfontheight, j_getstringwidth

 ---------------------------------<j_setfontsize>------------------------------

 Syntax:        include japi.e
                j_setfontsize(integer obj, integer size)

 Description:   Changes the font to the given size.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment, j_menuitem, j_menu,
                j_helpmenu, j_popupmenu

 Example:       label = j_label(jframe, "Hello World")
                j_setfontsize(label, 24)

 Example Program: demo\japi\font.exw

 See Also:      j_setfont, j_setfontname, j_setfontstyle, j_getfontascent,
                j_getfontheight, j_getstringwidth

 ---------------------------------<j_setfontstyle>-----------------------------

 Syntax:        include japi.e
                j_setfontstyle(integer obj, integer style)

 Description:   Changes the font to the given style.

                The following style constants are defined in japi.e:

                        global constant
                                J_PLAIN     = 0,
                                J_BOLD      = 1,
                                J_ITALIC    = 2,
                                J_COURIER   = 1,
                                J_HELVETIA  = 2,
                                J_TIMES     = 3,
                                J_DIALOGIN  = 4,
                                J_DIALOGOUT = 5

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment, j_menuitem, j_menu,
                j_helpmenu, j_popupmenu

 Example:       label = j_label(jframe, "Hello World")
                j_setfontstyle(label, J_BOLD + J_ITALIC)

 Example Program: demo\japi\font.exw

 See Also:      j_setfont, j_setfontname, j_setfontsize, j_getfontascent,
                j_getfontheight, j_getstringwidth

 ---------------------------------<j_setfont>----------------------------------

 Syntax:        include japi.e
                j_setfont(integer obj, integer name, integer style,
                                                        integer size)

 Description:   Changes the font to the given characteristics name, style and
                size.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment, j_menuitem, j_menu,
                j_helpmenu, j_popupmenu

 Example:       label = j_label(jframe, "Hello World")
                j_setfont(label, J_TIMES, J_PLAIN, 18)

 Example Program: demo\japi\font.exw

 See Also:      j_setfontname, j_setfontstyle, j_setfontsize,
                j_getfontascent, j_getfontheight, j_getstringwidth

 ---------------------------------<j_setgridlayout>----------------------------

 Syntax:        include japi.e
                j_setgridlayout(integer obj, integer row, integer col)

 Description:   Adds a gridlayout manager to component obj with the specified
                rows and columns.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example Program: demo\japi\grid.exw

 See Also:      j_setflowlayout, j_setborderlayout, j_pack, j_sethgap,
                j_setsize

 ---------------------------------<j_sethgap>----------------------------------

 Syntax:        include japi.e
                j_sethgap(integer obj, integer hgap)

 Description:   Sets the horizontal gap between components to hgap Pixel.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       j_flowlayout(frame, J_HORIZONTAL)
                button1 = j_button(frame, "Button1")
                button2 = j_button(frame, "Button2")
                j_sethgap(frame, 30)

 Example Program: demo\japi\gap.exw

 See Also:      j_setvgap, j_setflowlayout, j_line

 ---------------------------------<j_seticon>----------------------------------

 Syntax:        include japi.e
                j_seticon(integer frame, integer icon)

 Description:   Sets the image icon to display when the frame is iconized. Not
                all platforms support the concept of iconizing a window.

 Targets:       j_frame

 Example:       frame = j_frame("Hello World")
                j_seticon(frame, j_loadimage("icon.gif"))

 See Also:      j_setimage

 ---------------------------------<j_setimage>---------------------------------

 Syntax:        include japi.e
                j_setimage(integer obj, integer image)

 Description:   Sets the image to be displayed in obj.

 Targets:       j_graphicbutton, j_graphiclabel

 Example:       label = j_graphiclabel(frame, "mandel.gif")
                image = j_image("new.gif")
                j_setimage(label, image)

 Example Program: demo\japi\button2.exw

 See Also:      j_getimage, j_drawimage, j_loadimage, j_getimagesource,
                j_drawimagesource, j_getwidth, j_drawscaledimage,
                j_getscaledimage, j_seticon, j_setxor

 ---------------------------------<j_setinsets>--------------------------------

 Syntax:        include japi.e
                j_setinsets(integer obj, integer top, integer bottom,
                                                integer left, integer right)

 Description:   Set the insets to the specified values.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       frame = j_frame("j_setinsets")
                j_setinsets(frame, 30, 10, 10, 10) --> 25, 5, 5, 6

 Example Program: demo\japi\insets.exw

 See Also:      j_getinsets

 ---------------------------------<j_setmax>-----------------------------------

 Syntax:        include japi.e
                i = j_setmax(integer obj, integer val)

 Description:   Changes the maximum value for the component to val.

 Targets:       j_hscrollbar, j_vscrollbar, j_meter, j_progressbar

 Example Program: demo\japi\scrolbar.exw

 See Also:      j_setmin, j_getvalue, j_setslidesize, j_setunitinc,
                j_setblockinc, j_setvalue, j_setsize, j_setpos

 ---------------------------------<j_setmin>-----------------------------------

 Syntax:        include japi.e
                i = j_setmin(integer obj, integer val)

 Description:   Changes the minimum value for the component to val.

 Targets:       j_hscrollbar, j_vscrollbar, j_meter, j_progressbar

 Example Program: demo\japi\scrolbar.exw

 See Also:      j_setmax, j_getvalue, j_setslidesize, j_setunitinc,
                j_setblockinc, j_setvalue, j_setsize, j_setpos

 ---------------------------------<j_setnamedcolorbg>--------------------------

 Syntax:        include japi.e
                j_setnamedcolorbg(integer obj, integer color)

 Description:   Sets the background color to a predefined color.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example Program: demo\japi\colors.exw

 See Also:      j_setcolor, j_setcolorbg, j_setnamedcolor

 ---------------------------------<j_setnamedcolor>----------------------------

 Syntax:        include japi.e
                j_setnamedcolor(integer obj, integer color)

 Description:   Sets the foreground color to a predefined color.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example Program: demo\japi\colors.exw

 See Also:      j_setcolor, j_setcolorbg, j_setnamedcolorbg

 ---------------------------------<j_setnolayout>------------------------------

 Syntax:        include japi.e
                j_setnolayout(integer obj)

 Description:   Removes the current layout manager from component obj.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_setport>----------------------------------

 Syntax:        include japi.e
                j_setport(integer port)

 Description:   Replace the default Port by port. This can be usefull if the
                default port is used by an other application, or if you want to
                start several independent kernels on one machine. This function
                must be called before calling j_start().

 Example:       j_setport(12345)
                if j_start() = J_FALSE then  ...

 See Also:      j_start

 ---------------------------------<j_setpos>-----------------------------------

 Syntax:        include japi.e
                j_setpos(integer obj, integer xpos, integer ypos)

 Description:   Relocates the component obj to the specified Position
                (xpos, ypos).

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_setradiogroup>----------------------------

 Syntax:        include japi.e
                i = j_setradiogroup(integer rbutton,, integer rgroup)

 Description:   Sets radiobuttons rbutton group to be the specified radiogroup
                rgroup. If the radiobuttons is already in a different
                radiogroup, it is first taken out of that group.

 Targets:       j_radiobutton

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_setresizable>-----------------------------

 Syntax:        include japi.e
                j_setresizable(integer obj, integer resizable)

 Description:   The component cannot be resized, if resizable is J_FALSE.

 Targets:       j_dialog, j_frame

 Example:       frame = j_frame("fixsized j_frame")
                j_setrezisable(frame, J_FALSE)

 See Also:      n/a

 ---------------------------------<j_setrows>----------------------------------

 Syntax:        include japi.e
                j_setrows(integer obj, integer rows)

 Description:   Sets the number of rows for obj to rows.

 Targets:       j_textarea, j_gridlayout

 Example:       text = j_text(frame, 30, 10)
                j_setcolumns(text, 4)

 See Also:      n/a

 ---------------------------------<j_setshortcut>------------------------------

 Syntax:        include japi.e
                j_setshortcut(integer obj, integer chr)

 Description:   Changes the shortcut chr of the component.

 Targets:       j_menuitem, j_checkbox, j_menu, j_helpmenu, j_popupmenu

 Example:       j_setshortcut(quit, 'Q') -- lower/upper case is significant

 Example Program: demo\japi\menu2.exw

 See Also:      j_menubar, j_menu, j_menuitem, j_helpmenu, j_seperator,
                j_checkmenuitem, j_disable, j_setfont, j_popupmenu, j_settext

 ---------------------------------<j_setsize>----------------------------------

 Syntax:        include japi.e
                j_setsize(integer obj, integer width, integer height)

 Description:   Resizes component obj to specified width and height.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       button = j_button(frame, "j_button")
                j_setsize(button, 100, 100)

 See Also:      j_getwidth, j_getheight, j_getinwidth, j_getinheight,
                j_getinsets, j_panel

 ---------------------------------<j_setslidesize>-----------------------------

 Syntax:        include japi.e
                i = j_setslidesize(integer obj, integer val)

 Description:   Changes the slide size to val.

 Targets:       j_hscrollbar, j_vscrollbar

 Example Program: demo\japi\scrolbar.exw

 See Also:      j_setvalue, j_setmin, j_setmax, j_setunitinc, j_setblockinc

 ---------------------------------<j_setstate>---------------------------------

 Syntax:        include japi.e
                j_setstate(integer obj, integer bool)

 Description:   The component becomes selected, if bool is J_TRUE.

 Targets:       j_checkbox, j_radiobutton, j_checkmenuitem, j_led

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_settext>----------------------------------

 Syntax:        include japi.e
                j_settext(integer obj, sequence str)

 Description:   Sets the content or the label of the component obj to str.

 Targets:       j_button, j_label, j_checkbox, j_radiobutton, j_dialog, j_frame,
                j_menuitem, j_menu, j_helpmenu, j_popupmenu, j_textarea,
                j_textfield

 Example:       button = j_button(frame, "Hello World")
                j_settext(button, "Goodbye")

 Example Program: demo\japi\text1.exw

 See Also:      j_gettext, j_inserttext, j_replacetext, j_delete, j_selecttext

 ---------------------------------<j_setunitinc>-------------------------------

 Syntax:        include japi.e
                i = j_setunitinc(integer obj, integer val)

 Description:   Changes the unit increment amount for the component to val.

 Targets:       j_hscrollbar, j_vscrollbar

 Example Program: demo\japi\scrolbar.exw

 See Also:      j_setvalue, j_setmin, j_setmax, j_setslidesize, j_setblockinc

 ---------------------------------<j_setvalue>---------------------------------

 Syntax:        include japi.e
                j_setvalue(integer obj, integer val)

 Description:   Changes the current value of the component to val.

 Targets:       j_hscrollbar, j_vscrollbar, j_meter, j_progressbar,
                j_sevensegment

 Example Program: demo\japi\scrolbar.exw

 See Also:      j_setmin, j_setmax, j_getvalue

 ---------------------------------<j_setvgap>----------------------------------

 Syntax:        include japi.e
                j_setvgap(integer obj, integer vgap)

 Description:   Sets the vertical gap between components to hgap Pixel.

 Targets:       j_panel, j_borderpanel, j_window, j_dialog, j_frame

 Example:       j_setflowlayout(frame, J_VERTICAL)
                button1 = j_button(frame, "Button1")
                button2 = j_button(frame, "Button2")
                j_setvgap(frame, 30)

 See Also:      j_sethgap

 ---------------------------------<j_setxor>-----------------------------------

 Syntax:        include japi.e
                j_setxor(integer obj, integer bool)

 Description:   Changes painting mode to XOR mode, if bool = J_TRUE. In this
                mode, drawing the same object in the same color at the same
                location twice has no net effect.

 Targets:       j_canvas, j_image, j_printer

 Example Program: demo\japi\mouse2.exw

 See Also:      j_drawrect, j_setimage

 ---------------------------------<j_showpopup>--------------------------------

 Syntax:        include japi.e
                j_showpopup(integer obj, integer xpos, integer ypos)

 Description:   Shows the component at specified Position (xpos, ypos).

 Targets:       j_popupmenu

 Example Program: demo\japi\menu3.exw

 See Also:      j_popupmenu, j_menu, j_menuitem

 ---------------------------------<j_show>-------------------------------------

 Syntax:        include japi.e
                j_show(integer obj)

 Description:   Shows the component obj.

 Targets:       j_button, j_graphicbutton, j_canvas, j_checkbox, j_radiobutton,
                j_choice, j_label, j_graphiclabel, j_list, j_hscrollbar,
                j_vscrollbar, j_panel, j_borderpanel, j_window, j_dialog,
                j_frame, j_scrollpane, j_textarea, j_textfield, j_led,
                j_progressbar, j_meter, j_sevensegment

 Example:       frame = j_frame("Hello World")
                j_show(frame)

 Example Program: demo\japi\simple.exw

 See Also:      j_hide, j_enable, j_getstate, j_pack, j_sync, j_centerframe

 ---------------------------------<j_sleep>------------------------------------

 Syntax:        include japi.e
                i = j_sleep(integer msec)

 Description:   Suspends the execution for msec milliseconds (0.001 sec).

 Comments:      On some machines seems to be Java exception error when
                drawing on canvas too fast, in these cases you can use
                j_sleep() to manipulate the canvas slower.

 Example Program: demo\japi\panel.exw

 See Also:      j_sync, j_quit

 --------------------------------<j_sound>-------------------------------------

 Syntax:        include japi.e
                x = j_sound(sequence s)

 Description:   [not documented yet].

 Targets:       n/a

 Example:       n/a

 See Also:      n/a

 ---------------------------------<j_start>------------------------------------

 Syntax:        include japi.e
                i = j_start()

 Description:   Get in touch with a running japi kernel or start a new one.

 Example:       if j_start() = J_FALSE then
                   puts(1, "can't connect to JAPI Kernel")
                   exit
                end if

 Example Program: demo\japi\simple.exw

 See Also:      j_show, j_quit, j_setport, j_sync

 ---------------------------------<j_sync>-------------------------------------

 Syntax:        include japi.e
                j_sync()

 Description:   Synchronizes the application with the JAPI kernel.

 Example Program: demo\japi\button1.exw

 See Also:      j_sleep, j_start, j_quit, j_setport, j_show

 ---------------------------------<j_translate>--------------------------------

 Syntax:        include japi.e
                j_translate(integer obj, integer x, integer y)

 Description:   Moves the origin of drawing operations to (x, y).

 Targets:       j_canvas, j_image, j_printer

 Example Program: demo\japi\graphic.exw

 See Also:      j_drawstring, j_drawline, j_drawpolygon, j_drawrect,
                j_drawroundrect, j_drawcircle, j_drawoval, j_drawpolyline,
                j_fillpolygon, j_fillrect, j_fillroundrect, j_fillcircle,
                j_filloval, j_fillarc

 -----------------------------<j_windowlistener>-------------------------------

 Syntax:        include japi.e
                i = j_windowlistener(integer window, integer kind)

 Description:   Adds a new windowlistener to component obj, and returns its
                event number. An event occures, if the user action is of kind
                kind. Possible values for kind are defined in japi.e:

                        global constant
                                J_ACTIVATED   = 0,
                                J_DEACTIVATED = 1,
                                J_OPENED      = 2,
                                J_CLOSED      = 3,
                                J_ICONIFIED   = 4,
                                J_DEICONIFIED = 5,
                                J_CLOSING     = 6

                - J_ACTIVATED
                  -- An event occures when the component is activated.

                - J_DEACTIVATED
                  -- An event occures when the component is deactivated.

                - J_OPENED
                  -- An event occures when the component has been opened.

                - J_CLOSED
                  -- An event occures when the component has been closed.

                - J_ICONFIED
                  -- An event occures when the component is iconfied.

                - J_DEICONFIED
                  -- An event occures when the component is deiconfied.

                - J_CLOSING
                  -- An event occures when the close icon has been clicked.

 Targets:       j_window, j_dialog, j_frame

 Example:       n/a

 See Also:      j_mouselistener, j_keylistener, j_focuslistener,
                j_componentlistener