home *** CD-ROM | disk | FTP | other *** search
/ Internet Magazine 2002 June / INTERNET92.ISO / pc / software / windows / building / visual_dhtml / visualdhtmlwin2000.exe / ACutil.___ (.txt) < prev    next >
Encoding:
Java Class File  |  2001-10-19  |  6.5 KB  |  513 lines

  1. import java.awt.Color;
  2. import java.awt.Component;
  3. import java.awt.Image;
  4. import java.awt.MediaTracker;
  5. import java.awt.Panel;
  6. import java.io.File;
  7.  
  8. class ACutil extends Panel {
  9.    static String appletViewerPath = "";
  10.  
  11.    public static String GetBetweenTags(String var0, String var1, String var2) {
  12.       int var3 = 0;
  13.       int var4 = 0;
  14.       String var5 = var0.toLowerCase();
  15.       var4 = var5.indexOf(var1);
  16.       if (var4 != -1) {
  17.          var3 = var5.indexOf(var2, var4);
  18.          if (var3 != -1) {
  19.             return var0.substring(var4 + var1.length(), var3);
  20.          }
  21.       }
  22.  
  23.       return null;
  24.    }
  25.  
  26.    public String getImageDimensions(String var1) {
  27.       if (var1 != null && !var1.equals("")) {
  28.          if (var1.indexOf(":") == -1) {
  29.             var1 = getAbsolutePath(var1);
  30.          }
  31.  
  32.          Image var2;
  33.          return (var2 = this.trackReturn(var1)) != null ? var2.getWidth(this) + "," + var2.getHeight(this) : null;
  34.       } else {
  35.          return null;
  36.       }
  37.    }
  38.  
  39.    public Image getDGImage(String var1) {
  40.       if (var1 != null && !var1.equals("")) {
  41.          if (var1.indexOf(":") == -1) {
  42.             var1 = getAbsoluteWorkingPath(var1);
  43.          }
  44.  
  45.          Image var2;
  46.          return (var2 = this.trackReturn(var1)) != null ? var2 : null;
  47.       } else {
  48.          return null;
  49.       }
  50.    }
  51.  
  52.    public static String getCurrentFileDirectoryPath() {
  53.       return (new File(getAbsolutePath("projects" + File.separator + "current"))).toString();
  54.    }
  55.  
  56.    public static void setAppletViewerPath(String var0) {
  57.       appletViewerPath = var0;
  58.    }
  59.  
  60.    public static String getAppletViewerPath() {
  61.       return appletViewerPath;
  62.    }
  63.  
  64.    public static String getAbsolutePath(String var0) {
  65.       String var1 = getClassPathOnly();
  66.       return var0.indexOf(":") == -1 ? var1 + File.separator + var0 : var0;
  67.    }
  68.  
  69.    public static String conditionallyAddEndFileSeparator(String var0) {
  70.       return !var0.substring(var0.length() - 1, var0.length()).equals(File.separator) ? var0 + File.separator : var0;
  71.    }
  72.  
  73.    public static String getAbsoluteFromRelativeHTML(String var0, String var1) {
  74.       if (var1.equals(".")) {
  75.          return var0;
  76.       } else if (var1.indexOf(":") > -1) {
  77.          return var1;
  78.       } else if (var1.indexOf("/") < 0) {
  79.          return var0 + File.separator + var1;
  80.       } else {
  81.          int var2 = 0;
  82.  
  83.          int var7;
  84.          for(var7 = 0; (var7 = var1.indexOf("../", var7)) != -1; ++var2) {
  85.             ++var7;
  86.          }
  87.  
  88.          int var4 = var1.lastIndexOf("../");
  89.          if (var4 > -1) {
  90.             var1 = var1.substring(var4 + File.separator.length() + 2);
  91.          }
  92.  
  93.          String var5 = var0;
  94.          if (var2 > 0) {
  95.             for(int var6 = var0.length(); var6 >= 0; --var6) {
  96.                if (var5.substring(var6 - 1, var6).equals(File.separator)) {
  97.                   --var2;
  98.                   var7 = var6;
  99.                   if (var2 <= 0) {
  100.                      break;
  101.                   }
  102.                }
  103.             }
  104.  
  105.             var5 = var5.substring(0, var7);
  106.          } else {
  107.             var5 = var0 + File.separator;
  108.          }
  109.  
  110.          String var9 = var5 + var1;
  111.          var9 = var9.replace('/', "\\".charAt(0));
  112.          return var9;
  113.       }
  114.    }
  115.  
  116.    private Image trackReturn(String var1) {
  117.       Object var2 = null;
  118.       MediaTracker var3 = new MediaTracker(this);
  119.       if (!var1.equals("-1")) {
  120.          Image var5 = ((Component)this).getToolkit().getImage((new File(var1)).getAbsolutePath());
  121.          var3.addImage(var5, 0);
  122.  
  123.          try {
  124.             var3.waitForID(0);
  125.          } catch (InterruptedException var4) {
  126.             return null;
  127.          }
  128.  
  129.          return !var3.isErrorID(0) ? var5 : null;
  130.       } else {
  131.          return null;
  132.       }
  133.    }
  134.  
  135.    public static String getAbsoluteFromRelative(String var0, String var1) {
  136.       if (var1.equals(".")) {
  137.          return var0;
  138.       } else if (var1.indexOf(":") > -1) {
  139.          return var1;
  140.       } else if (var1.indexOf(File.separator) < 0) {
  141.          return var0 + File.separator + var1;
  142.       } else {
  143.          int var2 = 0;
  144.  
  145.          int var7;
  146.          for(var7 = 0; (var7 = var1.indexOf(".." + File.separator, var7)) != -1; ++var2) {
  147.             ++var7;
  148.          }
  149.  
  150.          int var4 = var1.lastIndexOf(".." + File.separator);
  151.          if (var4 > -1) {
  152.             var1 = var1.substring(var4 + File.separator.length() + 2);
  153.          }
  154.  
  155.          String var5 = var0;
  156.          if (var2 > 0) {
  157.             for(int var6 = var0.length(); var6 >= 0; --var6) {
  158.                if (var5.substring(var6 - 1, var6).equals(File.separator)) {
  159.                   --var2;
  160.                   var7 = var6;
  161.                   if (var2 <= 0) {
  162.                      break;
  163.                   }
  164.                }
  165.             }
  166.  
  167.             var5 = var5.substring(0, var7);
  168.          } else {
  169.             var5 = var0 + File.separator;
  170.          }
  171.  
  172.          return var5 + var1;
  173.       }
  174.    }
  175.  
  176.    public static Color invertColor(Color var0) {
  177.       var0 = new Color(Color.white.getRGB() - var0.getRGB());
  178.       return var0;
  179.    }
  180.  
  181.    public static String GetBeforeTag(String var0, String var1) {
  182.       int var2 = 0;
  183.       String var3 = var0.toLowerCase();
  184.       var2 = var3.indexOf(var1);
  185.       return var2 != -1 ? var0.substring(0, var2) : "";
  186.    }
  187.  
  188.    public static String GetAfterTag(String var0, String var1) {
  189.       int var2 = 0;
  190.       String var3 = var0.toLowerCase();
  191.       var2 = var3.indexOf(var1);
  192.       return var2 != -1 ? var0.substring(var2 + var1.length()) : "";
  193.    }
  194.  
  195.    static String replaceEndChars(String var0) {
  196.       if (var0.length() > 2 && var0 != null) {
  197.          if (Character.isSpace(var0.charAt(0))) {
  198.             var0 = "|" + var0.substring(1);
  199.          }
  200.  
  201.          if (Character.isSpace(var0.charAt(var0.length() - 1))) {
  202.             var0 = var0.substring(0, var0.length() - 1) + "|";
  203.          }
  204.       }
  205.  
  206.       return var0;
  207.    }
  208.  
  209.    static String replaceEndChars(String var0, String var1, String var2) {
  210.       if (var0.length() > 2 && var0 != null) {
  211.          if (var0.substring(0, 1).equals(var1)) {
  212.             var0 = var2 + var0.substring(1);
  213.          }
  214.  
  215.          if (var0.substring(var0.length() - 1).equals(var1)) {
  216.             var0 = var0.substring(0, var0.length() - 1) + var2;
  217.          }
  218.       }
  219.  
  220.       return var0;
  221.    }
  222.  
  223.    static String GetInternalTagValue(String var0, String var1, int var2, boolean var3) {
  224.       String var4 = "";
  225.       Object var5 = null;
  226.       Character var6 = new Character('"');
  227.       Character var7 = new Character('\'');
  228.       Character var8 = new Character('#');
  229.       Character var9 = new Character('=');
  230.       boolean var10 = false;
  231.       int var11 = 0;
  232.       var11 = var1.toLowerCase().indexOf(var0);
  233.       int var12 = 0;
  234.       boolean var13 = false;
  235.       int var14 = 0;
  236.       boolean var15 = false;
  237.       boolean var16 = false;
  238.       if (var11 == -1) {
  239.          if (var3) {
  240.             var4 = var4 + "-1|";
  241.          } else {
  242.             var4 = var4 + "-1";
  243.          }
  244.  
  245.          return var4;
  246.       } else {
  247.          var11 = var11 + var0.length() - 1;
  248.          var12 = var11;
  249.  
  250.          while(var12 + 1 < var1.length()) {
  251.             ++var12;
  252.             Character var21 = new Character(var1.charAt(var12));
  253.             if (!var7.equals(var21) && !var6.equals(var21) && !Character.isSpace(var21) && !var9.equals(var21)) {
  254.                if (!var10) {
  255.                   if (var3) {
  256.                      var4 = var4 + "-1|";
  257.                   } else {
  258.                      var4 = var4 + "-1";
  259.                   }
  260.  
  261.                   return var4;
  262.                }
  263.  
  264.                if (var2 == 1) {
  265.                   if (var8.equals(var21)) {
  266.                      ++var12;
  267.                   }
  268.  
  269.                   if (var12 + 6 <= var1.length()) {
  270.                      var4 = var4 + var1.substring(var12, var12 + 6);
  271.                      if (var3) {
  272.                         var4 = var4 + "|";
  273.                      }
  274.                   } else if (var3) {
  275.                      var4 = var4 + "-1|";
  276.                   } else {
  277.                      var4 = var4 + "-1|";
  278.                   }
  279.                   break;
  280.                }
  281.  
  282.                if (var2 == 2) {
  283.                   if (!Character.isDigit(var21)) {
  284.                      if (var15) {
  285.                         if (var3) {
  286.                            var4 = var4 + "|";
  287.                         }
  288.                      } else if (var3) {
  289.                         var4 = var4 + "-1|";
  290.                      } else {
  291.                         var4 = var4 + "-1";
  292.                      }
  293.  
  294.                      return var4;
  295.                   }
  296.  
  297.                   var4 = var4 + var21.toString();
  298.                   var15 = true;
  299.                   var16 = true;
  300.                }
  301.  
  302.                if (var2 == 3) {
  303.                   int var17 = 0;
  304.                   var14 = var1.indexOf(var6, var12);
  305.                   var17 = var1.indexOf(var7, var12);
  306.                   if (var14 == -1) {
  307.                      var14 = var17;
  308.                   } else if (var17 != -1 && var17 < var14) {
  309.                      var14 = var17;
  310.                   }
  311.  
  312.                   if (var14 != -1) {
  313.                      var4 = var4 + var1.substring(var12, var14);
  314.                      if (var3) {
  315.                         var4 = var4 + "|";
  316.                      }
  317.                   } else if (var3) {
  318.                      var4 = var4 + "-1|";
  319.                   } else {
  320.                      var4 = var4 + "-1";
  321.                   }
  322.  
  323.                   return var4;
  324.                }
  325.             } else {
  326.                if (var9.equals(var21)) {
  327.                   var10 = true;
  328.                }
  329.  
  330.                if (var16) {
  331.                   if (var3) {
  332.                      var4 = var4 + "|";
  333.                   }
  334.  
  335.                   return var4;
  336.                }
  337.             }
  338.          }
  339.  
  340.          if (var16 && var3) {
  341.             var4 = var4 + "|";
  342.          }
  343.  
  344.          if (var4.equals("") && var3) {
  345.             var4 = "|";
  346.          }
  347.  
  348.          return var4;
  349.       }
  350.    }
  351.  
  352.    static String ReplaceCharWithString(String var0, char var1, String var2) {
  353.       int var3 = 0;
  354.       int var5 = 0;
  355.  
  356.       while(var3 != -1) {
  357.          var3 = var0.indexOf(var1, var5);
  358.          if (var3 != -1) {
  359.             String var4 = var0;
  360.             var0 = var0.substring(0, var3) + var2;
  361.             if (var3 + 1 < var4.length()) {
  362.                var0 = var0 + var4.substring(var3 + 1);
  363.             }
  364.  
  365.             var5 = var3 + var2.length();
  366.          }
  367.       }
  368.  
  369.       return var0;
  370.    }
  371.  
  372.    public static String getClassPathOnly() {
  373.       String var0 = System.getProperty("user.dir");
  374.       return var0;
  375.    }
  376.  
  377.    public static String getTemplateFilePath(String var0) {
  378.       return (new File(getAbsolutePath("templates" + File.separator + var0))).toString() + File.separator + "template.html";
  379.    }
  380.  
  381.    public static String getCurrentFilePath() {
  382.       return (new File(getAbsolutePath("projects" + File.separator + "current" + File.separator + "example.htm"))).toString();
  383.    }
  384.  
  385.    public static String getAbsoluteWorkingPath(String var0) {
  386.       String var1 = ACutila.workingFolder;
  387.       return var0.indexOf(":") == -1 ? var1 + File.separator + var0 : var0;
  388.    }
  389.  
  390.    public Image getImage(String var1) {
  391.       if (var1 != null && !var1.equals("")) {
  392.          if (var1.indexOf(":") == -1) {
  393.             var1 = getAbsolutePath(var1);
  394.          }
  395.  
  396.          Image var2;
  397.          return (var2 = this.trackReturn(var1)) != null ? var2 : null;
  398.       } else {
  399.          return null;
  400.       }
  401.    }
  402.  
  403.    static String DelUnwanted(String var0, String var1, String var2) {
  404.       int var3 = 0;
  405.       String var5 = var0.toLowerCase();
  406.       int var6 = 0;
  407.  
  408.       while(var3 != -1) {
  409.          var3 = var5.indexOf(var1, var6);
  410.          if (var3 != -1) {
  411.             String var4 = var0;
  412.             var0 = var0.substring(0, var3) + var2;
  413.             if (var3 + var1.length() < var4.length()) {
  414.                var0 = var0 + var4.substring(var3 + var1.length());
  415.             }
  416.  
  417.             var5 = var0.toLowerCase();
  418.             var6 = var3 + var2.length();
  419.          }
  420.       }
  421.  
  422.       return var0;
  423.    }
  424.  
  425.    public static String getClassPath() {
  426.       String var0 = System.getProperty("user.dir");
  427.       var0 = var0 + File.separator;
  428.       return var0;
  429.    }
  430.  
  431.    public static String getHelpDirectoryPath() {
  432.       return (new File(getAbsolutePath("help"))).toString();
  433.    }
  434.  
  435.    public static String getPreviewDirectoryPath() {
  436.       return (new File(getAbsolutePath("ocprev"))).toString();
  437.    }
  438.  
  439.    public static String getRelative(String var0, String var1, boolean var2) {
  440.       try {
  441.          var0 = var0.toLowerCase();
  442.          var1 = var1.toLowerCase();
  443.          if (var1.indexOf(":") == -1) {
  444.             return var1;
  445.          } else if (var0.equalsIgnoreCase(var1)) {
  446.             return var2 ? "." : "";
  447.          } else {
  448.             int var3 = 0;
  449.             String var4 = var0;
  450.             var3 = var0.indexOf(File.separator);
  451.             if (var3 > -1) {
  452.                var4 = var0.substring(var3);
  453.             }
  454.  
  455.             String var5 = var0;
  456.             var3 = var1.indexOf(File.separator);
  457.             if (var3 > -1) {
  458.                var5 = var1.substring(var3);
  459.             }
  460.  
  461.             var3 = var5.indexOf(var4);
  462.             if (var3 > -1) {
  463.                var5 = var5.substring(var4.length());
  464.                return var5;
  465.             } else {
  466.                var3 = var4.indexOf(var5);
  467.                if (var3 > -1) {
  468.                   var4 = var4.substring(var5.length());
  469.                   if (var4.length() <= 0) {
  470.                      return var4;
  471.                   } else {
  472.                      String var20 = "";
  473.                      int var22 = 0;
  474.  
  475.                      for(int var24 = 0; (var24 = var4.indexOf(File.separator, var24)) != -1; var20 = var20 + ".." + File.separator) {
  476.                         ++var24;
  477.                         ++var22;
  478.                      }
  479.  
  480.                      return var20;
  481.                   }
  482.                } else {
  483.                   String var6 = "";
  484.                   int var7 = 0;
  485.  
  486.                   for(var7 = 0; var7 < var5.length() && var7 < var4.length() && var5.regionMatches(0, var4, 0, var7); ++var7) {
  487.                   }
  488.  
  489.                   if (var7 > 0) {
  490.                      var5 = var5.substring(var7 - 1);
  491.                      var4 = var4.substring(var7 - 1);
  492.                   }
  493.  
  494.                   if (var5.length() > 0) {
  495.                      int var8 = 0;
  496.  
  497.                      for(int var25 = 0; (var25 = var4.indexOf(File.separator, var25)) != -1; var6 = var6 + ".." + File.separator) {
  498.                         ++var25;
  499.                         ++var8;
  500.                      }
  501.                   }
  502.  
  503.                   var6 = var6 + var5;
  504.                   return var6;
  505.                }
  506.             }
  507.          }
  508.       } catch (Exception var10) {
  509.          return var1;
  510.       }
  511.    }
  512. }
  513.