| java.lang.Object com.sun.midp.chameleon.input.BasicTextInputSession
BasicTextInputSession | public class BasicTextInputSession implements TextInputSession,InputModeMediator(Code) | | The BasicTextInputSession represents the relationship between the
system's key input, the TextInputComponent, the available InputModes,
and the graphical display.
|
Method Summary | |
public void | beginSession(TextInputComponent component) Start a text input session for the given TextInputComponent. | public void | clear(int num) | public void | commit(String input) Called by an InputMode in order to automatically commit the given
input to the Text component. | public void | endSession() End the current text input session and do not commit any pending
characters to the buffer. | public InputMode[] | getAvailableModes() List the appropriate InputModes available for the current input
session. | public int | getAvailableSize() Returns the available size (number of characters) that can be
stored in this TextInputComponent . | public InputMode | getCurrentInputMode() Retrieve the InputMode which is the current "active" mode
for this TextInputSession. | public String[] | getMatchList() | public String | getNextMatch() An iterative method to return the next available match given
the key processing thus far. | public char | getPendingChar() return the pending char
used to bypass the asynchronous commit mechanism
e.g. | public boolean | hasMoreMatches() If the InputMode supports multiple matches and more matches are
available this method will return true, false otherwise. | public void | inputModeCompleted() Called by an InputMode in order to signal that the input process
has been completed with respect to the InputMode. | public boolean | isClearKey(int keyCode) | public boolean | isSymbol(char c) Check if the given char is symbol
Parameters: c - char true if the char is symbol otherwise false. | public int | processKey(int keyCode, boolean longPress) This method abstracts key processing to a single call (from
the assorted key press, release, repeat events). | protected void | selectInputMode() Based on the constraints of the current TextInputComponent,
select the most appropriate InputMode from the list available. | public void | setCurrentInputMode(InputMode mode) Set this TextInputSession's current "active" InputMode to the
given mode. | public void | subInputModeChanged() Called by an InputMode to inform a TextComponent of a sub-inputMode
change. |
currentMode | protected InputMode currentMode(Code) | | The currently "active" InputMode
|
inputModeSet | protected InputMode[] inputModeSet(Code) | | The set of all possible InputModes
|
stickyMode | protected InputMode stickyMode(Code) | | If the user has specifically chosen an InputMode, that choice
becomes sticky when the InputSession chooses the InputMode to
make active.
|
BasicTextInputSession | public BasicTextInputSession()(Code) | | Construct a new BasicTextInputSession
|
beginSession | public void beginSession(TextInputComponent component)(Code) | | Start a text input session for the given TextInputComponent.
The TextInputComponent can be used to determine the initial
input mode, constraints, etc.
Parameters: component - the TextInputComponent which is receiving text input |
clear | public void clear(int num)(Code) | | Clear the particular number of symbols
Parameters: num - number of symbols |
commit | public void commit(String input)(Code) | | Called by an InputMode in order to automatically commit the given
input to the Text component. For example, when the timer expires
in an AlphaNumeric InputMode it will commit the current pending
character.
Parameters: input - text to commit |
endSession | public void endSession()(Code) | | End the current text input session and do not commit any pending
characters to the buffer.
|
getAvailableModes | public InputMode[] getAvailableModes()(Code) | | List the appropriate InputModes available for the current input
session. This method may be used by UI components in order to make
certain input mode choices available to the user for selection.
If this handler is not currently in an active text input session,
this method returns null.
an array of InputModes which are available to use given thecurrent TextInputComponent and its input constraints |
getAvailableSize | public int getAvailableSize()(Code) | | Returns the available size (number of characters) that can be
stored in this TextInputComponent .
available size in characters |
getCurrentInputMode | public InputMode getCurrentInputMode()(Code) | | Retrieve the InputMode which is the current "active" mode
for this TextInputSession. This does not necessarily mean there is
any pending input with the InputMode itself, it means that if this
TextInputSession receives key input, the returned InputMode will be
the mode which processes that input.
the currently "active" InputMode |
getMatchList | public String[] getMatchList()(Code) | | Gets the possible string matches
returns the set of options. |
getNextMatch | public String getNextMatch()(Code) | | An iterative method to return the next available match given
the key processing thus far. If the return value of hasMoreMatches()
is true, this method will return a non-null String and will iterate
through the entire set of available matches until the set is exhausted.
Each subsequent call to processKey() will reset the iterator over
the set of available matches regardless if the key resulted in a change
to the set.
The two methods, hasMoreMatches() and getNextMatch(), can be used by
the User Interface system to retrieve the current set of pending inputs
and possibly present a chooser option to the user.
a String representing the best possible pendinginput, or null, if there is no pending input |
getPendingChar | public char getPendingChar()(Code) | | return the pending char
used to bypass the asynchronous commit mechanism
e.g. to immediately commit a char before moving the cursor
return the pending char |
hasMoreMatches | public boolean hasMoreMatches()(Code) | | If the InputMode supports multiple matches and more matches are
available this method will return true, false otherwise.
true if the current InputMode supports multiple matches andthere are currently more matches available |
inputModeCompleted | public void inputModeCompleted()(Code) | | Called by an InputMode in order to signal that the input process
has been completed with respect to the InputMode. Subsequent key
input should be handled in a new input session, possibly by the
same InputMode or by a different InputMode alltogether. For example,
when the timer expires in an AlphaNumeric InputMode, the character
is committed and the AlphaNumeric InputMode signals its completion.
Further key input may start a new session with the AlphaNumeric
InputMode or possibly some other InputMode.
|
isClearKey | public boolean isClearKey(int keyCode)(Code) | | Returns true if the keyCode is used as 'clear'
Parameters: keyCode - key code true if keu code is Clear one, false otherwise |
isSymbol | public boolean isSymbol(char c)(Code) | | Check if the given char is symbol
Parameters: c - char true if the char is symbol otherwise false. |
processKey | public int processKey(int keyCode, boolean longPress)(Code) | | This method abstracts key processing to a single call (from
the assorted key press, release, repeat events). This method
should be called from the TextInputComponent to pass along
key input from the user. The TextInputComponent is responsible
for determining what key events should be processed (ie,
key events trigger processing on press or on release).
Parameters: keyCode - the numeric code representing the key which waspressed Parameters: longPress - return true if it's long key press otherwise false true if the current InputMode processed the key event,false if the key was not processed at all by the currentInputMode (not all keys apply to input) |
selectInputMode | protected void selectInputMode()(Code) | | Based on the constraints of the current TextInputComponent,
select the most appropriate InputMode from the list available.
This method will also start the session with the InputMode by
calling the InputMode's beginInput() method.
|
setCurrentInputMode | public void setCurrentInputMode(InputMode mode)(Code) | | Set this TextInputSession's current "active" InputMode to the
given mode. The given mode must be one of the InputModes listed
in the array of InputModes returned from the getAvailableModes()
method of this TextInputSession. Calling this method will terminate
any existing input session with the current InputMode and will
result in any subsequent key input being processed by the given
InputMode. If the given mode is already the current "active"
InputMode, this method has no effect. If this TextInputSession
is not currently in an input session (ie, there is no active
TextInputComponent), this method has no effect.
Parameters: mode - the InputMode to switch key processing to |
subInputModeChanged | public void subInputModeChanged()(Code) | | Called by an InputMode to inform a TextComponent of a sub-inputMode
change.
|
|
|