home *** CD-ROM | disk | FTP | other *** search
- import java.awt.Color;
- import java.awt.Font;
- import java.util.StringTokenizer;
-
- public class JDPSourceEdit extends JDPRichText {
- String[] thisToken;
- Color[] thisTokenColor;
- int[] thisTokenLength;
- int[] thisTokenPos;
- Font thisFont;
- int[] tempStartPos;
- String totalTokens;
- StringTokenizer stok;
-
- void loadTokens() {
- int var1 = 0;
- this.thisToken = new String[33];
- this.thisTokenColor = new Color[33];
- this.thisTokenLength = new int[33];
- this.thisTokenPos = new int[500];
- this.thisToken[var1] = "/*";
- this.thisTokenColor[var1++] = JDPUtils.darker(JDPUtils.darker(Color.green));
- this.thisToken[var1] = "//";
- this.thisTokenColor[var1++] = JDPUtils.darker(JDPUtils.darker(Color.green));
- this.thisToken[var1] = "class";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "public";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "private";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "static";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "final";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "void";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "new";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "for";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "null";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "int";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "float";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "long";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "byte";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "boolean";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "true";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "false";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "while";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "if";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "else";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "switch";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "case";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "default";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "this";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "try";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "catch";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "throws";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "class";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "extends";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "import";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "implements";
- this.thisTokenColor[var1++] = Color.blue;
- this.thisToken[var1] = "return";
- this.thisTokenColor[var1++] = Color.blue;
- this.totalTokens = "";
- int var2 = 0;
-
- for(int var36 = 0; var36 < this.thisToken.length; ++var36) {
- this.thisTokenLength[var36] = this.thisToken[var36].length();
- String var69 = this.totalTokens;
- this.totalTokens = var69 + this.thisToken[var36] + " ";
- this.thisTokenPos[var2] = var36;
- var2 += this.thisTokenLength[var36] + 1;
- }
-
- }
-
- public JDPSourceEdit(JDPUser var1) {
- super.user = var1;
- super.indent = 0;
- super.wrapOn = false;
- this.thisFont = new Font("Courier", 0, 12);
- super.startPos = new int[100];
- super.startPos[0] = 0;
- this.tempStartPos = new int[1];
- ((JDPRichText)this).init();
- this.loadTokens();
- }
-
- public synchronized void formatText() {
- int var1 = 0;
- int var2 = 0;
- int var3 = -1;
- boolean var4 = false;
- boolean var5 = false;
- String var6 = super.text.getText();
- int var7 = this.tempStartPos.length;
- if (var7 < super.startPos.length) {
- this.tempStartPos = new int[var7 + 100];
- super.font = new Font[var7 + 100];
- super.color = new Color[var7 + 100];
- }
-
- this.tempStartPos[var2] = 0;
- super.font[var2] = this.thisFont;
- super.color[var2] = Color.black;
- this.stok = new StringTokenizer(var6, "\r\n\t !%*()-+=|\\[]{};:\"'<>,/", true);
- int var8 = this.stok.countTokens();
-
- for(int var9 = 0; var9 < var8; ++var9) {
- String var10 = this.stok.nextToken();
- if (var10.length() > 1 && this.totalTokens.indexOf(var10 + " ") >= 0) {
- var3 = this.thisTokenPos[this.totalTokens.indexOf(var10 + " ")];
- if (var2 + 2 > this.tempStartPos.length) {
- int[] var11 = this.tempStartPos;
- this.tempStartPos = new int[var2 + 100];
- System.arraycopy(var11, 0, this.tempStartPos, 0, var2);
- Font[] var12 = super.font;
- super.font = new Font[var2 + 100];
- System.arraycopy(var12, 0, super.font, 0, var2);
- Color[] var13 = super.color;
- super.color = new Color[var2 + 100];
- System.arraycopy(var13, 0, super.color, 0, var2);
- }
-
- this.tempStartPos[var2] = var1;
- super.font[var2] = this.thisFont;
- super.color[var2++] = this.thisTokenColor[var3];
- super.color[var2] = Color.black;
- super.font[var2] = this.thisFont;
- this.tempStartPos[var2] = var1 + var10.length();
- var4 = true;
- var5 = true;
- } else {
- if (var2 == 0) {
- var2 = 1;
- }
-
- if (var5) {
- super.color[var2] = Color.black;
- super.font[var2] = this.thisFont;
- this.tempStartPos[var2] = var1;
- ++var2;
- var5 = false;
- }
- }
-
- var1 += var10.length();
- }
-
- if (!var4) {
- var2 = 1;
- super.startPos = new int[var2];
- super.font[0] = this.thisFont;
- super.color[0] = Color.black;
- } else {
- --var2;
- super.startPos = new int[var2];
- System.arraycopy(this.tempStartPos, 0, super.startPos, 0, var2);
- }
- }
- }
-