    FOREIGN MODULE javax_accessibility;

    IMPORT
        java_lang,
        java_util,
        java_awt_event,
        java_awt,
        java_beans,
        javax_swing_text;

    TYPE

      Accessible* = POINTER TO INTERFACE RECORD (java_lang.Object)
                    END;

      AccessibleAction* = POINTER TO INTERFACE RECORD (java_lang.Object)
                          END;

      AccessibleBundle* = POINTER TO ABSTRACT RECORD (java_lang.Object)
                            key! : java_lang.String;
                          STATIC
                            PROCEDURE Init*() : AccessibleBundle,CONSTRUCTOR;
                          END;

      AccessibleComponent* = POINTER TO INTERFACE RECORD (java_lang.Object)
                             END;

      AccessibleContext* = POINTER TO ABSTRACT RECORD (java_lang.Object)
                             accessibleParent! : Accessible;
                             accessibleName! : java_lang.String;
                             accessibleDescription! : java_lang.String;
                           STATIC
                             ACCESSIBLE_NAME_PROPERTY* = "AccessibleName";
                             ACCESSIBLE_DESCRIPTION_PROPERTY* = "AccessibleDescription";
                             ACCESSIBLE_STATE_PROPERTY* = "AccessibleState";
                             ACCESSIBLE_VALUE_PROPERTY* = "AccessibleValue";
                             ACCESSIBLE_SELECTION_PROPERTY* = "AccessibleSelection";
                             ACCESSIBLE_TEXT_PROPERTY* = "AccessibleText";
                             ACCESSIBLE_CARET_PROPERTY* = "AccessibleCaret";
                             ACCESSIBLE_VISIBLE_DATA_PROPERTY* = "AccessibleVisibleData";
                             ACCESSIBLE_CHILD_PROPERTY* = "AccessibleChild";
                             ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY* = "AccessibleActiveDescendant";
                             PROCEDURE Init*() : AccessibleContext,CONSTRUCTOR;
                           END;

      AccessibleHyperlink* = POINTER TO ABSTRACT RECORD (java_lang.Object + AccessibleAction)
                             STATIC
                               PROCEDURE Init*() : AccessibleHyperlink,CONSTRUCTOR;
                             END;

      AccessibleHypertext* = POINTER TO INTERFACE RECORD (java_lang.Object + AccessibleText)
                             END;

      AccessibleResourceBundle* = POINTER TO EXTENSIBLE RECORD (java_util.ListResourceBundle)
                                  STATIC
                                    PROCEDURE Init*() : AccessibleResourceBundle,CONSTRUCTOR;
                                  END;

      AccessibleRole* = POINTER TO EXTENSIBLE RECORD (AccessibleBundle)
                        STATIC
                          ALERT* : AccessibleRole;
                          COLUMN_HEADER* : AccessibleRole;
                          COMBO_BOX* : AccessibleRole;
                          DESKTOP_ICON* : AccessibleRole;
                          INTERNAL_FRAME* : AccessibleRole;
                          DESKTOP_PANE* : AccessibleRole;
                          OPTION_PANE* : AccessibleRole;
                          WINDOW* : AccessibleRole;
                          FRAME* : AccessibleRole;
                          DIALOG* : AccessibleRole;
                          COLOR_CHOOSER* : AccessibleRole;
                          DIRECTORY_PANE* : AccessibleRole;
                          FILE_CHOOSER* : AccessibleRole;
                          FILLER* : AccessibleRole;
                          LABEL* : AccessibleRole;
                          ROOT_PANE* : AccessibleRole;
                          GLASS_PANE* : AccessibleRole;
                          LAYERED_PANE* : AccessibleRole;
                          LIST* : AccessibleRole;
                          MENU_BAR* : AccessibleRole;
                          POPUP_MENU* : AccessibleRole;
                          MENU* : AccessibleRole;
                          MENU_ITEM* : AccessibleRole;
                          SEPARATOR* : AccessibleRole;
                          PAGE_TAB_LIST* : AccessibleRole;
                          PAGE_TAB* : AccessibleRole;
                          PANEL* : AccessibleRole;
                          PROGRESS_BAR* : AccessibleRole;
                          PASSWORD_TEXT* : AccessibleRole;
                          PUSH_BUTTON* : AccessibleRole;
                          TOGGLE_BUTTON* : AccessibleRole;
                          CHECK_BOX* : AccessibleRole;
                          RADIO_BUTTON* : AccessibleRole;
                          ROW_HEADER* : AccessibleRole;
                          SCROLL_PANE* : AccessibleRole;
                          SCROLL_BAR* : AccessibleRole;
                          VIEWPORT* : AccessibleRole;
                          SLIDER* : AccessibleRole;
                          SPLIT_PANE* : AccessibleRole;
                          TABLE* : AccessibleRole;
                          TEXT* : AccessibleRole;
                          TREE* : AccessibleRole;
                          TOOL_BAR* : AccessibleRole;
                          TOOL_TIP* : AccessibleRole;
                          AWT_COMPONENT* : AccessibleRole;
                          SWING_COMPONENT* : AccessibleRole;
                          UNKNOWN* : AccessibleRole;
                          PROCEDURE Init!(p0 : java_lang.String) : AccessibleRole,CONSTRUCTOR;
                        END;

      AccessibleSelection* = POINTER TO INTERFACE RECORD (java_lang.Object)
                             END;

      AccessibleState* = POINTER TO EXTENSIBLE RECORD (AccessibleBundle)
                         STATIC
                           ACTIVE* : AccessibleState;
                           PRESSED* : AccessibleState;
                           ARMED* : AccessibleState;
                           BUSY* : AccessibleState;
                           CHECKED* : AccessibleState;
                           EDITABLE* : AccessibleState;
                           EXPANDABLE* : AccessibleState;
                           COLLAPSED* : AccessibleState;
                           EXPANDED* : AccessibleState;
                           ENABLED* : AccessibleState;
                           FOCUSABLE* : AccessibleState;
                           FOCUSED* : AccessibleState;
                           ICONIFIED* : AccessibleState;
                           MODAL* : AccessibleState;
                           OPAQUE* : AccessibleState;
                           RESIZABLE* : AccessibleState;
                           MULTISELECTABLE* : AccessibleState;
                           SELECTABLE* : AccessibleState;
                           SELECTED* : AccessibleState;
                           SHOWING* : AccessibleState;
                           VISIBLE* : AccessibleState;
                           VERTICAL* : AccessibleState;
                           HORIZONTAL* : AccessibleState;
                           SINGLE_LINE* : AccessibleState;
                           MULTI_LINE* : AccessibleState;
                           TRANSIENT* : AccessibleState;
                           PROCEDURE Init!(p0 : java_lang.String) : AccessibleState,CONSTRUCTOR;
                         END;

      AccessibleStateSet* = POINTER TO EXTENSIBLE RECORD (java_lang.Object)
                              states! : java_util.Vector;
                            STATIC
                              PROCEDURE Init*() : AccessibleStateSet,CONSTRUCTOR;
                              PROCEDURE Init*(IN  p0 : ARRAY OF AccessibleState) : AccessibleStateSet,CONSTRUCTOR;
                            END;

      AccessibleText* = POINTER TO INTERFACE RECORD (java_lang.Object)
                        STATIC
                          CHARACTER* = 1;
                          WORD* = 2;
                          SENTENCE* = 3;
                        END;

      AccessibleValue* = POINTER TO INTERFACE RECORD (java_lang.Object)
                         END;

    PROCEDURE (self:Accessible) getAccessibleContext*() : AccessibleContext,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleAction) doAccessibleAction*(p0 : INTEGER) : BOOLEAN,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleAction) getAccessibleActionCount*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleAction) getAccessibleActionDescription*(p0 : INTEGER) : java_lang.String,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleBundle) toDisplayString*() : java_lang.String,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleBundle) toDisplayString!(p0 : java_lang.String;
                                                       p1 : java_util.Locale) : java_lang.String,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleBundle) toDisplayString*(p0 : java_util.Locale) : java_lang.String,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleBundle) toString*() : java_lang.String,EXTENSIBLE;

    PROCEDURE (self:AccessibleComponent) addFocusListener*(p0 : java_awt_event.FocusListener),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) contains*(p0 : java_awt.Point) : BOOLEAN,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) getAccessibleAt*(p0 : java_awt.Point) : Accessible,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) getBackground*() : java_awt.Color,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) getBounds*() : java_awt.Rectangle,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) getCursor*() : java_awt.Cursor,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) getFont*() : java_awt.Font,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) getFontMetrics*(p0 : java_awt.Font) : java_awt.FontMetrics,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) getForeground*() : java_awt.Color,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) getLocation*() : java_awt.Point,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) getLocationOnScreen*() : java_awt.Point,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) getSize*() : java_awt.Dimension,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) isEnabled*() : BOOLEAN,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) isFocusTraversable*() : BOOLEAN,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) isShowing*() : BOOLEAN,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) isVisible*() : BOOLEAN,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) removeFocusListener*(p0 : java_awt_event.FocusListener),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) requestFocus*(),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) setBackground*(p0 : java_awt.Color),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) setBounds*(p0 : java_awt.Rectangle),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) setCursor*(p0 : java_awt.Cursor),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) setEnabled*(p0 : BOOLEAN),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) setFont*(p0 : java_awt.Font),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) setForeground*(p0 : java_awt.Color),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) setLocation*(p0 : java_awt.Point),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) setSize*(p0 : java_awt.Dimension),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleComponent) setVisible*(p0 : BOOLEAN),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleContext) addPropertyChangeListener*(p0 : java_beans.PropertyChangeListener),NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) firePropertyChange*(p0 : java_lang.String;
                                                           p1 : java_lang.Object;
                                                           p2 : java_lang.Object),NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) getAccessibleAction*() : AccessibleAction,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) getAccessibleChild*(p0 : INTEGER) : Accessible,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleContext) getAccessibleChildrenCount*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleContext) getAccessibleComponent*() : AccessibleComponent,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) getAccessibleDescription*() : java_lang.String,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) getAccessibleIndexInParent*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleContext) getAccessibleName*() : java_lang.String,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) getAccessibleParent*() : Accessible,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) getAccessibleRole*() : AccessibleRole,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleContext) getAccessibleSelection*() : AccessibleSelection,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) getAccessibleStateSet*() : AccessibleStateSet,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleContext) getAccessibleText*() : AccessibleText,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) getAccessibleValue*() : AccessibleValue,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) getLocale*() : java_util.Locale,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleContext) removePropertyChangeListener*(p0 : java_beans.PropertyChangeListener),NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) setAccessibleDescription*(p0 : java_lang.String),NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) setAccessibleName*(p0 : java_lang.String),NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleContext) setAccessibleParent*(p0 : Accessible),NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleHyperlink) doAccessibleAction*(p0 : INTEGER) : BOOLEAN,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleHyperlink) getAccessibleActionAnchor*(p0 : INTEGER) : java_lang.Object,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleHyperlink) getAccessibleActionCount*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleHyperlink) getAccessibleActionDescription*(p0 : INTEGER) : java_lang.String,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleHyperlink) getAccessibleActionObject*(p0 : INTEGER) : java_lang.Object,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleHyperlink) getEndIndex*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleHyperlink) getStartIndex*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleHyperlink) isValid*() : BOOLEAN,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleHypertext) getLink*(p0 : INTEGER) : AccessibleHyperlink,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleHypertext) getLinkCount*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleHypertext) getLinkIndex*(p0 : INTEGER) : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleResourceBundle) getContents*() : POINTER TO ARRAY OF java_lang.Object,EXTENSIBLE;

    PROCEDURE (self:AccessibleSelection) addAccessibleSelection*(p0 : INTEGER),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleSelection) clearAccessibleSelection*(),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleSelection) getAccessibleSelection*(p0 : INTEGER) : Accessible,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleSelection) getAccessibleSelectionCount*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleSelection) isAccessibleChildSelected*(p0 : INTEGER) : BOOLEAN,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleSelection) removeAccessibleSelection*(p0 : INTEGER),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleSelection) selectAllAccessibleSelection*(),NEW,ABSTRACT;

    PROCEDURE (self:AccessibleStateSet) add*(p0 : AccessibleState) : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleStateSet) addAll*(IN  p0 : ARRAY OF AccessibleState),NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleStateSet) clear*(),NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleStateSet) contains*(p0 : AccessibleState) : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleStateSet) remove*(p0 : AccessibleState) : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleStateSet) toArray*() : POINTER TO ARRAY OF AccessibleState,NEW,EXTENSIBLE;

    PROCEDURE (self:AccessibleStateSet) toString*() : java_lang.String,EXTENSIBLE;

    PROCEDURE (self:AccessibleText) getAfterIndex*(p0 : INTEGER;
                                                   p1 : INTEGER) : java_lang.String,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleText) getAtIndex*(p0 : INTEGER;
                                                p1 : INTEGER) : java_lang.String,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleText) getBeforeIndex*(p0 : INTEGER;
                                                    p1 : INTEGER) : java_lang.String,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleText) getCaretPosition*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleText) getCharCount*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleText) getCharacterAttribute*(p0 : INTEGER) : javax_swing_text.AttributeSet,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleText) getCharacterBounds*(p0 : INTEGER) : java_awt.Rectangle,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleText) getIndexAtPoint*(p0 : java_awt.Point) : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleText) getSelectedText*() : java_lang.String,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleText) getSelectionEnd*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleText) getSelectionStart*() : INTEGER,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleValue) getCurrentAccessibleValue*() : java_lang.Number,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleValue) getMaximumAccessibleValue*() : java_lang.Number,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleValue) getMinimumAccessibleValue*() : java_lang.Number,NEW,ABSTRACT;

    PROCEDURE (self:AccessibleValue) setCurrentAccessibleValue*(p0 : java_lang.Number) : BOOLEAN,NEW,ABSTRACT;

    END javax_accessibility.