home *** CD-ROM | disk | FTP | other *** search
/ All for Cell Phones: Sony Ericsson / Sony-Ericsson 2004.iso / Java / cellhtml / CellHtml.jar / KbdTextBox.class (.txt) < prev    next >
Encoding:
Java Class File  |  2001-09-20  |  6.7 KB  |  252 lines

  1. import javax.microedition.lcdui.Canvas;
  2. import javax.microedition.lcdui.Font;
  3. import javax.microedition.lcdui.Graphics;
  4. import javax.microedition.lcdui.Image;
  5.  
  6. class KbdTextBox extends Canvas {
  7.    String text;
  8.    int CanvasWidth;
  9.    int CanvasHeight;
  10.    Font font = null;
  11.    boolean password;
  12.    // $FF: renamed from: ─É javax.microedition.lcdui.Image
  13.    Image field_0 = null;
  14.    // $FF: renamed from: ─æ javax.microedition.lcdui.Graphics
  15.    Graphics field_1 = null;
  16.    // $FF: renamed from: ─Æ int
  17.    int field_2 = 0;
  18.    // $FF: renamed from: pp java.lang.String[][][]
  19.    String[][][] field_3;
  20.    // $FF: renamed from: up java.lang.String[][][]
  21.    String[][][] field_4 = new String[][][]{{{"1", "2", "3"}, {"4", "5", "6"}, {"7", "8", "9"}, {"<-", "0", "."}}, {{"A", "B", "C"}, {"D", "E", "F"}, {"G", "H", "I"}, {"<-", "J", "K"}}, {{"L", "M", "N"}, {"O", "P", "Q"}, {"R", "S", "T"}, {"<-", "U", "V"}}, {{"W", "X", "Y"}, {"Z", ",", ";"}, {":", "?", "&"}, {"<-", "!", " "}}, {{"\"", "'", "`"}, {"~", "{", "}"}, {"^", "[", "]"}, {"<-", "(", ")"}}};
  22.    // $FF: renamed from: lp java.lang.String[][][]
  23.    String[][][] field_5 = new String[][][]{{{"1", "2", "3"}, {"4", "5", "6"}, {"7", "8", "9"}, {"<-", "0", "."}}, {{"a", "b", "c"}, {"d", "e", "f"}, {"g", "h", "i"}, {"<-", "j", "k"}}, {{"l", "n", "m"}, {"o", "p", "q"}, {"r", "s", "t"}, {"<-", "u", "v"}}, {{"w", "x", "y"}, {"z", ",", ";"}, {":", "?", "&"}, {"<-", "!", " "}}, {{"+", "-", "*"}, {"/", "\\", "%"}, {"=", "#", "$"}, {"<-", "@", "_"}}};
  24.  
  25.    KbdTextBox() {
  26.       this.init("");
  27.    }
  28.  
  29.    KbdTextBox(String var1) {
  30.       this.init(var1);
  31.    }
  32.  
  33.    void init(String var1) {
  34.       this.text = var1;
  35.       this.CanvasWidth = MapCanvas.CanvasWidth;
  36.       this.CanvasHeight = MapCanvas.CanvasHeight;
  37.       this.password = false;
  38.       this.field_3 = this.field_4;
  39.       this.field_0 = Image.createImage(this.CanvasWidth, this.CanvasHeight);
  40.       this.field_1 = this.field_0.getGraphics();
  41.    }
  42.  
  43.    public String getString() {
  44.       return this.text;
  45.    }
  46.  
  47.    public void setString(String var1) {
  48.       this.text = var1;
  49.    }
  50.  
  51.    public void setPassword(boolean var1) {
  52.       this.password = var1;
  53.    }
  54.  
  55.    int strWidth(String var1) {
  56.       return this.font.stringWidth(var1);
  57.    }
  58.  
  59.    int strHeight() {
  60.       return this.font.getHeight();
  61.    }
  62.  
  63.    public void paint(Graphics var1) {
  64.       if (this.font == null) {
  65.          this.font = var1.getFont();
  66.       }
  67.  
  68.       int var2 = this.strHeight();
  69.       byte var3 = 64;
  70.       int var4 = 4 * var2 + 5;
  71.       int var5 = (this.CanvasWidth - var3) / 2;
  72.       int var6 = (this.CanvasHeight - var4 + var2) / 2 + 1;
  73.       if (var6 <= var2 + 2) {
  74.          var6 = var2 + 2;
  75.       }
  76.  
  77.       this.field_1.setColor(16777215);
  78.       this.field_1.fillRect(0, 0, this.CanvasWidth, this.CanvasHeight);
  79.       this.field_1.setColor(0);
  80.       this.field_1.drawRect(0, 0, this.CanvasWidth - 1, var2 + 2);
  81.       int var7 = this.CanvasWidth - 4;
  82.       String var8;
  83.       if (this.password) {
  84.          var8 = "";
  85.  
  86.          for(int var9 = 0; var9 < this.text.length(); ++var9) {
  87.             var8 = var8 + "*";
  88.          }
  89.       } else {
  90.          var8 = this.text;
  91.       }
  92.  
  93.       if (this.strWidth(var8) <= var7) {
  94.          this.field_1.drawString(var8, 2, 2, 20);
  95.       } else {
  96.          while(this.strWidth(var8) > var7) {
  97.             var8 = var8.substring(1, var8.length());
  98.          }
  99.  
  100.          this.field_1.drawString(var8, 2, 2, 20);
  101.       }
  102.  
  103.       if (this.field_2 != 5) {
  104.          this.field_1.setColor(12632256);
  105.          this.field_1.fillRect(var5, var6, var3, var4);
  106.          this.field_1.setColor(0);
  107.          this.field_1.drawRect(var5, var6, var3, var4);
  108.  
  109.          for(int var16 = 1; var16 < 3; ++var16) {
  110.             this.field_1.drawLine(var5 + 21 * var16, var6, var5 + 21 * var16, var6 + var4);
  111.          }
  112.  
  113.          for(int var10 = 1; var10 < 4; ++var10) {
  114.             this.field_1.drawLine(var5, var6 + (var2 + 1) * var10, var5 + var3, var6 + (var2 + 1) * var10);
  115.          }
  116.  
  117.          for(int var11 = 0; var11 < 4; ++var11) {
  118.             for(int var12 = 0; var12 < 3; ++var12) {
  119.                if (var11 == 3 && var12 == 0) {
  120.                   for(int var13 = 0; var13 < 6; ++var13) {
  121.                      int var14 = var5 + 21 * var12 + var13 + 7;
  122.                      int var15 = var6 + (var2 + 1) * var11 + var2 / 2 + 1;
  123.                      this.field_1.drawLine(var14, var15 - var13, var14, var15 + var13);
  124.                   }
  125.                } else {
  126.                   this.field_1.drawString(this.field_3[this.field_2][var11][var12], var5 + 11 + 21 * var12, var6 + (var2 + 1) * var11 + 2, 17);
  127.                }
  128.             }
  129.          }
  130.       } else {
  131.          this.field_1.drawString("MIDP-KBD 1.0", this.CanvasWidth / 2, var2 * 2 + 6, 17);
  132.          this.field_1.drawString("JShape Software", this.CanvasWidth / 2, var2 * 4, 17);
  133.       }
  134.  
  135.       var1.setClip(0, 0, this.CanvasWidth, this.CanvasHeight);
  136.       var1.drawImage(this.field_0, 0, 0, 20);
  137.    }
  138.  
  139.    // $FF: renamed from: ─É (java.lang.String) void
  140.    void method_0(String var1) {
  141.       this.text = this.text + var1;
  142.    }
  143.  
  144.    // $FF: renamed from: ─æ () void
  145.    void method_1() {
  146.       int var1 = this.text.length();
  147.       if (var1 > 0) {
  148.          this.text = this.text.substring(0, var1 - 1);
  149.       }
  150.  
  151.    }
  152.  
  153.    public void keyProc(int var1) {
  154.       int var2 = ((Canvas)this).getGameAction(var1);
  155.       if (var2 == 5) {
  156.          if (this.field_2 < 4) {
  157.             ++this.field_2;
  158.          } else {
  159.             this.field_2 = 0;
  160.          }
  161.       }
  162.  
  163.       if (var2 == 2) {
  164.          if (this.field_2 > 0) {
  165.             --this.field_2;
  166.          } else {
  167.             this.field_2 = 4;
  168.          }
  169.       }
  170.  
  171.       if (var2 == 1) {
  172.          if (this.field_3 == this.field_4) {
  173.             return;
  174.          }
  175.  
  176.          this.field_3 = this.field_4;
  177.       }
  178.  
  179.       if (var2 == 6) {
  180.          if (this.field_3 == this.field_5) {
  181.             return;
  182.          }
  183.  
  184.          this.field_3 = this.field_5;
  185.       }
  186.  
  187.       if (var2 == 8) {
  188.          this.field_2 = 5;
  189.       }
  190.  
  191.       if (this.field_2 != 5) {
  192.          if (var1 == 49) {
  193.             this.method_0(this.field_3[this.field_2][0][0]);
  194.          }
  195.  
  196.          if (var1 == 50) {
  197.             this.method_0(this.field_3[this.field_2][0][1]);
  198.          }
  199.  
  200.          if (var1 == 51) {
  201.             this.method_0(this.field_3[this.field_2][0][2]);
  202.          }
  203.  
  204.          if (var1 == 52) {
  205.             this.method_0(this.field_3[this.field_2][1][0]);
  206.          }
  207.  
  208.          if (var1 == 53) {
  209.             this.method_0(this.field_3[this.field_2][1][1]);
  210.          }
  211.  
  212.          if (var1 == 54) {
  213.             this.method_0(this.field_3[this.field_2][1][2]);
  214.          }
  215.  
  216.          if (var1 == 55) {
  217.             this.method_0(this.field_3[this.field_2][2][0]);
  218.          }
  219.  
  220.          if (var1 == 56) {
  221.             this.method_0(this.field_3[this.field_2][2][1]);
  222.          }
  223.  
  224.          if (var1 == 57) {
  225.             this.method_0(this.field_3[this.field_2][2][2]);
  226.          }
  227.  
  228.          if (var1 == 42) {
  229.             this.method_1();
  230.          }
  231.  
  232.          if (var1 == 48) {
  233.             this.method_0(this.field_3[this.field_2][3][1]);
  234.          }
  235.  
  236.          if (var1 == 35) {
  237.             this.method_0(this.field_3[this.field_2][3][2]);
  238.          }
  239.       }
  240.  
  241.       ((Canvas)this).repaint();
  242.    }
  243.  
  244.    public void keyPressed(int var1) {
  245.       this.keyProc(var1);
  246.    }
  247.  
  248.    public void keyRepeated(int var1) {
  249.       this.keyProc(var1);
  250.    }
  251. }
  252.