Source code: com/barteo/emulator/device/InputMethod.java
1 /*
2 * MicroEmulator
3 * Copyright (C) 2001 Bartek Teodorczyk <barteo@it.pl>
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 */
19
20 package com.barteo.emulator.device;
21
22 import javax.microedition.lcdui.TextField;
23
24
25 public abstract class InputMethod
26 {
27
28 public static final int INPUT_NONE = 0;
29 public static final int INPUT_123 = 1;
30 public static final int INPUT_ABC_UPPER = 2;
31 public static final int INPUT_ABC_LOWER = 3;
32
33 static InputMethod inputMethod = null;
34 int inputMode = INPUT_NONE;
35
36 protected InputMethodListener inputMethodListener = null;
37 protected int constraints = TextField.ANY;
38 protected String text;
39 protected int caret;
40 protected int maxSize;
41
42
43 public abstract void keyPressed(int keyCode);
44
45 public abstract void keyReleased(int keyCode);
46
47
48 public void removeInputMethodListener(InputMethodListener l)
49 {
50 if (l == inputMethodListener) {
51 inputMethodListener = null;
52 setInputMode(INPUT_NONE);
53 }
54 }
55
56
57 public void setInputMethodListener(InputMethodListener l)
58 {
59 inputMethodListener = l;
60 setInputMode(INPUT_ABC_UPPER);
61 text = "";
62 caret = 0;
63 }
64
65
66 public void setConstraints(int aconstraints)
67 {
68 constraints = aconstraints;
69 }
70
71
72 public int getInputMode()
73 {
74 return inputMode;
75 }
76
77
78 public void setInputMode(int mode)
79 {
80 inputMode = mode;
81 }
82
83
84 public void setText(String text)
85 {
86 this.text = text;
87 caret = text.length();
88 }
89
90
91 public void setMaxSize(int maxSize)
92 {
93 this.maxSize = maxSize;
94 }
95
96 }