home *** CD-ROM | disk | FTP | other *** search
- import java.awt.TextComponent;
- import java.awt.TextField;
-
- public class JDPMaskEdit {
- public String getDecimalChar(String var1) {
- if (var1 == null) {
- return ".";
- } else {
- int var2 = var1.lastIndexOf(".");
- int var3 = var1.lastIndexOf(",");
- if (var3 > 0 && var3 > var2 && var2 >= 0) {
- return ",";
- } else {
- return var2 > 0 && var2 > var3 ? "." : ".";
- }
- }
- }
-
- public char getCommaChar(String var1) {
- if (var1 == null) {
- return ',';
- } else {
- int var2 = var1.lastIndexOf(".");
- int var3 = var1.lastIndexOf(",");
- if (var3 > 0 && var3 > var2 && var2 >= 0) {
- return '.';
- } else {
- return (char)(var2 > 0 && var2 > var3 ? ',' : ',');
- }
- }
- }
-
- public String stripFloat(TextField var1) {
- String var2 = this.getDecimalChar(((TextComponent)var1).getText());
- char var3 = var2.charAt(0);
- String var4 = ((TextComponent)var1).getText();
- String var5 = "";
-
- for(int var6 = 0; var6 < var4.length(); ++var6) {
- if ((Character.isDigit(var4.charAt(var6)) || var4.charAt(var6) == var3 || var4.charAt(var6) == '-') && (var5.length() > 0 || var4.length() <= var6 + 1 || var4.charAt(var6) != '0' || var4.charAt(var6 + 1) != '0')) {
- var5 = var5 + var4.substring(var6, var6 + 1);
- }
- }
-
- return var5.replace(',', '.');
- }
-
- public String stripFloat(String var1) {
- TextField var2 = new TextField(var1);
- return this.stripFloat(var2);
- }
-
- public String stripFloat(JDPSpinner var1) {
- TextField var2 = new TextField(var1.getText());
- return this.stripFloat(var2);
- }
-
- public void formatString(TextField var1, String var2) {
- if (var2 != null && !var2.equals("")) {
- int var3 = ((TextComponent)var1).getSelectionStart();
- String var4 = ((TextComponent)var1).getText();
- String var5 = "";
- int var6 = 0;
-
- for(int var7 = 0; var7 < var2.length(); ++var7) {
- while(var6 < var2.length() && var2.charAt(var6) != '_') {
- var5 = var5 + var2.substring(var6, var6 + 1);
- ++var6;
- if (var6 <= var3) {
- ++var3;
- }
- }
-
- if (var4.length() > var7) {
- if (var2.indexOf(var4.substring(var7, var7 + 1)) < 0) {
- var5 = var5 + var4.substring(var7, var7 + 1);
- ++var6;
- } else if (var3 > var6) {
- --var3;
- }
- }
- }
-
- ((TextComponent)var1).setText(var5);
-
- try {
- if (System.getProperty("java.vendor").startsWith("Microsoft") && !System.getProperty("java.version").startsWith("1.0")) {
- ((TextComponent)var1).setCaretPosition(var3);
- } else {
- ((TextComponent)var1).select(var3, var3);
- }
- } catch (Exception var8) {
- }
- }
- }
-
- public String formatString(String var1, String var2) {
- TextField var3 = new TextField(var1);
- this.formatString(var3, var2);
- return ((TextComponent)var3).getText();
- }
-
- public String formatString(JDPTextGrid var1, String var2) {
- return this.formatString(var1, var1.getCurrentColumn(), var1.getCurrentRow(), var2);
- }
-
- public String formatString(JDPTextGrid var1, int var2, int var3, String var4) {
- TextField var5 = new TextField(var1.getText(var2, var3));
-
- try {
- if (System.getProperty("java.vendor").startsWith("Microsoft") && !System.getProperty("java.version").startsWith("1.0")) {
- ((TextComponent)var5).setCaretPosition(var1.getSelectionStart());
- ((TextComponent)var5).setSelectionStart(var1.getSelectionStart());
- ((TextComponent)var5).setSelectionEnd(var1.getSelectionEnd());
- } else {
- ((TextComponent)var5).select(var1.getSelectionStart(), var1.getSelectionEnd());
- }
- } catch (Exception var6) {
- }
-
- this.formatString(var5, var4);
- var1.setText(((TextComponent)var5).getText(), var2, var3);
- var1.select(((TextComponent)var5).getSelectionStart(), ((TextComponent)var5).getSelectionEnd());
- return ((TextComponent)var5).getText();
- }
-
- public void formatFloat(TextField var1, String var2) {
- this.formatFloat(var1, var2, ((TextComponent)var1).getSelectionStart());
- }
-
- public void formatFloat(TextField var1, String var2, int var3) {
- if (var2 != null && !var2.equals("")) {
- String var4 = this.getDecimalChar(var2);
- char var5 = var4.charAt(0);
- char var6 = this.getCommaChar(var2);
- String var7 = ((TextComponent)var1).getText();
- String var8 = "";
- int var9 = 0;
-
- for(int var10 = 0; var10 < var7.length(); ++var10) {
- if (!Character.isDigit(var7.charAt(var10)) && var7.charAt(var10) != var5 || var8.length() <= 0 && var7.length() > var10 + 1 && var7.charAt(var10) == '0' && var7.charAt(var10 + 1) == '0') {
- if (var10 < var3) {
- ++var9;
- }
- } else {
- var8 = var8 + var7.substring(var10, var10 + 1);
- }
- }
-
- var3 -= var9;
- String var21 = "";
- int var11 = 0;
- String var12 = "";
- String var13 = "";
- int var14 = var8.indexOf(var4);
- if (var14 > 0) {
- var13 = var8.substring(var14 + 1);
- var12 = var8.substring(0, var14);
- } else if (var14 == 0) {
- var13 = var8.substring(var14 + 1);
- var12 = "0";
- } else {
- var12 = var8;
- }
-
- String var15 = "";
- String var16 = "";
- int var17 = var2.indexOf(var4);
- if (var17 >= 0) {
- var16 = var2.substring(var17 + 1);
- var15 = var2.substring(0, var17);
- } else {
- var15 = var2;
- }
-
- var11 = var15.length() - 1;
-
- for(int var18 = var12.length() - 1; var18 >= 0 && var11 >= 0 && var11 < var15.length(); --var18) {
- while(var11 >= 0 && var15.charAt(var11) != '_' && var15.charAt(var11) != '0' && var15.charAt(var11) != '9') {
- if (var21.length() <= var3 + 1) {
- ++var3;
- }
-
- var21 = var15.substring(var11, var11 + 1) + var21;
- --var11;
- }
-
- if (var11 >= 0) {
- var21 = var12.substring(var18, var18 + 1) + var21;
- --var11;
- } else if (var11 < 0) {
- --var3;
- }
- }
-
- for(; var11 >= 0; --var11) {
- if (var15.charAt(var11) != '_' && var15.charAt(var11) != var6 && var15.charAt(var11) != '0' && var15.charAt(var11) != '9') {
- var21 = var15.substring(var11, var11 + 1) + var21;
- ++var3;
- }
- }
-
- var11 = 0;
- if (var14 >= 0 && var17 >= 0) {
- var21 = var21 + var4;
-
- for(int var26 = 0; var26 < var13.length() && var11 < var16.length(); ++var26) {
- while(var11 < var16.length() && var16.charAt(var11) != '_' && var16.charAt(var11) != '0' && var16.charAt(var11) != '9') {
- var21 = var21 + var16.substring(var11, var11 + 1);
- ++var11;
- }
-
- if (var11 < var16.length()) {
- var21 = var21 + var13.substring(var26, var26 + 1);
- ++var11;
- }
- }
- }
-
- for(boolean var27 = true; var11 < var16.length(); ++var11) {
- if (var16.charAt(var11) != '_' && var16.charAt(var11) != var6 && var16.charAt(var11) != '9') {
- if (var27 && var21.indexOf(var4) < 0) {
- var21 = var21 + var4;
- }
-
- var21 = var21 + var16.substring(var11, var11 + 1);
- }
- }
-
- if (var7.indexOf("-") >= 0) {
- var21 = "-" + var21;
- }
-
- ((TextComponent)var1).setText(var21);
-
- try {
- ((TextComponent)var1).select(var3, var3);
- if (System.getProperty("java.vendor").startsWith("Microsoft") && !System.getProperty("java.version").startsWith("1.0")) {
- ((TextComponent)var1).setCaretPosition(var3);
- } else {
- ((TextComponent)var1).select(var3, var3);
- }
- } catch (Exception var19) {
- }
- }
- }
-
- public String formatFloat(String var1, String var2) {
- String var3 = this.getDecimalChar(var2);
- if (var3.equals(",")) {
- var1 = var1.replace('.', '#');
- var1 = var1.replace(',', '.');
- var1 = var1.replace('#', ',');
- }
-
- TextField var4 = new TextField(var1);
- this.formatFloat(var4, var2);
- return ((TextComponent)var4).getText();
- }
-
- public String formatFloat(JDPSpinner var1, String var2) {
- TextField var3 = new TextField(var1.getText());
- this.formatFloat(var3, var2);
- return ((TextComponent)var3).getText();
- }
-
- public String formatFloat(float var1, String var2) {
- String var3 = this.getDecimalChar(var2);
- String var4 = (new Float(var1)).toString();
- TextField var5;
- if (var4.indexOf("E") > 0) {
- int var6 = (int)(var1 / 1000000.0F);
- float var7 = var1 - (float)(var6 * 1000000);
- var5 = new TextField(Integer.toString(var6) + (new Float(var7)).toString());
- } else {
- var5 = new TextField((new Float(var1)).toString());
- }
-
- this.formatFloat(var5, var2);
- String var8 = ((TextComponent)var5).getText();
- if (var8.endsWith(var3)) {
- var8 = var8.substring(0, var8.length() - 1);
- }
-
- return var8;
- }
-
- public String formatFloat(double var1, String var3) {
- String var4 = this.getDecimalChar(var3);
- String var5 = (new Double(var1)).toString();
- TextField var6;
- if (var5.indexOf("E") > 0) {
- int var7 = (int)(var1 / (double)1000000.0F);
- double var8 = var1 - (double)(var7 * 1000000);
- var6 = new TextField(Integer.toString(var7) + (new Double(var8)).toString());
- } else {
- var6 = new TextField((new Double(var1)).toString());
- }
-
- this.formatFloat(var6, var3);
- String var10 = ((TextComponent)var6).getText();
- if (var10.endsWith(var4)) {
- var10 = var10.substring(0, var10.length() - 1);
- }
-
- return var10;
- }
-
- public String formatFloat(JDPTextGrid var1, String var2) {
- return this.formatFloat(var1, var1.getCurrentColumn(), var1.getCurrentRow(), var2);
- }
-
- public String formatFloat(JDPTextGrid var1, int var2, int var3, String var4) {
- String var5 = var1.getText(var2, var3);
- String var6 = this.getDecimalChar(var4);
- String var7 = this.getDecimalChar(var5);
- if (var6.equals(",") && var7.equals(".")) {
- var5 = var5.replace('.', '#');
- var5 = var5.replace(',', '.');
- var5 = var5.replace('#', ',');
- }
-
- TextField var8 = new TextField(var5);
- this.formatFloat(var8, var4, var1.getSelectionStart());
- var1.setText(((TextComponent)var8).getText(), var2, var3);
- var1.select(((TextComponent)var8).getSelectionStart(), ((TextComponent)var8).getSelectionEnd());
- return ((TextComponent)var8).getText();
- }
- }
-