... <- Box <- Window <- TitledWindow <- GadgetWindow <- Keyboard |
|
|
BlankSetCaps CapsRequest CompositionBuffer CurrentPanel HardwareKeyboardPresent LastPeriod NativePanelNumber PanelNumber SavedTool |
Define Class Keyboard; inherits from GadgetWindow; abstract; field currentPanel: InputPanel, getter, setter; // the currently active InputPanel object. field inputPanelList: ObjectList; field controlList: ObjectList; // the controls in this list become the subviews of the currentPanel. field accessoryEnabled: Boolean; field hardwareKeyboardPresent: Boolean, getter, setter; field capsRequest: Boolean, getter; // one shot CAPS request. The next char is shifted if capsRequest is TRUE. // This flag is disabled automatically after inputing next char. field blankSetCaps: Boolean, getter, setter; // if TRUE, the next char after a whitespace is shifted. field lastPeriod: Boolean, getter, setter; // indicates wether the last char was period. If TRUE, the next char is shifted. field nativePanelNumber: UnsignedShort, getter, setter; // most recently used native panel number. field panelNumber: UnsignedShort, getter; // currently active panel number. field gadgetImage: Image; field accessory: Viewable; // label maker field savedTool: Tool, getter, setter; field compositionBuffer: Character, getter, setter; // memorize the previous char for char composistion. (ex) 'e' + 'umraut' -> 'umraut e'. operation EnableAccessory(); attribute HardwareKeyboardPresent: Boolean; attribute CapsRequest: Boolean; attribute BlankSetCaps: Boolean; operation ClearState(); // clear internal flags attribute LastPeriod: Boolean; operation SwitchToSimpleKeyboard(); // do nothing in default attribute PanelNumber: UnsignedShort; operation SetInputCharacterSet(characterSet: UnsignedShort), noMethod; // each TextField requests what kind of charSet to input. // possible charSet are defined in Utilities.h. operation PanelNumber2PanelObject(panelNumber: UnsignedShort): InputPanel; attribute NativePanelNumber: UnsignedShort; attribute CurrentPanel: InputPanel; attribute SavedTool: Tool; attribute CompositionBuffer: Character; operation ComposeKeys(previousKey: Character; thisKey: Character): Character; operation TypeOutCharacters(count: Unsigned; input: ReadOnlyCharactersPointer): Unsigned; operation InputCharacters(count: Unsigned; characters: ReadOnlyCharactersPointer; optionKeys: ReadOnlyBytePointer): Unsigned; // optionKeys is nil if optionKey information is not available operation TypeOutBufferedCharacters(), noFail; // do nothing in default overrides BringToFront, CanAccept; overrides BalloonDot; overrides Idle; overrides Notice; overrides Show; overrides Appear, Disappear; end class;