home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 7: Programming / CDAT7.iso / Share / Java / JDesignerPro / Jdp3_0.exe / data1.cab / Program_Files / JDPGenerateSource.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-04-09  |  38.9 KB  |  1,928 lines

  1. import java.awt.Checkbox;
  2. import java.awt.Component;
  3. import java.awt.Window;
  4. import java.util.StringTokenizer;
  5. import java.util.Vector;
  6.  
  7. public class JDPGenerateSource extends JDPClassLayout {
  8.    JDPLayoutMgr target;
  9.    JDPLayoutGenerator targetGenerator;
  10.    String[] templateSource;
  11.    Vector linePosVector;
  12.    Thread thisThread;
  13.    StringBuffer sourceBuffer;
  14.    int lastLineVectorPos;
  15.    int mainSourceLines;
  16.    int eventLines;
  17.    boolean usingNewEventModel;
  18.    String listenerInterfaces = "";
  19.    String objectListeners = "";
  20.  
  21.    String switchField(String var1, JDPSelectTable var2) {
  22.       if (var1.indexOf(".") > 0) {
  23.          for(int var3 = 0; var3 < var2.joinConditions.countItems(); ++var3) {
  24.             String var4 = var2.joinConditions.getItem(var3);
  25.             int var5 = var4.indexOf(var1 + " ");
  26.             if (var5 >= 0 || var4.endsWith(var1)) {
  27.                var5 = var4.indexOf(var1);
  28.                int var6 = var4.indexOf(".");
  29.                if (var6 == var5 + 1) {
  30.                   var6 = var4.substring(var5 + 2).indexOf(".") + var5 + 2;
  31.                   var1 = var4.substring(var6 - 1);
  32.                } else {
  33.                   int var7 = var4.indexOf(" ");
  34.                   var1 = var4.substring(0, var7);
  35.                }
  36.                break;
  37.             }
  38.          }
  39.       }
  40.  
  41.       return var1;
  42.    }
  43.  
  44.    Component findRelatedComp(JDPTreeBranch var1, String var2) {
  45.       if (var1.relatedComps == null) {
  46.          return null;
  47.       } else {
  48.          for(int var3 = 0; var3 < var1.relatedComps.length; ++var3) {
  49.             if (var1.relatedComps[var3].getClass().getName().equals(var2)) {
  50.                return var1.relatedComps[var3];
  51.             }
  52.          }
  53.  
  54.          return null;
  55.       }
  56.    }
  57.  
  58.    String getProp(JDPTreeBranch var1, String var2) {
  59.       if (var1.properties == null) {
  60.          return "";
  61.       } else if (var1.properties.length <= 0) {
  62.          return "";
  63.       } else if (var1.properties[0].length <= 0) {
  64.          return "";
  65.       } else if (var1.properties[0][0] == null) {
  66.          return "";
  67.       } else {
  68.          for(int var3 = 0; var3 < var1.properties[0].length; ++var3) {
  69.             if (var1.properties[0][var3].equals(var2)) {
  70.                return var1.properties[1][var3];
  71.             }
  72.          }
  73.  
  74.          return "";
  75.       }
  76.    }
  77.  
  78.    String wrapEventSource(String var1) {
  79.       if (var1.equals("")) {
  80.          return "";
  81.       } else if (this.usingNewEventModel) {
  82.          return var1;
  83.       } else {
  84.          String var2 = "";
  85.          var2 = var2 + "\t//\r\n\t//  Handle screen events\r\n\t//\r\n";
  86.          var2 = var2 + "\tpublic boolean handleEvent(Event e) {\r\n\r\n";
  87.          var2 = var2 + "\t\tswitch (e.id) {\r\n";
  88.          var2 = var2 + var1;
  89.          var2 = var2 + "\t\tcase Event.MOUSE_MOVE:\r\n";
  90.          var2 = var2 + "\t\tcase Event.MOUSE_ENTER:\r\n";
  91.          var2 = var2 + "\t\tcase Event.MOUSE_EXIT:\r\n";
  92.          var2 = var2 + "\t\t\tpopuppanel.postEvent(e);\r\n";
  93.          var2 = var2 + "\t\t\treturn false;\r\n\r\n";
  94.          var2 = var2 + "\t\tdefault:\r\n";
  95.          var2 = var2 + "\t\t\treturn false;\r\n\r\n";
  96.          var2 = var2 + "\t\t}\r\n\t}\r\n";
  97.          return var2;
  98.       }
  99.    }
  100.  
  101.    void constructMethod(JDPTreeBranch var1, String var2) {
  102.       this.constructMethodSource(var1, var2, "Replace");
  103.    }
  104.  
  105.    JDPTreeBranch getErrorComponent(int var1) {
  106.       int var2 = 0;
  107.       int var3 = 0;
  108.       Vector var4 = null;
  109.       JDPTreeBranch var5 = null;
  110.       if (var1 <= this.mainSourceLines) {
  111.          return null;
  112.       } else {
  113.          if (this.linePosVector == null) {
  114.             this.target.sourcePanel2.setText(this.addLineNumbers(this.composeSource(this.target.compTree), 1));
  115.          }
  116.  
  117.          while(var3 < var1 && var2 < this.linePosVector.size()) {
  118.             var4 = (Vector)this.linePosVector.elementAt(var2);
  119.             var5 = (JDPTreeBranch)var4.elementAt(1);
  120.             var3 = Integer.parseInt((String)var4.elementAt(0)) - 2;
  121.             ++var2;
  122.          }
  123.  
  124.          if (var4 != null) {
  125.             var5 = (JDPTreeBranch)var4.elementAt(1);
  126.          }
  127.  
  128.          return var5;
  129.       }
  130.    }
  131.  
  132.    int getErrorSourceLine(int var1) {
  133.       int var2 = 0;
  134.       int var3 = 0;
  135.       int var4 = 0;
  136.       Object var5 = null;
  137.       if (var1 <= this.mainSourceLines) {
  138.          return -1;
  139.       } else {
  140.          while(var3 < var1 && var2 < this.linePosVector.size()) {
  141.             Vector var6 = (Vector)this.linePosVector.elementAt(var2);
  142.             var4 = var3 + 2;
  143.             var3 = Integer.parseInt((String)var6.elementAt(0)) - 2;
  144.             ++var2;
  145.          }
  146.  
  147.          return var4;
  148.       }
  149.    }
  150.  
  151.    synchronized String buildMainSource(JDPTreeBranch var1) {
  152.       String var2 = this.templateSource[0];
  153.       var2 = super.user.u.replace(var2, "<JDPModule>", this.target.appName);
  154.       var2 = super.user.u.replace(var2, "<Description>", this.target.appName);
  155.       this.sourceBuffer = null;
  156.       this.sourceBuffer = new StringBuffer();
  157.       this.constructSource(var1, "Components");
  158.       var2 = super.user.u.replace(var2, "<Components>", this.sourceBuffer.toString());
  159.       this.sourceBuffer.setLength(0);
  160.       this.constructSource(var1, "InitClassBody");
  161.       String var3 = this.createCheckBoxGroups();
  162.       this.sourceBuffer.insert(0, var3);
  163.       var2 = super.user.u.replace(var2, "<InitClassBody>", this.sourceBuffer.toString());
  164.       this.sourceBuffer.setLength(0);
  165.       this.constructSource(var1, "Layout");
  166.       var2 = super.user.u.replace(var2, "<Layout>", this.sourceBuffer.toString());
  167.       this.sourceBuffer.setLength(0);
  168.       this.constructSource(var1, "Properties");
  169.       var2 = super.user.u.replace(var2, "<Properties>", this.sourceBuffer.toString());
  170.       this.sourceBuffer = null;
  171.       return var2;
  172.    }
  173.  
  174.    String constructEventSource(JDPTreeBranch[] var1) {
  175.       String var2 = "";
  176.       if (var1 == null) {
  177.          return "";
  178.       } else {
  179.          JDPTreeBranch var3 = var1[var1.length - 1];
  180.          if (var3.treeVector == null || var3.treeVector.size() == 0) {
  181.             var3.treeVector = new Vector();
  182.             JDPTreeBranch var4 = new JDPTreeBranch();
  183.             var3.treeVector.addElement(var4);
  184.          }
  185.  
  186.          JDPTreeBranch var15 = (JDPTreeBranch)var3.treeVector.elementAt(0);
  187.          if (var3.text == null) {
  188.             var3.text = new String[1];
  189.          }
  190.  
  191.          if (var3.compPosition == null || !var3.compPosition.equals("Local Methods")) {
  192.             var2 = var2 + var1[var1.length - 2].name + ".";
  193.          }
  194.  
  195.          int var5 = var3.name.indexOf("(");
  196.          if (var5 > 0) {
  197.             var2 = var2 + var3.name.substring(0, var5);
  198.          } else {
  199.             var2 = var2 + var3.name;
  200.          }
  201.  
  202.          var2 = var2 + "(";
  203.          if (var15 != null && var15.leaves != null) {
  204.             for(int var6 = 0; var6 < var15.leaves.size(); ++var6) {
  205.                if (var6 > 0) {
  206.                   var2 = var2 + ", ";
  207.                }
  208.  
  209.                JDPTreeBranch var7 = (JDPTreeBranch)var15.leaves.elementAt(var6);
  210.                if (var7.leaves != null && var7.leaves.size() > 0) {
  211.                   JDPTreeBranch var8 = (JDPTreeBranch)var7.leaves.elementAt(0);
  212.                   if (var8.leaves != null && var8.leaves.size() > 0) {
  213.                      JDPTreeBranch var9 = (JDPTreeBranch)var8.leaves.elementAt(0);
  214.                      JDPTreeBranch var10 = this.target.interactionMgr.getMethodParameters(var9, this.target.interactionMgr.parameterTree);
  215.                      String var11 = this.createSourceSnippet(this.target.interactionMgr.parameterTree.getTreeBranch(var9), var10, 2);
  216.                      var2 = var2 + var11;
  217.                   } else {
  218.                      var2 = var2 + var8.name.trim();
  219.                   }
  220.                } else {
  221.                   var2 = var2 + "<" + var7.name.trim() + ">";
  222.                }
  223.             }
  224.          }
  225.  
  226.          var2 = var2 + ");\r\n";
  227.          var3.text[0] = var2;
  228.          return var2;
  229.       }
  230.    }
  231.  
  232.    int getErrorSourceComponent(int var1) {
  233.       int var2 = 0;
  234.       int var3 = 0;
  235.       int var4 = -1;
  236.       Vector var5 = null;
  237.       if (var1 <= this.mainSourceLines + this.eventLines) {
  238.          return -1;
  239.       } else {
  240.          while(var3 < var1 && var2 < this.linePosVector.size()) {
  241.             var5 = (Vector)this.linePosVector.elementAt(var2);
  242.             var3 = Integer.parseInt((String)var5.elementAt(0)) - 2;
  243.             ++var2;
  244.          }
  245.  
  246.          if (var5 != null) {
  247.             String var6 = (String)var5.elementAt(2);
  248.             if (!var6.equals("Event")) {
  249.                var4 = Integer.parseInt(var6);
  250.             }
  251.          }
  252.  
  253.          return var4;
  254.       }
  255.    }
  256.  
  257.    int insertEventVector(int var1, String var2, Vector var3) {
  258.       var3.elementAt(1);
  259.       if (var3.size() == 3) {
  260.          Vector var4 = (Vector)var3.elementAt(2);
  261.  
  262.          for(int var5 = 0; var5 < var4.size(); var5 += 3) {
  263.             int var6 = Integer.parseInt((String)var4.elementAt(var5));
  264.             Vector var7 = new Vector(3);
  265.             var7.addElement(Integer.toString(var1 + var6 + 2));
  266.             var7.addElement(var4.elementAt(var5 + 2));
  267.             var7.addElement("Event");
  268.             var7.addElement(var4.elementAt(var5 + 1));
  269.             this.linePosVector.insertElementAt(var7, this.lastLineVectorPos++);
  270.          }
  271.       }
  272.  
  273.       var1 += this.countSourceLines(var2);
  274.       return var1;
  275.    }
  276.  
  277.    String createSourceSnippet(JDPTreeBranch[] var1, JDPTreeBranch var2, int var3) {
  278.       String var4 = "";
  279.       if (var1 == null) {
  280.          return "";
  281.       } else {
  282.          JDPTreeBranch var5 = var1[var1.length - 1];
  283.          if (var1[var1.length - 1].compPosition == null || !var1[var1.length - 1].compPosition.equals("Local Methods")) {
  284.             var4 = var4 + var1[var1.length - var3].name + ".";
  285.          }
  286.  
  287.          int var6 = var5.name.indexOf("(");
  288.          if (var6 > 0) {
  289.             var4 = var4 + var5.name.substring(0, var6);
  290.          } else {
  291.             var4 = var4 + var5.name;
  292.          }
  293.  
  294.          if (!var1[var1.length - 2].name.equals("Properties")) {
  295.             var4 = var4 + "(";
  296.             if (var2 != null && var2.leaves != null) {
  297.                for(int var7 = 0; var7 < var2.leaves.size(); ++var7) {
  298.                   if (var7 > 0) {
  299.                      var4 = var4 + ", ";
  300.                   }
  301.  
  302.                   JDPTreeBranch var8 = (JDPTreeBranch)var2.leaves.elementAt(var7);
  303.                   var4 = var4 + "<" + var8.name.trim() + ">";
  304.                }
  305.             }
  306.  
  307.             var4 = var4 + ")";
  308.          }
  309.  
  310.          return var4;
  311.       }
  312.    }
  313.  
  314.    String composeSource(JDPTreeBranch var1) {
  315.       String var2 = "";
  316.       String var3 = "";
  317.       String var4 = "";
  318.       boolean var6 = false;
  319.       int var7 = 0;
  320.       if (this.linePosVector != null && this.linePosVector.size() != 0) {
  321.          Vector var8 = (Vector)this.linePosVector.elementAt(this.linePosVector.size() - 1);
  322.          var7 = Integer.parseInt((String)var8.elementAt(0));
  323.       } else {
  324.          this.linePosVector = new Vector();
  325.       }
  326.  
  327.       if (var1.text != null) {
  328.          for(int var26 = 0; var26 < var1.text.length; ++var26) {
  329.             if (var1.text[var26] != null) {
  330.                int var9 = var1.text[var26].length() - 1;
  331.                if (var9 > 0) {
  332.                   for(char var10 = var1.text[var26].charAt(var9); var9 > 0 && (var10 == '\r' || var10 == '\n'); var10 = var1.text[var26].charAt(var9)) {
  333.                      --var9;
  334.                   }
  335.  
  336.                   ++var9;
  337.                   var1.text[var26] = var1.text[var26].substring(0, var9) + "\r\n\r\n";
  338.                }
  339.  
  340.                var4 = var1.text[var26];
  341.                int var5 = var4.indexOf("|");
  342.                var5 = var4.indexOf("|", var5 + 1);
  343.                if (var4.indexOf("<CodeBody>") > 0) {
  344.                   var6 = true;
  345.                   this.linePosVector = new Vector();
  346.                   var7 = 0;
  347.                   var2 = var2 + var4.substring(var5 + 1);
  348.                } else if (var6) {
  349.                   var2 = super.user.u.replace(var2, "<CodeBody>", var4.substring(var5 + 1) + "<CodeBody>");
  350.                } else {
  351.                   var2 = var2 + var4.substring(var5 + 1);
  352.                }
  353.  
  354.                Vector var33 = new Vector(3);
  355.                var7 += this.countSourceLines(var4.substring(var5 + 1));
  356.                var33.addElement(Integer.toString(var7));
  357.                var33.addElement(var1);
  358.                var33.addElement(Integer.toString(var26));
  359.                this.linePosVector.addElement(var33);
  360.             }
  361.          }
  362.       }
  363.  
  364.       for(int var27 = 0; var27 < var1.leaves.size(); ++var27) {
  365.          JDPTreeBranch var30 = (JDPTreeBranch)var1.leaves.elementAt(var27);
  366.          var3 = var3 + this.composeSource(var30);
  367.       }
  368.  
  369.       if (var6) {
  370.          var7 = this.countSourceLines(var2.substring(0, var2.indexOf("InitComponents();"))) + 9;
  371.          this.mainSourceLines = var7 - 1;
  372.          var2 = super.user.u.replace(var2, "<CodeBody>", var3);
  373.          Vector var28 = new Vector();
  374.          this.listenerInterfaces = "";
  375.          this.objectListeners = "";
  376.          this.composeEventSource(var1, var28);
  377.          String var31 = "";
  378.          boolean var34 = true;
  379.          this.lastLineVectorPos = 0;
  380.  
  381.          for(int var11 = 0; var11 < var28.size(); ++var11) {
  382.             Vector var12 = (Vector)var28.elementAt(var11);
  383.             String[] var13 = (String[])var12.elementAt(0);
  384.             if (var13[1].length() > 0 && (var13[0].equals("TAB_FORWARD") || var13[0].equals("TAB_BACK"))) {
  385.                String var14 = "";
  386.                if (var34) {
  387.                   var14 = var14 + "\t\tcase Event.KEY_PRESS:\r\n";
  388.                   var34 = false;
  389.                }
  390.  
  391.                if (var13[0].equals("TAB_FORWARD")) {
  392.                   var14 = var14 + "\t\t\tif (e.key == '\\t' && e.modifiers != Event.SHIFT_MASK) {\r\n";
  393.                } else {
  394.                   var14 = var14 + "\t\t\tif (e.key == '\\t' && e.modifiers == Event.SHIFT_MASK) {\r\n";
  395.                }
  396.  
  397.                var14 = var14 + var13[1];
  398.                var14 = var14 + "\t\t\t}\r\n";
  399.                var31 = var31 + var14;
  400.                var13[1] = "";
  401.                var7 = this.insertEventVector(var7, var14, var12);
  402.             }
  403.          }
  404.  
  405.          for(int var35 = 0; var35 < var28.size(); ++var35) {
  406.             Vector var37 = (Vector)var28.elementAt(var35);
  407.             String[] var40 = (String[])var37.elementAt(0);
  408.             if (var40[1].length() > 0 && var40[0].equals("KEY_PRESS")) {
  409.                String var46 = "";
  410.                if (var34) {
  411.                   var46 = var46 + "\t\tcase Event.KEY_PRESS:\r\n";
  412.                   var34 = false;
  413.                }
  414.  
  415.                var46 = var46 + var40[1];
  416.                var31 = var31 + var46;
  417.                var40[1] = "";
  418.                var7 = this.insertEventVector(var7, var46, var37);
  419.             }
  420.          }
  421.  
  422.          if (!var34) {
  423.             var31 = var31 + "\t\t\treturn false;\r\n\r\n";
  424.             var7 += 2;
  425.          }
  426.  
  427.          this.usingNewEventModel = false;
  428.          String var36 = "";
  429.  
  430.          for(int var38 = 0; var38 < var28.size(); ++var38) {
  431.             Vector var41 = (Vector)var28.elementAt(var38);
  432.             String[] var48 = (String[])var41.elementAt(0);
  433.             var41.elementAt(1);
  434.             if (var48[1].length() > 0) {
  435.                String var15 = "";
  436.                if (var48[0].equals(var48[0].toUpperCase())) {
  437.                   var15 = "\t\tcase Event." + var48[0] + ":\r\n";
  438.                   var15 = var15 + var48[1];
  439.                   var15 = var15 + "\t\t\treturn false;\r\n\r\n";
  440.                } else {
  441.                   if (!this.usingNewEventModel) {
  442.                      var7 -= 3;
  443.                      this.mainSourceLines -= 3;
  444.                   }
  445.  
  446.                   this.usingNewEventModel = true;
  447.                   if (var36.indexOf(var48[0] + ",") < 0) {
  448.                      var15 = "\tpublic void " + var48[0] + " {\r\n";
  449.                      if (!var48[1].equals("\tEmpty Method")) {
  450.                         var15 = var15 + super.user.u.replace(var48[1], "\n\t", "\n").substring(1);
  451.                      } else {
  452.                         var15 = var15 + "\r\n";
  453.                      }
  454.  
  455.                      var15 = var15 + "\t}\r\n\r\n";
  456.                      var36 = var36 + var48[0] + ",";
  457.                   }
  458.                }
  459.  
  460.                var31 = var31 + var15;
  461.                var7 = this.insertEventVector(var7, var15, var41);
  462.             }
  463.          }
  464.  
  465.          int var39 = 0;
  466.          if (!this.listenerInterfaces.equals("")) {
  467.             this.listenerInterfaces = "implements " + this.listenerInterfaces.substring(9, this.listenerInterfaces.length() - 1);
  468.             var39 = this.countSourceLines(this.listenerInterfaces);
  469.             var7 += var39;
  470.          }
  471.  
  472.          var2 = super.user.u.replace(var2, "<Listeners>", this.listenerInterfaces);
  473.          int var42 = 0;
  474.          if (!this.objectListeners.equals("")) {
  475.             var42 = this.countSourceLines(this.objectListeners);
  476.             int var10000 = var7 + var42;
  477.          }
  478.  
  479.          var2 = super.user.u.replace(var2, "<ObjectListeners>", this.objectListeners);
  480.          var31 = this.wrapEventSource(var31);
  481.          this.eventLines = this.countSourceLines(var31) + var39 + var42;
  482.          var2 = super.user.u.replace(var2, "<Events>", var31);
  483.  
  484.          for(int var49 = 0; var49 < this.linePosVector.size(); ++var49) {
  485.             Vector var54 = (Vector)this.linePosVector.elementAt(var49);
  486.             if (!((String)var54.elementAt(2)).equals("Event")) {
  487.                int var16 = Integer.parseInt((String)var54.elementAt(0)) + this.eventLines;
  488.                var54.setElementAt(Integer.toString(var16), 0);
  489.             }
  490.          }
  491.       } else {
  492.          var2 = var2 + var3;
  493.       }
  494.  
  495.       Object var21 = null;
  496.       Object var23 = null;
  497.       return var2;
  498.    }
  499.  
  500.    synchronized void constructMethodSource(JDPTreeBranch var1, String var2, String var3) {
  501.       if (!this.target.projectLoading || this.target.loadingWizardApp) {
  502.          String var5 = "";
  503.          String var6 = var1.compType;
  504.          String[] var4;
  505.          if (var1 == this.target.compTree) {
  506.             var4 = new String[]{this.buildSource(var1)};
  507.          } else {
  508.             this.target.refreshRelatedComps(var1);
  509.             if (var2.equals("Main")) {
  510.                if ((var6.equals("JDPColumns") || var6.equals("JDPGridDetail") || var6.equals("JDPReportDetail") || var6.equals("JDPChartDetail") || var6.equals("JDPChoice") || var6.equals("JDPComboBox") || var6.equals("JDPList") || var6.startsWith("JDPWiz")) && var1.relatedComps != null && var1.relatedComps[0] != null) {
  511.                   JDPSelectDSN var7 = (JDPSelectDSN)var1.relatedComps[0];
  512.                   int var8 = 0;
  513.                   byte var9 = 0;
  514.                   if (var6.equals("JDPColumns")) {
  515.                      var8 = ((JDPScreenSettings)var1.relatedComps[3]).columns.countItems();
  516.                      var9 = 11;
  517.                   }
  518.  
  519.                   if (var6.equals("JDPGridDetail")) {
  520.                      var8 = ((JDPGridLayout)var1.thisObject).columnCount;
  521.                      var9 = 12;
  522.                   }
  523.  
  524.                   if (var6.equals("JDPReportDetail")) {
  525.                      var8 = ((JDPGridLayout)var1.thisObject).columnCount;
  526.                      var9 = 14;
  527.                   }
  528.  
  529.                   if (var6.equals("JDPChartDetail")) {
  530.                      var8 = ((JDPSelectChartDef)var1.relatedComps[3]).columns.countItems();
  531.                      if (var8 == 0) {
  532.                         var8 = 1;
  533.                      }
  534.  
  535.                      var9 = 15;
  536.                   }
  537.  
  538.                   if (var6.equals("JDPChoice")) {
  539.                      var9 = 16;
  540.                      var8 = 1;
  541.                   }
  542.  
  543.                   if (var6.equals("JDPList")) {
  544.                      var9 = 17;
  545.                      var8 = 1;
  546.                   }
  547.  
  548.                   if (var6.equals("JDPComboBox")) {
  549.                      var9 = 18;
  550.                      var8 = 1;
  551.                   }
  552.  
  553.                   if (var6.equals("JDPWizForm")) {
  554.                      var9 = 21;
  555.                      var8 = 1;
  556.                   }
  557.  
  558.                   if (var6.equals("JDPWizGrid")) {
  559.                      var9 = 22;
  560.                      var8 = 1;
  561.                   }
  562.  
  563.                   if (var6.equals("JDPWizMasterDetail")) {
  564.                      var9 = 23;
  565.                      var8 = 1;
  566.                   }
  567.  
  568.                   if (var6.equals("JDPWizReport")) {
  569.                      var9 = 24;
  570.                      var8 = 1;
  571.                   }
  572.  
  573.                   if (var6.equals("JDPWizChart")) {
  574.                      var9 = 25;
  575.                      var8 = 1;
  576.                   }
  577.  
  578.                   if (var8 > 0) {
  579.                      if (this.templateSource[var9 - 10] == null) {
  580.                         this.loadSource(var9);
  581.                      }
  582.  
  583.                      var5 = this.templateSource[var9 - 10];
  584.                      var5 = super.user.u.replace(var5, "<compName>", var1.name);
  585.                      var5 = super.user.u.replace(var5, "<jaggPrefs>", this.createJaggPrefs(var7, "\t\t"));
  586.  
  587.                      for(int var10 = 0; var10 < var1.relatedComps.length; ++var10) {
  588.                         this.targetGenerator.setHandle((JDPClassLayout)var1.relatedComps[var10]);
  589.                      }
  590.  
  591.                      if (var1.thisObject instanceof JDPClassLayout) {
  592.                         this.targetGenerator.setHandle((JDPClassLayout)var1.thisObject);
  593.                      }
  594.  
  595.                      this.targetGenerator.setLayoutName("JDPLayout" + Integer.toString(var9));
  596.                      if (this.targetGenerator.readyToBuild()) {
  597.                         var5 = this.targetGenerator.parseSource(var5);
  598.                      } else {
  599.                         var5 = "";
  600.                      }
  601.                   }
  602.                }
  603.  
  604.                if (var6.equals("JDPWhereClause") || var6.startsWith("JDPWiz")) {
  605.                   String var80 = "";
  606.                   Component var86 = this.findRelatedComp(var1, "JDPSearchLayout");
  607.                   if (var86 != null) {
  608.                      String var90 = "";
  609.                      if (var6.startsWith("JDPWiz")) {
  610.                         var90 = "SP1";
  611.                      }
  612.  
  613.                      boolean var93 = false;
  614.                      JDPSearchLayout var11 = (JDPSearchLayout)var86;
  615.                      JDPSelectDSN var12 = (JDPSelectDSN)var1.relatedComps[0];
  616.                      var5 = var5 + "\\*R" + this.createComment("Create and load the Search Panel");
  617.                      var5 = var5 + "\tpublic void " + var1.name;
  618.                      if (var6.startsWith("JDPWiz")) {
  619.                         var5 = var5 + "WhereClause";
  620.                      }
  621.  
  622.                      var5 = var5 + "Main() {\r\n\r\n";
  623.                      if (var11.pchooseFr != null && var11.columns.getSelectedIndexes().length > 0) {
  624.                         var5 = var5 + "\t\tString[] " + var1.name + "cf = new String[" + Integer.toString(var11.pchooseFr.length) + "];\r\n";
  625.                         var5 = var5 + "\t\tString[] " + var1.name + "acf = new String[" + Integer.toString(var11.pchooseFr.length) + "];\r\n";
  626.                         var5 = var5 + "\t\tVector " + var1.name + "mu = new Vector();\r\n";
  627.                         var5 = var5 + "\t\tVector " + var1.name + "amu = new Vector();\r\n";
  628.  
  629.                         for(int var13 = 0; var13 < var11.pchooseFr.length; ++var13) {
  630.                            var5 = var5 + "\t\t" + var1.name + "cf[" + Integer.toString(var13) + "] = \"" + var11.pchooseFr[var13] + "\";\r\n";
  631.                            var5 = var5 + "\t\t" + var1.name + "acf[" + Integer.toString(var13) + "] = \"" + var11.pactualchooseFr[var13] + "\";\r\n";
  632.                         }
  633.  
  634.                         for(int var99 = 0; var99 < var11.pmatchUsing.size(); ++var99) {
  635.                            var5 = var5 + "\t\t" + var1.name + "mu.addElement(new Vector());\r\n";
  636.                            var5 = var5 + "\t\t" + var1.name + "amu.addElement(new Vector());\r\n";
  637.                         }
  638.  
  639.                         for(int var100 = 0; var100 < var11.pchooseFromindex.length; ++var100) {
  640.                            if (var11.thisChoicePanel.valuesFrom[var11.pchooseFromindex[var100]].equals("Fields entered here")) {
  641.                               for(int var14 = 0; var14 < ((Vector)var11.pmatchUsing.elementAt(var100)).size(); ++var14) {
  642.                                  var5 = var5 + "\t\t((Vector)" + var1.name + "mu.elementAt(" + Integer.toString(var100) + ")).addElement(\"" + (String)((Vector)var11.pmatchUsing.elementAt(var100)).elementAt(var14) + "\");\r\n";
  643.                                  var5 = var5 + "\t\t((Vector)" + var1.name + "amu.elementAt(" + Integer.toString(var100) + ")).addElement(\"" + (String)((Vector)var11.pactualmatchUsing.elementAt(var100)).elementAt(var14) + "\");\r\n";
  644.                               }
  645.                            } else {
  646.                               if (!var93) {
  647.                                  var5 = var5 + this.createJaggPrefs(var12, "\t\t");
  648.                                  var5 = var5 + "\t\tJDPLoadChoice lc = new JDPLoadChoice(user,jaggSQL,null,\"\",\"\",\"\",\"\",-1);\r\n";
  649.                               }
  650.  
  651.                               var93 = true;
  652.                               if (var11.thisChoicePanel.columnDataType[var11.pchooseFromindex[var100]].equals("")) {
  653.                                  var11.thisChoicePanel.columnDataType[var11.pchooseFromindex[var100]] = "12";
  654.                               }
  655.  
  656.                               var5 = var5 + "\t\tlc.loadChoice((Vector)" + var1.name + "mu.elementAt(" + Integer.toString(var100) + "), \"" + var11.thisChoicePanel.textChoiceSql[var11.pchooseFromindex[var100]] + "\" ,\"" + var11.thisChoicePanel.columnActualList[var11.pchooseFromindex[var100]] + "\" ,\"" + var11.thisChoicePanel.tableList[var11.pchooseFromindex[var100]] + "\" ,\"" + var11.thisChoicePanel.tableWhereClause[var11.pchooseFromindex[var100]] + "\" ,(Vector)" + var1.name + "amu.elementAt(" + Integer.toString(var100) + ")," + var11.thisChoicePanel.columnDataType[var11.pchooseFromindex[var100]] + ");\r\n";
  657.                            }
  658.                         }
  659.  
  660.                         var5 = var5 + "\t\tint[] " + var1.name + "cl = new int[" + Integer.toString(var11.constantL.length) + "];\r\n";
  661.                         var5 = var5 + "\t\tboolean[] " + var1.name + "cis = new boolean[" + Integer.toString(var11.constantL.length) + "];\r\n";
  662.  
  663.                         for(int var101 = 0; var101 < var11.constantL.length; ++var101) {
  664.                            var5 = var5 + "\t\t" + var1.name + "cl[" + Integer.toString(var101) + "] = " + Integer.toString(var11.constantL[var101]) + ";\r\n";
  665.                            var5 = var5 + "\t\t" + var1.name + "cis[" + Integer.toString(var101) + "] = ";
  666.                            if (var11.constantIS[var101]) {
  667.                               var5 = var5 + "true;\r\n";
  668.                            } else {
  669.                               var5 = var5 + "false;\r\n";
  670.                            }
  671.                         }
  672.  
  673.                         var80 = var11.pinitChoice;
  674.                         var5 = var5 + "\t\t" + var1.name + var90 + " = new JDPWhereClause(";
  675.                         var5 = var5 + "user, targetPanel, \"\", true, \"" + var80 + "\", ";
  676.                         var5 = var5 + var1.name + "cf, ";
  677.                         var5 = var5 + var1.name + "acf, ";
  678.                         var5 = var5 + var1.name + "mu, ";
  679.                         var5 = var5 + var1.name + "amu, null, null, ";
  680.                         var5 = var5 + var1.name + "cl, ";
  681.                         var5 = var5 + var1.name + "cis, ";
  682.                         var5 = var5 + "\"" + var11.fromWhereClause + "\"";
  683.                         var5 = var5 + ");";
  684.                         var5 = var5 + "\r\n";
  685.                         var5 = var5 + "\t\t" + var1.name + var90 + ".setDSNType(\"" + var12.dsnType + "\");";
  686.  
  687.                         for(int var102 = 0; var102 < var11.constantL.length; ++var102) {
  688.                            var5 = var5 + "\r\n";
  689.                            var5 = var5 + "\t\t" + var1.name + var90 + ".setDataType(" + Integer.toString(var102) + "," + var11.odbcType[var11.pchooseFromindex[var102]] + ");";
  690.                         }
  691.                      }
  692.  
  693.                      var5 = var5 + "\r\n";
  694.                      var5 = var5 + "\t}\r\n\r\n";
  695.                   }
  696.                }
  697.  
  698.                if (var6.equals("JDPSearchResults") || var6.startsWith("JDPWiz")) {
  699.                   String var82 = "";
  700.                   Component var87 = this.findRelatedComp(var1, "JDPListLayout");
  701.                   if (var87 != null) {
  702.                      String var91 = "";
  703.                      if (var6.startsWith("JDPWiz")) {
  704.                         var91 = "RL1";
  705.                      }
  706.  
  707.                      JDPListLayout var94 = (JDPListLayout)var87;
  708.                      JDPSelectDSN var96 = (JDPSelectDSN)var1.relatedComps[0];
  709.                      JDPSelectTable var98 = (JDPSelectTable)var1.relatedComps[1];
  710.                      var5 = var5 + "\\*R" + this.createComment("Create and load the Result List Panel");
  711.                      var5 = var5 + "\tpublic void " + var1.name;
  712.                      if (var6.startsWith("JDPWiz")) {
  713.                         var5 = var5 + "SearchResults";
  714.                      }
  715.  
  716.                      var5 = var5 + "Main() {\r\n\r\n";
  717.                      if (var94.psdisplayFields != null && var94.columns.getSelectedItems().length > 0) {
  718.                         var5 = var5 + "\t\tString " + var1.name + "sf = \"" + var94.pselectFields + "\";\r\n";
  719.                         var5 = var5 + "\t\tString[] " + var1.name + "df = {";
  720.  
  721.                         for(int var103 = 0; var103 < var94.psdisplayFields.length; ++var103) {
  722.                            if (var103 > 0) {
  723.                               var5 = var5 + ",";
  724.                            }
  725.  
  726.                            var5 = var5 + "\"" + var94.psdisplayFields[var103] + "\"";
  727.                         }
  728.  
  729.                         var5 = var5 + "};\r\n";
  730.                         var5 = var5 + "\t\tString " + var1.name + "wc = \"" + var94.pfromwhereclause.getText() + "\";\r\n";
  731.                         var5 = var5 + "\t\tString[] " + var1.name + "sct = {";
  732.  
  733.                         for(int var104 = 0; var104 < var94.psortCh.length; ++var104) {
  734.                            if (var104 > 0) {
  735.                               var5 = var5 + ",";
  736.                            }
  737.  
  738.                            var5 = var5 + "\"" + var94.psortCh[var104] + "\"";
  739.                         }
  740.  
  741.                         var5 = var5 + "};\r\n";
  742.                         String[] var105 = var94.psortChSql;
  743.                         var5 = var5 + "\t\tString[] " + var1.name + "sc = {";
  744.  
  745.                         for(int var106 = 0; var106 < var105.length; ++var106) {
  746.                            if (var106 > 0) {
  747.                               var5 = var5 + ",";
  748.                            }
  749.  
  750.                            var5 = var5 + "\"" + var105[var106] + "\"";
  751.                         }
  752.  
  753.                         var5 = var5 + "};\r\n";
  754.                         var5 = var5 + "\t\tJDPJagg jaggSQL = new JDPJagg(user.jaggPath);\r\n";
  755.                         var5 = var5 + this.createJaggPrefs(var96, "\t\t");
  756.                         var82 = var94.pinitChoice;
  757.                         var5 = var5 + "\t\t" + var1.name + var91 + " = new JDPSearchResults(";
  758.                         var5 = var5 + "user, targetPanel, ";
  759.                         if (var94.useTree.getSelectedIndex() == 0) {
  760.                            var5 = var5 + "true";
  761.                         } else {
  762.                            var5 = var5 + "false";
  763.                         }
  764.  
  765.                         var5 = var5 + ", jaggSQL, false, ";
  766.                         var5 = var5 + var1.name + "sf, ";
  767.                         var5 = var5 + var1.name + "df, ";
  768.                         var5 = var5 + var1.name + "wc, ";
  769.                         var5 = var5 + var1.name + "sct, ";
  770.                         var5 = var5 + var1.name + "sc, ";
  771.                         var5 = var5 + var1.name + "sc, ";
  772.                         var5 = var5 + "\"" + var82 + "\", ";
  773.                         if (var94.displayCount.getSelectedIndex() == 0) {
  774.                            var5 = var5 + "true, ";
  775.                         } else {
  776.                            var5 = var5 + "false, ";
  777.                         }
  778.  
  779.                         var5 = var5 + "\"" + var94.pcounttext.getText() + "\"";
  780.                         var5 = var5 + ");\r\n";
  781.                         var5 = var5 + "\t\tint[] " + var1.name + "icons = new int[" + Integer.toString(var94.iconList.length + 2) + "];\r\n";
  782.                         var5 = var5 + "\t\t" + var1.name + "icons[0] = " + Integer.toString(var94.mainBranchIcon.getSelectedIndex()) + ";\r\n";
  783.                         var5 = var5 + "\t\t" + var1.name + "icons[1] = " + Integer.toString(var94.mainIcon.getSelectedIndex()) + ";\r\n";
  784.  
  785.                         for(int var107 = 0; var107 < var94.iconList.length; ++var107) {
  786.                            if (var94.iconList[var107] != 0) {
  787.                               var5 = var5 + "\t\t" + var1.name + "icons[" + Integer.toString(var107 + 2) + "] = " + Integer.toString(var94.iconList[var107]) + ";\r\n";
  788.                            }
  789.                         }
  790.  
  791.                         var5 = var5 + "\t\t" + var1.name + var91 + ".setMinWidth(" + var94.treeMinWidth.getText() + ");\r\n";
  792.                         var5 = var5 + "\t\t" + var1.name + var91 + ".setIcons(" + var1.name + "icons);\r\n";
  793.                         var5 = var5 + "\t\t" + var1.name + var91 + ".setFromWhereClause(\"" + this.createFromWhereClause(var96, var98, var94) + "\");\r\n";
  794.                         var5 = var5 + "\t\t" + var1.name + var91 + ".clearList(\"" + var94.mainBranchText.getText() + "\");\r\n";
  795.                         var5 = var5 + "\t\t" + var1.name + var91 + ".loadList();\r\n";
  796.                      }
  797.  
  798.                      var5 = var5 + "\t}\r\n\r\n";
  799.                   }
  800.                }
  801.             }
  802.  
  803.             if (!var5.equals("") && var5.indexOf("\\*") >= 0) {
  804.                int var84 = 0;
  805.  
  806.                for(int var88 = 0; (var88 = var5.indexOf("\\*", var88 + 2)) >= 0; ++var84) {
  807.                }
  808.  
  809.                var4 = new String[var84 + 1];
  810.                int var92 = 0;
  811.                int var89 = 0;
  812.  
  813.                for(int var97 = var5.indexOf("\\*", var89 + 2); var84-- >= 0; var97 = var5.indexOf("\\*", var97 + 2)) {
  814.                   String var95;
  815.                   if (var97 >= 0) {
  816.                      var95 = var5.substring(var89 + 2, var97);
  817.                   } else {
  818.                      var95 = var5.substring(var89 + 2);
  819.                   }
  820.  
  821.                   if (var95.length() > 0) {
  822.                      var4[var92++] = var95;
  823.                   }
  824.  
  825.                   var89 = var97;
  826.                }
  827.             } else {
  828.                var4 = new String[]{""};
  829.             }
  830.          }
  831.  
  832.          if (var3.equals("Replace")) {
  833.             this.target.replaceChangedSource(var1, var4, true);
  834.             this.target.setProperties(var1);
  835.          } else {
  836.             int var85 = this.target.saveSource(var1, var4);
  837.             if (this.target.buttonPanel == null || this.target.buttonPanel.getPressed() == null || this.target.buttonPanel.getPressed().equals("Source")) {
  838.                this.target.loadSource(var1, var85);
  839.             }
  840.  
  841.          }
  842.       }
  843.    }
  844.  
  845.    String createJaggPrefs(JDPSelectDSN var1, String var2) {
  846.       String var3 = "";
  847.       String var4 = super.user.u.replace(var1.connectstring.getText(), "\\", "\\\\");
  848.       if (var1 != null && var1.usernameChoice != null && var1.usernameChoice.getSelectedIndex() == 1) {
  849.          var4 = super.user.u.replace(var4, "UID=" + var1.userid.getText(), "UID=\" + user.cust.username + \"");
  850.          var4 = super.user.u.replace(var4, "PWD=" + var1.password.getText(), "PWD=\" + user.cust.password + \"");
  851.       }
  852.  
  853.       if (JDPJagg.useJaggServer) {
  854.          var3 = var3 + var2 + "jaggSQL.loadJdbcSettings(\"" + super.user.u.replace(var1.datasource.getText(), "\\", "\\\\") + "\");\r\n";
  855.          if (var1 != null && var1.usernameChoice != null && var1.usernameChoice.getSelectedIndex() == 1) {
  856.             var3 = var3 + var2 + "jaggSQL.setUID(user.cust.getUsername());\r\n";
  857.             var3 = var3 + var2 + "jaggSQL.setPWD(user.cust.password);\r\n";
  858.          } else {
  859.             var3 = var3 + var2 + "jaggSQL.setUID(\"" + super.user.u.replace(var1.userid.getText(), "\\", "\\\\") + "\");\r\n";
  860.             var3 = var3 + var2 + "jaggSQL.setPWD(\"" + super.user.u.replace(var1.password.getText(), "\\", "\\\\") + "\");\r\n";
  861.          }
  862.       } else {
  863.          var3 = var3 + var2 + "jaggSQL.setDSN(\"" + super.user.u.replace(var1.datasource.getText(), "\\", "\\\\") + "\");\r\n";
  864.          var3 = var3 + var2 + "jaggSQL.setCSTR(\"" + var4 + "\");\r\n";
  865.       }
  866.  
  867.       var3 = var3 + var2 + "jaggSQL.setMRW(\"" + var1.maxRows.getText() + "\");\r\n";
  868.       var3 = var3 + var2 + "jaggSQL.setTOUT(\"" + var1.timeOut.getText() + "\");\r\n";
  869.       return var3;
  870.    }
  871.  
  872.    String constructSourceLine(JDPTreeBranch var1, String var2) {
  873.       String var3 = "";
  874.       String var4 = var1.compType;
  875.       if (var2.equals("Components")) {
  876.          var3 = var3 + "\t";
  877.          if (var4.equals("CheckboxGroup")) {
  878.             var3 = var3 + "Checkbox " + var1.name + ";\r\n";
  879.          } else if (!var4.equals("JDPColumns") && !var4.startsWith("JDPWiz")) {
  880.             if (!var4.equals("JDPGridDetail") && !var4.equals("JDPGridLayout")) {
  881.                if (var4.equals("JDPReportDetail")) {
  882.                   var3 = var3 + "JDPTextGrid " + var1.name + ";\r\n";
  883.                } else if (!var4.equals("JDPChartDetail") && !var4.equals("JDPChartLayout")) {
  884.                   if (var4.equals("Choice")) {
  885.                      var3 = var3 + var4 + " " + var1.name + ";\r\n";
  886.                      var3 = var3 + "\tVector value" + var1.name + ";\r\n";
  887.                   } else if (var4.equals("JDPChoice")) {
  888.                      var3 = var3 + var4 + " " + var1.name + ";\r\n";
  889.                      var3 = var3 + "\tVector value" + var1.name + ";\r\n";
  890.                   } else if (var4.equals("JDPComboBox")) {
  891.                      var3 = var3 + var4 + " " + var1.name + ";\r\n";
  892.                   } else {
  893.                      var3 = var3 + var4 + " " + var1.name + ";\r\n";
  894.                   }
  895.                } else {
  896.                   var3 = var3 + "JDPChart " + var1.name + ";\r\n";
  897.                }
  898.             } else {
  899.                var3 = var3 + "JDPTextGrid " + var1.name + ";\r\n";
  900.             }
  901.          } else {
  902.             var3 = var3 + "Panel " + var1.name + ";\r\n";
  903.             if (var4.equals("JDPColumns") || var4.equals("JDPWizForm")) {
  904.                JDPScreenSettings var5 = (JDPScreenSettings)this.findRelatedComp(var1, "JDPScreenSettings");
  905.                String var6 = var5.lockingColumn.getSelectedItem();
  906.                if (var6 != null && !var6.equals("")) {
  907.                   var3 = var3 + "\tString " + var1.name + super.user.u.strip(var6) + "Lock;\r\n";
  908.                }
  909.             }
  910.          }
  911.       }
  912.  
  913.       if (var2.equals("InitClassBody")) {
  914.          if (var4.equals("JDPTabSelectPanel")) {
  915.             int var36 = ((JDPTabSelectPanel)var1.thisObject).getTabcount();
  916.             String[] var41 = ((JDPTabSelectPanel)var1.thisObject).getTabnames();
  917.             var3 = var3 + "\t\tString[] " + var1.name + "t = new String[" + Integer.toString(var36) + "];\r\n";
  918.             var3 = var3 + "\t\tPanel[] " + var1.name + "p = new Panel[" + Integer.toString(var36) + "];\r\n";
  919.  
  920.             for(int var7 = 0; var7 < var36; ++var7) {
  921.                var3 = var3 + "\t\t" + var1.name + "p[" + Integer.toString(var7) + "] = new Panel();\r\n";
  922.                var3 = var3 + "\t\t" + var1.name + "p[" + Integer.toString(var7) + "].setLayout(new BorderLayout());\r\n";
  923.                var3 = var3 + "\t\t" + var1.name + "t[" + Integer.toString(var7) + "] = \"" + var41[var7] + "\";\r\n";
  924.             }
  925.          }
  926.  
  927.          boolean var37 = false;
  928.          var3 = var3 + "\t\t";
  929.          if (var1.compPosition != null && var1.compPosition.equals("MenuAccess")) {
  930.             var3 = var3 + var1.name + " = (" + var1.compType + ")user.u.getInstanceHandle(\"" + var1.compType + "\",false";
  931.          } else if (var1.compPosition != null && var1.compPosition.equals("MenuAutoLoad")) {
  932.             var3 = var3 + var1.name + " = (" + var1.compType + ")user.u.getInstanceHandle(\"" + var1.compType + "\",true";
  933.          } else if (!var4.equals("JDPWhereClause") && !var4.equals("JDPSearchResults") && !var4.equals("JDPGridDetail") && !var4.equals("JDPReportDetail") && !var4.equals("JDPChartDetail") && !var4.equals("JDPChoice") && !var4.equals("JDPComboBox") && !var4.equals("JDPList")) {
  934.             if (!var4.equals("JDPChartLayout")) {
  935.                if (var4.equals("JDPServerListener")) {
  936.                   var3 = var3 + var1.name + " = user.serverListener;\r\n";
  937.                } else if (var4.equals("JDPButtons")) {
  938.                   var3 = var3 + "String[] " + var1.name + "btns = {";
  939.                   int var44 = Integer.parseInt(this.getProp(var1, "# Btns:"));
  940.  
  941.                   for(int var50 = 0; var50 < var44; ++var50) {
  942.                      if (var50 > 0) {
  943.                         var3 = var3 + ",";
  944.                      }
  945.  
  946.                      var3 = var3 + "\"" + this.getProp(var1, "Btn#" + Integer.toString(var50) + ":") + "\"";
  947.                   }
  948.  
  949.                   var3 = var3 + "};\r\n";
  950.                   var3 = var3 + "\t\tint[] " + var1.name + "icns = {";
  951.  
  952.                   for(int var51 = 0; var51 < var44; ++var51) {
  953.                      if (var51 > 0) {
  954.                         var3 = var3 + ",";
  955.                      }
  956.  
  957.                      var3 = var3 + "JDPButton.getIconValue(\"" + this.getProp(var1, "Icon#" + Integer.toString(var51) + ":") + "\")";
  958.                   }
  959.  
  960.                   var3 = var3 + "};\r\n";
  961.                   var3 = var3 + "\t\t" + var1.name + " = new JDPButtons(";
  962.                   var3 = var3 + "user, ";
  963.                   if (this.getProp(var1, "Labels:").equals("No")) {
  964.                      var3 = var3 + var1.name + "icns, " + var1.name + "btns, ";
  965.                   } else {
  966.                      var3 = var3 + var1.name + "btns, " + var1.name + "icns, ";
  967.                   }
  968.  
  969.                   var3 = var3 + "JDPButtons.getAlignmentValue(\"" + this.getProp(var1, "Align:") + "\")";
  970.                } else {
  971.                   boolean var43 = false;
  972.                   if (!var4.equals("JDPColumns") && !var4.startsWith("JDPWiz")) {
  973.                      if (var4.equals("CheckboxGroup")) {
  974.                         var3 = var3 + var1.name + " = new Checkbox(";
  975.                      } else if (var4.equals("JDPGridLayout")) {
  976.                         var3 = var3 + var1.name + " = new JDPTextGrid(";
  977.                      } else if (var1.relatedComps == null || !var1.relatedComps[0].equals(this.target.instanceMgr)) {
  978.                         var43 = true;
  979.                         var3 = var3 + var1.name + " = new " + var4 + "(";
  980.                      }
  981.                   } else {
  982.                      var3 = var3 + var1.name + " = new Panel(";
  983.                   }
  984.  
  985.                   if (var4.equals("Label")) {
  986.                      var3 = var3 + "\"" + this.getProp(var1, "Label:") + "\", Label.LEFT";
  987.                   } else if (!var4.equals("TextField") && !var4.equals("JDPTextField")) {
  988.                      if (!var4.equals("JDPSpinner") && !var4.equals("JDPDate")) {
  989.                         if (var4.equals("TextArea")) {
  990.                            var3 = var3 + "\"" + super.user.u.replace(super.user.u.replace(this.getProp(var1, "Dft:"), "\n", "\\n"), "\r", "\\r") + "\", " + this.getProp(var1, "Rows:") + "," + this.getProp(var1, "Cols:");
  991.                         } else if (var4.equals("Button")) {
  992.                            if (this.getProp(var1, "Label:") != null && !this.getProp(var1, "Label:").equals("")) {
  993.                               var3 = var3 + "\"" + this.getProp(var1, "Label:") + "\"";
  994.                            }
  995.                         } else if (var4.equals("CheckboxGroup")) {
  996.                            var3 = var3 + "\"" + this.getProp(var1, "Label:") + "\", ";
  997.                            var3 = var3 + "cb" + this.getProp(var1, "Group:") + ", ";
  998.                            int var49 = Integer.parseInt(this.getProp(var1, "Group:").substring(5));
  999.                            if (this.target.cbgroup[var49] != null && this.target.cbgroup[var49].getCurrent() == null) {
  1000.                               ((Checkbox)var1.thisObject).setState(true);
  1001.                            }
  1002.  
  1003.                            if (((Checkbox)var1.thisObject).getState()) {
  1004.                               var3 = var3 + "true";
  1005.                            } else {
  1006.                               var3 = var3 + "false";
  1007.                            }
  1008.                         } else if (var4.equals("Checkbox")) {
  1009.                            var3 = var3 + "\"" + this.getProp(var1, "Label:") + "\"";
  1010.                            if (((Checkbox)var1.thisObject).getState()) {
  1011.                               var3 = var3 + ");\r\n\t\t" + var1.name + ".setState(true";
  1012.                            }
  1013.                         } else if (var4.equals("Scrollbar")) {
  1014.                            String var48 = this.getProp(var1, "Align:");
  1015.                            if (var48.equals("Horizontal")) {
  1016.                               var3 = var3 + "Scrollbar.HORIZONTAL,";
  1017.                            } else {
  1018.                               var3 = var3 + "Scrollbar.VERTICAL,";
  1019.                            }
  1020.  
  1021.                            var3 = var3 + this.getProp(var1, "Value:") + "," + this.getProp(var1, "Vis:") + "," + this.getProp(var1, "Min:") + "," + this.getProp(var1, "Max:");
  1022.                         } else if (var4.equals("JDPButton")) {
  1023.                            if (this.getProp(var1, "Labels:").equals("No")) {
  1024.                               var3 = var3 + "JDPButton.getIconValue(\"" + this.getProp(var1, "Icon:") + "\"), \"" + this.getProp(var1, "Label:") + "\"";
  1025.                            } else if (this.getProp(var1, "Icon:").equals("")) {
  1026.                               var3 = var3 + "\"" + this.getProp(var1, "Label:") + "\"";
  1027.                            } else {
  1028.                               var3 = var3 + "\"" + this.getProp(var1, "Label:") + "\", JDPButton.getIconValue(\"" + this.getProp(var1, "Icon:") + "\")";
  1029.                            }
  1030.  
  1031.                            var3 = var3 + ", JDPButton.getAlignmentValue(\"" + this.getProp(var1, "Align:") + "\")";
  1032.                         } else if (!var4.equals("JDPButtons")) {
  1033.                            if (var4.equals("JDPChiselFramePanel")) {
  1034.                               var3 = var3 + "user, \"" + this.getProp(var1, "Title:") + "\"";
  1035.                            } else if (var4.equals("JDPTabSelectPanel")) {
  1036.                               var3 = var3 + "user, " + var1.name + "t, " + var1.name + "p, \"North\"";
  1037.  
  1038.                               try {
  1039.                                  for(int var47 = 0; var47 < Integer.parseInt(this.getProp(var1, "# Tabs:")); ++var47) {
  1040.                                     Object var54 = null;
  1041.                                     String var55;
  1042.                                     if (!(var55 = this.getProp(var1, "Icon#" + Integer.toString(var47) + ":")).equals("")) {
  1043.                                        var3 = var3 + ");\r\n\t\t" + var1.name + ".setTabIcon(" + Integer.toString(var47) + ",\"" + var55 + "\"";
  1044.                                     }
  1045.                                  }
  1046.                               } catch (Exception var16) {
  1047.                               }
  1048.                            } else if (!var4.equals("JDPTextGrid") && !var4.equals("JDPGridLayout") && !var4.equals("JDPSplitPanel")) {
  1049.                               if (var4.equals("JDPTreePicker")) {
  1050.                                  var3 = var3 + "user);\r\n\t\t" + var1.name + ".setRoot(\"" + this.getProp(var1, "Title:") + "\", true";
  1051.                               } else if (var4.equals("JDPRichText")) {
  1052.                                  var3 = var3 + "user";
  1053.                               } else if (var4.equals("JDPServerSender")) {
  1054.                                  var3 = var3 + "user";
  1055.                               } else if (var4.equals("JDPRMIConnection")) {
  1056.                                  var3 = var3 + "user";
  1057.                               } else if (var4.equals("JDPImage")) {
  1058.                                  var3 = var3 + "user, \"" + super.user.u.replace(this.getProp(var1, "Path:"), "\\", "\\\\") + "\"";
  1059.                                  var3 = var3 + ");\r\n\t\t" + var1.name + ".setDimension(" + this.getProp(var1, "Width:") + "," + this.getProp(var1, "Height:");
  1060.                               } else if (var4.equals("JDPBrowser")) {
  1061.                                  var3 = var3 + ");\r\n\t\t" + var1.name + ".InitClass(user, targetPanel, \"" + super.user.u.replace(this.getProp(var1, "Doc path:"), "\\", "\\\\") + "\"";
  1062.                               } else if (var4.equals("JDPBrowserCtl")) {
  1063.                                  var3 = var3 + ");\r\n\t\t" + var1.name + ".InitClass(user, targetPanel, \"" + super.user.u.replace(this.getProp(var1, "Doc path:"), "\\", "\\\\") + "\"";
  1064.                               } else if (var4.equals("JDPEmailSender")) {
  1065.                                  var3 = var3 + "user";
  1066.                               } else if (var4.equals("JDPAlphaSender")) {
  1067.                                  var3 = var3 + "user";
  1068.                               } else if (var4.equals("JDPPopupComponent")) {
  1069.                                  var3 = var3 + "user, this";
  1070.                               } else if (var4.equals("JDPCommandExecuter")) {
  1071.                                  var3 = var3 + "user";
  1072.                               } else if (var4.equals("JDPDate")) {
  1073.                                  var3 = var3 + "user";
  1074.                               } else if (var4.equals("JDPDialog")) {
  1075.                                  var3 = var3 + "user, this";
  1076.                               } else if (var4.equals("JDPMessageDialog")) {
  1077.                                  var3 = var3 + "user, this";
  1078.                               } else if (var4.equals("JDPFormatDoc")) {
  1079.                                  var3 = var3 + "user";
  1080.                               } else if (var4.equals("JDPJagg")) {
  1081.                                  var3 = var3 + "user.jaggPath";
  1082.                               } else if (var1.thisObject instanceof JDPClassLayout) {
  1083.                                  if (!var43) {
  1084.                                     var3 = var3 + var1.name + " = new " + var4 + "(";
  1085.                                  }
  1086.  
  1087.                                  var3 = var3 + ");\r\n\t\t" + var1.name + ".InitClass(user, targetPanel, moduleParameter";
  1088.                               } else if (var1.relatedComps != null && var1.relatedComps[0].equals(this.target.instanceMgr)) {
  1089.                                  this.target.instanceMgr.setComponentName(var1.name);
  1090.                                  this.target.instanceMgr.setThisBranch(var1);
  1091.                                  this.target.instanceMgr.refresh();
  1092.                                  JDPTreeBranch var46 = this.target.instanceMgr.Parameters.treeRoot;
  1093.                                  JDPTreeBranch var8 = null;
  1094.                                  if (var46 != null && var46.leaves != null && var46.leaves.size() > 0) {
  1095.                                     var8 = (JDPTreeBranch)var46.leaves.elementAt(0);
  1096.                                  }
  1097.  
  1098.                                  if (var8 != null && var8.name.equals("Create from other object")) {
  1099.                                     var3 = var3 + var1.name + " = ";
  1100.                                  } else {
  1101.                                     var3 = var3 + var1.name + " = new " + var4 + "(";
  1102.                                  }
  1103.  
  1104.                                  if (var46 != null && var46.leaves != null) {
  1105.                                     for(int var9 = 0; var9 < var46.leaves.size(); ++var9) {
  1106.                                        if (var9 > 0) {
  1107.                                           var3 = var3 + ", ";
  1108.                                        }
  1109.  
  1110.                                        var8 = (JDPTreeBranch)var46.leaves.elementAt(var9);
  1111.                                        JDPTreeBranch var10 = null;
  1112.                                        if (var8.leaves != null && var8.leaves.size() > 0) {
  1113.                                           var10 = (JDPTreeBranch)var8.leaves.elementAt(0);
  1114.                                        }
  1115.  
  1116.                                        if (var10 == null) {
  1117.                                           var3 = var3 + "null";
  1118.                                        } else if (!var10.name.startsWith("String (") && !var10.name.startsWith("int (") && !var10.name.startsWith("boolean (") && !var10.name.startsWith("char (") && !var10.name.startsWith("byte (") && !var10.name.startsWith("short (") && !var10.name.startsWith("long (") && !var10.name.startsWith("float (") && !var10.name.startsWith("double (")) {
  1119.                                           if (var10.leaves != null && var10.leaves.size() != 0) {
  1120.                                              JDPTreeBranch var11 = (JDPTreeBranch)var10.leaves.elementAt(0);
  1121.                                              var3 = var3 + var10.name + "." + var11.name.substring(0, var11.name.length() - 2) + "(";
  1122.                                              if (var11.leaves != null) {
  1123.                                                 for(int var12 = 0; var12 < var11.leaves.size(); ++var12) {
  1124.                                                    JDPTreeBranch var13 = (JDPTreeBranch)var11.leaves.elementAt(var12);
  1125.                                                    JDPTreeBranch var14 = null;
  1126.                                                    if (var13.leaves != null && var13.leaves.size() > 0) {
  1127.                                                       var14 = (JDPTreeBranch)var13.leaves.elementAt(0);
  1128.                                                    }
  1129.  
  1130.                                                    if (var12 > 0) {
  1131.                                                       var3 = var3 + ",";
  1132.                                                    }
  1133.  
  1134.                                                    if (var14 == null) {
  1135.                                                       var3 = var3 + "null";
  1136.                                                    } else if (!var14.name.startsWith("String (") && !var14.name.startsWith("int (") && !var14.name.startsWith("boolean (")) {
  1137.                                                       var3 = var3 + var14.name;
  1138.                                                    } else {
  1139.                                                       var3 = var3 + var14.name.substring(var14.name.indexOf("(") + 1, var14.name.length() - 1);
  1140.                                                    }
  1141.                                                 }
  1142.                                              }
  1143.  
  1144.                                              if (!var8.name.equals("Create from other object")) {
  1145.                                                 var3 = var3 + ")";
  1146.                                              }
  1147.                                           } else {
  1148.                                              var3 = var3 + var10.name;
  1149.                                           }
  1150.                                        } else {
  1151.                                           var3 = var3 + var10.name.substring(var10.name.indexOf("(") + 1, var10.name.length() - 1);
  1152.                                        }
  1153.                                     }
  1154.                                  } else {
  1155.                                     var3 = var3 + var1.name + " = new " + var4 + "(";
  1156.                                  }
  1157.                               }
  1158.                            } else {
  1159.                               var3 = var3 + "user";
  1160.                            }
  1161.                         }
  1162.                      } else {
  1163.                         var3 = var3 + "user,\"" + this.getProp(var1, "Dft:") + "\", " + this.getProp(var1, "Cols:");
  1164.                      }
  1165.                   } else {
  1166.                      var3 = var3 + "\"" + this.getProp(var1, "Dft:") + "\", " + this.getProp(var1, "Cols:");
  1167.                   }
  1168.                }
  1169.             }
  1170.          } else {
  1171.             if (var1.text != null) {
  1172.                for(int var42 = 0; var42 < var1.text.length && var1.text[var42] != null; ++var42) {
  1173.                   if (var1.text[var42].indexOf(var1.name + "Main()") >= 0) {
  1174.                      var37 = true;
  1175.                      break;
  1176.                   }
  1177.                }
  1178.             }
  1179.  
  1180.             if (var37) {
  1181.                var3 = var3 + var1.name + "Main(";
  1182.             } else if (!var4.equals("JDPWhereClause") && !var4.equals("JDPSearchResults")) {
  1183.                var3 = var3 + var1.name + " = new " + var4 + "(";
  1184.                if (var4.equals("JDPComboBox")) {
  1185.                   var3 = var3 + "user";
  1186.                }
  1187.             }
  1188.          }
  1189.  
  1190.          if (var37) {
  1191.             var3 = var3 + ");\r\n";
  1192.          } else if (!var4.equals("JDPWhereClause") && !var4.equals("JDPSearchResults") && !var4.equals("JDPChartLayout") && !var4.equals("JDPServerListener")) {
  1193.             var3 = var3 + ");\r\n";
  1194.          }
  1195.       }
  1196.  
  1197.       if (var2.equals("Properties")) {
  1198.          if (var1.thisObject != null && var1.thisObject instanceof Component) {
  1199.             if (this.getProp(var1, "Editable:").equals("No") || this.getProp(var1, "Editable:").equals("false")) {
  1200.                var3 = var3 + "\t\t" + var1.name + ".setEditable(false);\r\n";
  1201.             }
  1202.  
  1203.             if (this.getProp(var1, "Enabled:").equals("No") || this.getProp(var1, "Enabled:").equals("false")) {
  1204.                var3 = var3 + "\t\t" + var1.name + ".disable();\r\n";
  1205.             }
  1206.  
  1207.             if (this.getProp(var1, "Visible:").equals("No") || this.getProp(var1, "Visible:").equals("false")) {
  1208.                var3 = var3 + "\t\t" + var1.name + ".hide();\r\n";
  1209.             }
  1210.  
  1211.             if (!this.getProp(var1, "Popup:").equals("") || !this.getProp(var1, "Status:").equals("")) {
  1212.                var3 = var3 + "\t\tpopuppanel.addComponent(" + var1.name + " ,\"" + this.getProp(var1, "Popup:") + "\" ,\"" + this.getProp(var1, "Status:") + "\");\r\n";
  1213.             }
  1214.  
  1215.             if (var1.compType.equals("JDPButtons")) {
  1216.                for(int var38 = 0; var38 < Integer.parseInt(this.getProp(var1, "# Btns:")); ++var38) {
  1217.                   if (!this.getProp(var1, "Popup" + Integer.toString(var38) + ":").equals("") || !this.getProp(var1, "Status" + Integer.toString(var38) + ":").equals("")) {
  1218.                      var3 = var3 + "\t\tpopuppanel.addComponent(" + var1.name + ".button[" + Integer.toString(var38) + "] ,\"" + this.getProp(var1, "Popup" + Integer.toString(var38) + ":") + "\" ,\"" + this.getProp(var1, "Status" + Integer.toString(var38) + ":") + "\");\r\n";
  1219.                   }
  1220.                }
  1221.             }
  1222.  
  1223.             if (var1.compType.equals("JDPTabSelectPanel")) {
  1224.                try {
  1225.                   for(int var39 = 0; var39 < Integer.parseInt(this.getProp(var1, "# Tabs:")); ++var39) {
  1226.                      var3 = var3 + "\t\t" + var1.name + ".setTabcolor(" + Integer.toString(var39) + ",user.u._cvtcolor(\"" + this.getProp(var1, "FCol#" + Integer.toString(var39) + ":") + "\"), user.u._cvtcolor(\"" + this.getProp(var1, "BCol#" + Integer.toString(var39) + ":") + "\"));\r\n";
  1227.                   }
  1228.                } catch (Exception var15) {
  1229.                }
  1230.             }
  1231.          }
  1232.  
  1233.          for(int var40 = 0; var40 < var1.properties[0].length; ++var40) {
  1234.             if (!var1.properties[0][var40].equals("")) {
  1235.                String var45 = var1.properties[0][var40].substring(0, var1.properties[0][var40].length() - 1);
  1236.                String[] var52 = new String[0];
  1237.                String[] var56 = new String[0];
  1238.                if (var1.properties[2][var40] != null) {
  1239.                   StringTokenizer var57 = new StringTokenizer(var1.properties[2][var40], "|");
  1240.                   var52 = new String[var57.countTokens()];
  1241.  
  1242.                   for(int var60 = 0; var57.hasMoreTokens(); var52[var60++] = var57.nextToken()) {
  1243.                   }
  1244.  
  1245.                   var57 = new StringTokenizer(var1.properties[1][var40], ",");
  1246.                   var56 = new String[var57.countTokens()];
  1247.  
  1248.                   for(int var61 = 0; var57.hasMoreTokens(); var56[var61++] = var57.nextToken()) {
  1249.                   }
  1250.                }
  1251.  
  1252.                if (var52.length > 0 && var52.length == var56.length && !var52[0].equals("") && !var45.equals("Dft") && !var45.equals("Pos") && !var45.equals("Layout") && !var45.equals("Popup") && !var45.equals("Status") && !var45.equals("Tab to") && !var45.equals("Back to") && !var45.equals("Font") && !var45.equals("FColor") && !var45.equals("BColor") && !var45.equals("Color") && !var45.equals("Style") && !var45.equals("Size") && !var45.equals("Visible")) {
  1253.                   if (var45.equals("Enabled")) {
  1254.                      if (var1.properties[1][var40].equals("false")) {
  1255.                         var3 = var3 + "\t\t" + var1.name + ".disable();\r\n";
  1256.                      }
  1257.                   } else {
  1258.                      var3 = var3 + "\t\t" + var1.name + ".set" + var45 + "(";
  1259.  
  1260.                      for(int var59 = 0; var59 < var52.length; ++var59) {
  1261.                         if (var59 > 0) {
  1262.                            var3 = var3 + ",";
  1263.                         }
  1264.  
  1265.                         if (!var52[var59].equals("int") && !var52[var59].equals("boolean") && !var52[var59].equals("short") && !var52[var59].equals("long") && !var52[var59].equals("double") && !var52[var59].equals("float")) {
  1266.                            if (!var52[var59].equals("char") && !var52[var59].equals("byte")) {
  1267.                               if (var52[var59].equals("java.lang.String")) {
  1268.                                  var3 = var3 + "\"" + var56[var59] + "\"";
  1269.                               }
  1270.                            } else {
  1271.                               var3 = var3 + "'" + var56[var59] + "'";
  1272.                            }
  1273.                         } else {
  1274.                            var3 = var3 + var56[var59];
  1275.                         }
  1276.                      }
  1277.  
  1278.                      var3 = var3 + ");\r\n";
  1279.                   }
  1280.                }
  1281.             }
  1282.          }
  1283.       }
  1284.  
  1285.       return var3;
  1286.    }
  1287.  
  1288.    JDPTreeBranch getErrorEvent(int var1) {
  1289.       int var2 = 0;
  1290.       int var3 = 0;
  1291.       Vector var4 = null;
  1292.       if (var1 <= this.mainSourceLines) {
  1293.          return null;
  1294.       } else {
  1295.          while(var3 < var1 && var2 < this.linePosVector.size()) {
  1296.             var4 = (Vector)this.linePosVector.elementAt(var2);
  1297.             var3 = Integer.parseInt((String)var4.elementAt(0)) - 2;
  1298.             ++var2;
  1299.          }
  1300.  
  1301.          if (var4 != null) {
  1302.             String var5 = (String)var4.elementAt(2);
  1303.             if (var5.equals("Event")) {
  1304.                return (JDPTreeBranch)var4.elementAt(3);
  1305.             }
  1306.          }
  1307.  
  1308.          return null;
  1309.       }
  1310.    }
  1311.  
  1312.    int getErrorEventLine(int var1) {
  1313.       int var2 = 0;
  1314.       int var3 = 0;
  1315.       Object var4 = null;
  1316.       if (var1 <= this.mainSourceLines) {
  1317.          return -1;
  1318.       } else {
  1319.          while(var3 < var1 && var2 < this.linePosVector.size()) {
  1320.             Vector var5 = (Vector)this.linePosVector.elementAt(var2);
  1321.             var3 = Integer.parseInt((String)var5.elementAt(0)) - 2;
  1322.             ++var2;
  1323.          }
  1324.  
  1325.          return var3;
  1326.       }
  1327.    }
  1328.  
  1329.    String loadFont(JDPTreeBranch var1) {
  1330.       String var2 = var1.name + ".setFont(new Font(\"" + this.getProp(var1, "Font:") + "\", Font.";
  1331.       if (this.getProp(var1, "Style:").equals("Plain")) {
  1332.          var2 = var2 + "PLAIN";
  1333.       } else if (this.getProp(var1, "Style:").equals("Bold")) {
  1334.          var2 = var2 + "BOLD";
  1335.       } else if (this.getProp(var1, "Style:").equals("Italic")) {
  1336.          var2 = var2 + "ITALIC";
  1337.       } else if (this.getProp(var1, "Style:").equals("Bold Italic")) {
  1338.          var2 = var2 + "BOLD+Font.ITALIC";
  1339.       }
  1340.  
  1341.       var2 = var2 + ", " + this.getProp(var1, "Size:") + "))";
  1342.       return var2;
  1343.    }
  1344.  
  1345.    String insertErrorMarker(String var1, int var2, String var3) {
  1346.       StringBuffer var4 = new StringBuffer();
  1347.       int var5 = var1.indexOf("\n") + 1;
  1348.       int var6 = 0;
  1349.  
  1350.       for(int var7 = 0; var5 >= 0 && var6 >= 0 && var5 > var6; var5 = var1.indexOf("\n", var5) + 1) {
  1351.          if (var7++ == var2) {
  1352.             var4.append(var3);
  1353.             var4.append("\r\n");
  1354.          }
  1355.  
  1356.          var4.append(var1.substring(var6, var5));
  1357.          var6 = var5;
  1358.       }
  1359.  
  1360.       var4.append(var1.substring(var6));
  1361.       return var4.toString();
  1362.    }
  1363.  
  1364.    void constructNewMethod(JDPTreeBranch var1, String var2) {
  1365.       this.constructMethodSource(var1, var2, "Save");
  1366.    }
  1367.  
  1368.    String createFromWhereClause(JDPSelectDSN var1, JDPSelectTable var2, Object var3) {
  1369.       JDPListLayout var4 = null;
  1370.       JDPSelectColumns var5 = null;
  1371.       if (var3 != null) {
  1372.          if (var3 instanceof JDPListLayout) {
  1373.             var4 = (JDPListLayout)var3;
  1374.          }
  1375.  
  1376.          if (var3 instanceof JDPSelectColumns) {
  1377.             var5 = (JDPSelectColumns)var3;
  1378.          }
  1379.       }
  1380.  
  1381.       String var6 = " FROM ";
  1382.       String var7 = "";
  1383.       if (var4 != null) {
  1384.          var7 = var4.pselectFields + " ";
  1385.       }
  1386.  
  1387.       if (var5 != null) {
  1388.          String[] var8 = var5.columns.getSelectedItems();
  1389.  
  1390.          for(int var9 = 0; var9 < var8.length; ++var9) {
  1391.             if (var9 > 0) {
  1392.                var7 = var7 + ",";
  1393.             }
  1394.  
  1395.             var7 = var7 + var8[var9];
  1396.          }
  1397.  
  1398.          var7 = var7 + " ";
  1399.       }
  1400.  
  1401.       int[] var21 = var2.stables.getSelectedIndexes();
  1402.       boolean var22 = true;
  1403.       if (var4 != null) {
  1404.          int[] var10 = var4.columns.getSelectedIndexes();
  1405.  
  1406.          for(int var11 = 0; var11 < var10.length; ++var11) {
  1407.             if (var10[var11] < var4.psortChoiceSql.length) {
  1408.                var7 = var7 + this.switchField(var4.psortChoiceSql[var10[var11]], var2) + " ";
  1409.             }
  1410.          }
  1411.  
  1412.          for(int var26 = 0; var26 < var4.includeTree.countItems(); ++var26) {
  1413.             var7 = var7 + this.switchField(var4.includeTree.getItem(var26), var2) + " ";
  1414.          }
  1415.       }
  1416.  
  1417.       String var25 = null;
  1418.       String var27 = "";
  1419.  
  1420.       for(int var12 = 0; var12 < var2.joinConditions.countItems(); ++var12) {
  1421.          if (var2.joinConditions.getItem(var12).indexOf("*=") > 0) {
  1422.             var25 = "left";
  1423.             var27 = var2.joinConditions.getItem(var12);
  1424.          }
  1425.  
  1426.          if (var2.joinConditions.getItem(var12).indexOf("=*") > 0) {
  1427.             var25 = "right";
  1428.             var27 = var2.joinConditions.getItem(var12);
  1429.          }
  1430.       }
  1431.  
  1432.       String var28 = "";
  1433.       String var13 = "";
  1434.       if (var21.length == 0 || var7.indexOf("a.") >= 0) {
  1435.          var28 = var28 + var2.tables.getSelectedItem();
  1436.          if (var21.length > 0) {
  1437.             var28 = var28 + " a";
  1438.          }
  1439.  
  1440.          if (var1.dsnType.compareTo(JDPJagg.MSSQLSERVER) == 0) {
  1441.             var28 = var28 + " (NOLOCK)";
  1442.          }
  1443.  
  1444.          var22 = false;
  1445.       }
  1446.  
  1447.       for(int var14 = 0; var14 < var21.length; ++var14) {
  1448.          if (var2.stableAlias[var21[var14]].equals("") || var7.indexOf(var2.stableAlias[var21[var14]] + ".") >= 0) {
  1449.             if (var25 == null) {
  1450.                var13 = var13 + ",";
  1451.             }
  1452.  
  1453.             var13 = var13 + var2.stables.getItem(var21[var14]);
  1454.             var13 = var13 + " " + var2.stableAlias[var21[var14]];
  1455.             if (var1.dsnType.compareTo(JDPJagg.MSSQLSERVER) == 0) {
  1456.                var13 = var13 + " (NOLOCK)";
  1457.             }
  1458.  
  1459.             var22 = false;
  1460.          }
  1461.       }
  1462.  
  1463.       StringBuffer var30 = new StringBuffer();
  1464.       if (var25 == null) {
  1465.          var30.append(var28);
  1466.          var30.append(var13);
  1467.       } else if (var25.equals("left")) {
  1468.          var30.append("{oj ");
  1469.          var30.append(var28);
  1470.          var30.append(" LEFT OUTER JOIN ");
  1471.          var30.append(var13);
  1472.          var30.append(" ON ");
  1473.          var30.append(super.user.u.replace(var27, "*", ""));
  1474.          var30.append("}");
  1475.       } else if (var25.equals("right")) {
  1476.          var30.append("{oj ");
  1477.          var30.append(var13);
  1478.          var30.append(" LEFT OUTER JOIN ");
  1479.          var30.append(var28);
  1480.          var30.append(" ON ");
  1481.          var30.append(super.user.u.replace(var27, "*", ""));
  1482.          var30.append("}");
  1483.       }
  1484.  
  1485.       var6 = var6 + var30.toString();
  1486.       var6 = var6 + " WHERE ";
  1487.       if (var2.joinConditions.countItems() != 0) {
  1488.          for(int var15 = 0; var15 < var2.joinConditions.countItems(); ++var15) {
  1489.             if (!var2.joinConditions.getItem(var15).equals(var27)) {
  1490.                String var16 = var2.joinConditions.getItem(var15);
  1491.                int var17 = var16.substring(2).indexOf(".") + 1;
  1492.                if (var7.indexOf(var16.substring(0, 2)) >= 0 && var7.indexOf(var16.substring(var17, var17 + 2)) >= 0) {
  1493.                   var6 = var6 + var16 + " AND ";
  1494.                }
  1495.             }
  1496.          }
  1497.       }
  1498.  
  1499.       if (var4 != null && var4.pfromwhereclause.getText().length() != 0) {
  1500.          var6 = var6 + var4.pfromwhereclause.getText();
  1501.       } else {
  1502.          var6 = var6 + "(1=1)";
  1503.       }
  1504.  
  1505.       return var6;
  1506.    }
  1507.  
  1508.    String addLineNumbers(String var1, int var2) {
  1509.       StringBuffer var3 = new StringBuffer();
  1510.       var3.append(super.user.u.str((float)(var2++), 5, 0));
  1511.       var3.append("\t");
  1512.       int var4 = var1.indexOf("\n") + 1;
  1513.       int var5 = 0;
  1514.  
  1515.       while(var4 >= 0 && var5 >= 0 && var4 > var5) {
  1516.          var3.append(var1.substring(var5, var4));
  1517.          var5 = var4;
  1518.          var4 = var1.indexOf("\n", var4) + 1;
  1519.          var3.append(super.user.u.str((float)(var2++), 5, 0));
  1520.          var3.append("\t");
  1521.       }
  1522.  
  1523.       var3.append(var1.substring(var5));
  1524.       return var3.toString();
  1525.    }
  1526.  
  1527.    int countSourceLines(String var1) {
  1528.       int var2 = 0;
  1529.  
  1530.       for(int var3 = var1.indexOf("\n"); var3 >= 0; var3 = var1.indexOf("\n", var3 + 1)) {
  1531.          ++var2;
  1532.       }
  1533.  
  1534.       return var2;
  1535.    }
  1536.  
  1537.    boolean loadSource(int var1) {
  1538.       if (this.templateSource == null) {
  1539.          this.templateSource = new String[20];
  1540.       }
  1541.  
  1542.       if (var1 == 13) {
  1543.          ++var1;
  1544.       }
  1545.  
  1546.       String var2 = super.user.JDesignerPro.JDPDirectory + "Applications/Layouts/" + "JDPLayout" + Integer.toString(var1) + ".java";
  1547.       super.user.mainmsg.setStatusMsg("Loading template source file #" + Integer.toString(var1) + "...", 0);
  1548.       this.templateSource[var1 - 10] = super.user.u.readFromFile(var2);
  1549.       if (this.templateSource[var1 - 10] == null) {
  1550.          super.user.mainmsg.setStatusMsg("Could not open template source file: " + var2, 20);
  1551.          System.out.println("Could not open template source file: " + var2);
  1552.          return false;
  1553.       } else {
  1554.          super.user.mainmsg.clearStatusMsg();
  1555.          return true;
  1556.       }
  1557.    }
  1558.  
  1559.    String buildSource(JDPTreeBranch var1) {
  1560.       String var2 = "";
  1561.       if (var1.equals(this.target.compTree)) {
  1562.          super.user.mainmsg.setStatusMsg("Building complete source...", 0);
  1563.          var2 = this.buildMainSource(var1);
  1564.          super.user.mainmsg.clearStatusMsg();
  1565.       }
  1566.  
  1567.       return var2;
  1568.    }
  1569.  
  1570.    void constructSource(JDPTreeBranch var1, String var2) {
  1571.       String var3 = var1.compType;
  1572.       this.sourceBuffer.append(this.constructSourceLine(var1, var2));
  1573.       if (var1.leaves != null) {
  1574.          if (var2.equals("Layout") && var1.thisObject != null && var1.thisObject instanceof Component) {
  1575.             String var4 = this.getProp(var1, "Layout:");
  1576.             if (var4 != null && (!var4.equals("") || var1.equals(this.target.compTree))) {
  1577.                if (var4.equals("")) {
  1578.                   var4 = "BorderLayout";
  1579.                }
  1580.  
  1581.                this.sourceBuffer.append("\t\t" + var1.name + ".setLayout(new " + var4 + "(");
  1582.                if (var4.equals("GridLayout")) {
  1583.                   this.sourceBuffer.append(this.getProp(var1, "Rows:") + ",");
  1584.                   this.sourceBuffer.append(this.getProp(var1, "Cols:"));
  1585.                }
  1586.  
  1587.                this.sourceBuffer.append("));\r\n");
  1588.             }
  1589.  
  1590.             if (var1.equals(this.target.compTree)) {
  1591.                if (!this.getProp(var1, "Font:").equals("") && !((Component)var1.thisObject).getFont().equals(super.user.plainFont)) {
  1592.                   this.sourceBuffer.append("\t\t" + this.loadFont(var1) + ";\r\n");
  1593.                }
  1594.  
  1595.                if (!this.getProp(var1, "FColor:").equals("") && !((Component)var1.thisObject).getForeground().equals(((Component)var1.thisObject).getParent().getForeground())) {
  1596.                   this.sourceBuffer.append("\t\t" + var1.name + ".setForeground(user.u._cvtcolor(\"" + this.getProp(var1, "FColor:") + "\"));\r\n");
  1597.                }
  1598.  
  1599.                if (!this.getProp(var1, "BColor:").equals("") && !((Component)var1.thisObject).getForeground().equals(((Component)var1.thisObject).getParent().getForeground())) {
  1600.                   this.sourceBuffer.append("\t\t" + var1.name + ".setBackground(user.u._cvtcolor(\"" + this.getProp(var1, "BColor:") + "\"));\r\n");
  1601.                }
  1602.  
  1603.                this.sourceBuffer.append("\t\tadd(\"Center\", " + var1.name + ");\r\n");
  1604.             }
  1605.  
  1606.             if (var3.equals("JDPColumns") || var3.startsWith("JDPWiz") && !var3.equals("JDPWizEmail") && !var3.equals("JDPWizAlphaPaging")) {
  1607.                this.sourceBuffer.append("\t\t" + var1.name + "Main();\r\n");
  1608.             }
  1609.          }
  1610.  
  1611.          for(int var7 = 0; var7 < var1.leaves.size(); ++var7) {
  1612.             JDPTreeBranch var5 = (JDPTreeBranch)var1.leaves.elementAt(var7);
  1613.             if (var2.equals("Layout") && var5.thisObject != null && var5.thisObject instanceof Component) {
  1614.                if (var3.equals("JDPTabSelectPanel")) {
  1615.                   this.sourceBuffer.append("\t\t" + var1.name + "p[" + Integer.toString(var7) + "].add(\"Center\", " + var5.name + ");\r\n");
  1616.                } else {
  1617.                   String var6 = this.getProp(var1, "Layout:");
  1618.                   if ((var6 == null || !var6.equals("CardLayout")) && !var1.compType.equals("JDPCardPanel")) {
  1619.                      if (var5.compPosition != null && !var5.compPosition.equals("") && !var5.compPosition.equals("null")) {
  1620.                         this.sourceBuffer.append("\t\t" + var1.name + ".add(\"" + var5.compPosition + "\", " + var5.name + ");\r\n");
  1621.                      } else if (!(var5.thisObject instanceof Window)) {
  1622.                         this.sourceBuffer.append("\t\t" + var1.name + ".add(" + var5.name + ");\r\n");
  1623.                      }
  1624.                   } else {
  1625.                      this.sourceBuffer.append("\t\t" + var1.name + ".add(\"" + var5.name + "\", " + var5.name + ");\r\n");
  1626.                   }
  1627.                }
  1628.             }
  1629.  
  1630.             if (var2.equals("Properties") && var5.thisObject != null && var5.thisObject instanceof Component) {
  1631.                if (!this.getProp(var5, "Font:").equals("") && !this.getProp(var5, "Style:").equals("") && !this.getProp(var5, "Size:").equals("") && (!this.getProp(var5, "Font:").equals(this.getProp(var1, "Font:")) || !this.getProp(var5, "Style:").equals(this.getProp(var1, "Style:")) || !this.getProp(var5, "Size:").equals(this.getProp(var1, "Size:")))) {
  1632.                   this.sourceBuffer.append("\t\t" + this.loadFont(var5) + ";\r\n");
  1633.                }
  1634.  
  1635.                if (!this.getProp(var5, "FColor:").equals("") && !this.getProp(var5, "FColor:").equals(this.getProp(var1, "FColor:"))) {
  1636.                   this.sourceBuffer.append("\t\t" + var5.name + ".setForeground(user.u._cvtcolor(\"" + this.getProp(var5, "FColor:") + "\"));\r\n");
  1637.                }
  1638.  
  1639.                if (!this.getProp(var5, "BColor:").equals("") && !this.getProp(var5, "BColor:").equals(this.getProp(var1, "BColor:"))) {
  1640.                   this.sourceBuffer.append("\t\t" + var5.name + ".setBackground(user.u._cvtcolor(\"" + this.getProp(var5, "BColor:") + "\"));\r\n");
  1641.                }
  1642.             }
  1643.  
  1644.             this.constructSource(var5, var2);
  1645.          }
  1646.       }
  1647.  
  1648.    }
  1649.  
  1650.    void composeEventSource(JDPTreeBranch var1, Vector var2) {
  1651.       if (var2 == null) {
  1652.          var2 = new Vector();
  1653.       }
  1654.  
  1655.       if (var1.treeVector != null) {
  1656.          JDPTreeBranch var3 = (JDPTreeBranch)var1.treeVector.elementAt(0);
  1657.          if (var3.leaves != null) {
  1658.             for(int var4 = 0; var4 < var3.leaves.size(); ++var4) {
  1659.                JDPTreeBranch var5 = (JDPTreeBranch)var3.leaves.elementAt(var4);
  1660.                if (var5.leaves != null) {
  1661.                   int var6 = 0;
  1662.                   String[] var7 = null;
  1663.                   Object var8 = null;
  1664.                   String var9 = var5.name;
  1665.                   if (var5.name.startsWith("ACTION_BTN_")) {
  1666.                      var9 = "ACTION_EVENT";
  1667.                   }
  1668.  
  1669.                   if (var5.name.equals("HOME") || var5.name.equals("END") || var5.name.equals("PGUP") || var5.name.equals("PGDN") || var5.name.equals("UP") || var5.name.equals("DOWN") || var5.name.equals("LEFT") || var5.name.equals("RIGHT") || var5.name.equals("F1") || var5.name.equals("F2") || var5.name.equals("F3") || var5.name.equals("F4") || var5.name.equals("F5") || var5.name.equals("F6") || var5.name.equals("F7") || var5.name.equals("F8") || var5.name.equals("F9") || var5.name.equals("F10") || var5.name.equals("F11") || var5.name.equals("F12") || var5.name.equals("ESC")) {
  1670.                      var9 = "KEY_ACTION_RELEASE";
  1671.                   }
  1672.  
  1673.                   for(var6 = 0; var6 < var2.size(); ++var6) {
  1674.                      Vector var10 = (Vector)var2.elementAt(var6);
  1675.                      var7 = (String[])var10.elementAt(0);
  1676.                      if (var7[0].equals(var9)) {
  1677.                         break;
  1678.                      }
  1679.  
  1680.                      var7 = null;
  1681.                   }
  1682.  
  1683.                   boolean var39 = false;
  1684.                   boolean var11 = false;
  1685.                   if (!var5.name.equals(var5.name.toUpperCase())) {
  1686.                      var11 = true;
  1687.                      var39 = true;
  1688.                   }
  1689.  
  1690.                   if (var7 == null) {
  1691.                      var7 = new String[]{var9, ""};
  1692.                      Vector var12 = new Vector();
  1693.                      Vector var32 = new Vector();
  1694.                      var12.addElement(var7);
  1695.                      var12.addElement(var1);
  1696.                      var12.addElement(var32);
  1697.                      var2.addElement(var12);
  1698.                      var39 = true;
  1699.                   }
  1700.  
  1701.                   if (var5.leaves.size() > 0) {
  1702.                      if (var39 && !var5.name.equals(var5.name.toUpperCase())) {
  1703.                         if (this.listenerInterfaces.indexOf(var5.compType.substring(3) + ",") < 0) {
  1704.                            String var10001 = this.listenerInterfaces;
  1705.                            this.listenerInterfaces = var10001 + "\r\n\t\t\t\t\t\t\t" + var5.compType.substring(3) + ",";
  1706.                         }
  1707.  
  1708.                         if (this.objectListeners.indexOf(var1.name + "." + var5.compType) < 0) {
  1709.                            String var46 = this.objectListeners;
  1710.                            this.objectListeners = var46 + "\t\t" + var1.name + "." + var5.compType + "(this);\r\n";
  1711.                         }
  1712.  
  1713.                         for(int var40 = 0; var40 < var5.text.length; ++var40) {
  1714.                            if (!var5.text[var40].equals(var9)) {
  1715.                               String[] var13 = new String[]{var5.text[var40], "\tEmpty Method"};
  1716.                               Vector var14 = new Vector();
  1717.                               Vector var15 = new Vector();
  1718.                               var14.addElement(var13);
  1719.                               var14.addElement(var1);
  1720.                               var14.addElement(var15);
  1721.                               var2.addElement(var14);
  1722.                            }
  1723.                         }
  1724.                      }
  1725.  
  1726.                      Vector var41 = (Vector)var2.elementAt(var6);
  1727.                      if (var41.size() < 3) {
  1728.                         Vector var33 = new Vector();
  1729.                         var41.addElement(var33);
  1730.                      }
  1731.  
  1732.                      Vector var34 = (Vector)var41.elementAt(2);
  1733.                      if (var7[1].indexOf("Empty Method") >= 0) {
  1734.                         var7[1] = "";
  1735.                      }
  1736.  
  1737.                      if (var9.equals("KEY_ACTION_RELEASE")) {
  1738.                         if (!var5.name.equals("ESC") && !var5.name.startsWith("F")) {
  1739.                            var7[1] = var7[1] + "\t\t\tif (e.target.equals(" + var1.name + ") && e.key == Event." + var5.name + ") {\r\n\t\t\t\t";
  1740.                         } else {
  1741.                            var7[1] = var7[1] + "\t\t\tif (e.key == Event." + var5.name + ") {\r\n\t\t\t\t";
  1742.                         }
  1743.                      } else if (var5.name.startsWith("ACTION_BTN_")) {
  1744.                         var7[1] = var7[1] + "\t\t\tif (e.target.equals(" + var1.name + ".button[" + Integer.toString(var4) + "])) {\r\n\t\t\t\t";
  1745.                      } else if (var5.name.startsWith("GOT_FOCUS") && var1.name.equals("Main")) {
  1746.                         var7[1] = var7[1] + "\t\t\tif (e.target.equals(" + var1.name + ") || e.target.equals(this)) {\r\n\t\t\t\t";
  1747.                      } else if (!var11) {
  1748.                         var7[1] = var7[1] + "\t\t\tif (e.target.equals(" + var1.name + ")) {\r\n\t\t\t\t";
  1749.                      } else {
  1750.                         var7[1] = var7[1] + "\t\t\tif (e.getSource().equals(" + var1.name + ")) {\r\n\t\t\t\t";
  1751.                      }
  1752.  
  1753.                      for(int var42 = 0; var42 < var5.leaves.size(); ++var42) {
  1754.                         JDPTreeBranch var43 = (JDPTreeBranch)var5.leaves.elementAt(var42);
  1755.                         if (var43.leaves != null && var43.leaves.size() > 0) {
  1756.                            for(int var44 = 0; var44 < var43.leaves.size(); ++var44) {
  1757.                               JDPTreeBranch var16 = (JDPTreeBranch)var43.leaves.elementAt(var44);
  1758.                               if (var16.text != null && var16.text.length > 0) {
  1759.                                  int var17 = var16.text[0].length() - 1;
  1760.                                  if (var17 > 0) {
  1761.                                     for(char var18 = var16.text[0].charAt(var17); var17 > 0 && (var18 == '\r' || var18 == '\n'); var18 = var16.text[0].charAt(var17)) {
  1762.                                        --var17;
  1763.                                     }
  1764.  
  1765.                                     ++var17;
  1766.                                     var16.text[0] = var16.text[0].substring(0, var17) + "\r\n";
  1767.                                  }
  1768.  
  1769.                                  if (!var11) {
  1770.                                     var7[1] = var7[1] + super.user.u.replace(var16.text[0], "\n", "\n\t\t\t\t");
  1771.                                  } else {
  1772.                                     var7[1] = var7[1] + super.user.u.replace(var16.text[0], "\n", "\n\t\t\t\t");
  1773.                                  }
  1774.  
  1775.                                  var34.addElement(Integer.toString(this.countSourceLines(var7[1]) + 1));
  1776.                                  var34.addElement(var16);
  1777.                                  var34.addElement(var1);
  1778.                               }
  1779.                            }
  1780.                         }
  1781.                      }
  1782.  
  1783.                      if (!var11) {
  1784.                         if (var5.name.startsWith("KEY_PRESS")) {
  1785.                            var7[1] = var7[1] + "return false;\r\n\t\t\t}\r\n";
  1786.                         } else {
  1787.                            var7[1] = var7[1] + "return true;\r\n\t\t\t}\r\n";
  1788.                         }
  1789.                      } else {
  1790.                         var7[1] = var7[1].substring(0, var7[1].length() - 1) + "}\r\n";
  1791.                      }
  1792.                   }
  1793.                }
  1794.             }
  1795.          }
  1796.       }
  1797.  
  1798.       String var19 = this.getProp(var1, "Tab to:");
  1799.       String var20 = this.getProp(var1, "Back to:");
  1800.       if (!var19.equals("") && !var19.equals("?")) {
  1801.          boolean var21 = false;
  1802.          String[] var27 = null;
  1803.          String var30 = "TAB_FORWARD";
  1804.  
  1805.          for(int var22 = 0; var22 < var2.size(); ++var22) {
  1806.             Vector var35 = (Vector)var2.elementAt(var22);
  1807.             var27 = (String[])var35.elementAt(0);
  1808.             if (var27[0].equals(var30)) {
  1809.                break;
  1810.             }
  1811.  
  1812.             var27 = null;
  1813.          }
  1814.  
  1815.          if (var27 == null) {
  1816.             var27 = new String[]{var30, ""};
  1817.             Vector var36 = new Vector();
  1818.             var36.addElement(var27);
  1819.             var36.addElement(var1);
  1820.             var2.addElement(var36);
  1821.          }
  1822.  
  1823.          var27[1] = var27[1] + "\t\t\t\tif (e.target.equals(" + var1.name + ")) { user.u.cursor(" + var19 + "); }\r\n";
  1824.       }
  1825.  
  1826.       if (!var20.equals("") && !var20.equals("?")) {
  1827.          boolean var23 = false;
  1828.          String[] var28 = null;
  1829.          String var31 = "TAB_BACK";
  1830.  
  1831.          for(int var24 = 0; var24 < var2.size(); ++var24) {
  1832.             Vector var37 = (Vector)var2.elementAt(var24);
  1833.             var28 = (String[])var37.elementAt(0);
  1834.             if (var28[0].equals(var31)) {
  1835.                break;
  1836.             }
  1837.  
  1838.             var28 = null;
  1839.          }
  1840.  
  1841.          if (var28 == null) {
  1842.             var28 = new String[]{var31, ""};
  1843.             Vector var38 = new Vector();
  1844.             var38.addElement(var28);
  1845.             var38.addElement(var1);
  1846.             var2.addElement(var38);
  1847.          }
  1848.  
  1849.          var28[1] = var28[1] + "\t\t\t\tif (e.target.equals(" + var1.name + ")) { user.u.cursor(" + var20 + "); return true; }\r\n";
  1850.       }
  1851.  
  1852.       for(int var25 = 0; var25 < var1.leaves.size(); ++var25) {
  1853.          JDPTreeBranch var29 = (JDPTreeBranch)var1.leaves.elementAt(var25);
  1854.          this.composeEventSource(var29, var2);
  1855.       }
  1856.  
  1857.    }
  1858.  
  1859.    int getStartingLine(JDPTreeBranch var1, int var2, JDPTreeBranch var3, int var4) {
  1860.       int var5 = 0;
  1861.       int var6 = 0;
  1862.       int var8 = 0;
  1863.       int var9 = 0;
  1864.       Object var10 = null;
  1865.       if (this.linePosVector == null) {
  1866.          this.target.sourcePanel2.setText(this.addLineNumbers(this.composeSource(this.target.compTree), 1));
  1867.       }
  1868.  
  1869.       while(var5 < this.linePosVector.size()) {
  1870.          Vector var17 = (Vector)this.linePosVector.elementAt(var5);
  1871.          String var11 = (String)var17.elementAt(2);
  1872.          if (var9 != 0) {
  1873.             var8 = Integer.parseInt((String)var17.elementAt(0));
  1874.             var8 += var9;
  1875.             var17.setElementAt(Integer.toString(var8), 0);
  1876.          } else if (!var11.equals("Event")) {
  1877.             int var7 = Integer.parseInt(var11);
  1878.             if (var17.elementAt(1).equals(var1) && var2 == var7) {
  1879.                var6 = var8;
  1880.                var8 = Integer.parseInt((String)var17.elementAt(0)) - 2;
  1881.                if (var8 - var8 == var4) {
  1882.                   return var8;
  1883.                }
  1884.  
  1885.                var9 = var4 - (var8 - var8);
  1886.                var8 = Integer.parseInt((String)var17.elementAt(0));
  1887.                var8 += var9;
  1888.                var17.setElementAt(Integer.toString(var8), 0);
  1889.             }
  1890.          } else if (var3 != null && var17.elementAt(3).equals(var3)) {
  1891.             return Integer.parseInt((String)var17.elementAt(0)) - 2;
  1892.          }
  1893.  
  1894.          var8 = Integer.parseInt((String)var17.elementAt(0)) - 2;
  1895.          ++var5;
  1896.       }
  1897.  
  1898.       return var6;
  1899.    }
  1900.  
  1901.    String createComment(String var1) {
  1902.       return "\t/**\n\t * " + var1 + "\n\t */\n";
  1903.    }
  1904.  
  1905.    String createCheckBoxGroups() {
  1906.       String var1 = "";
  1907.       if (this.target.cbgroup == null) {
  1908.          return "";
  1909.       } else {
  1910.          for(int var2 = 0; var2 < this.target.cbgroup.length; ++var2) {
  1911.             if (this.target.cbgroup[var2] != null && this.target.cbgroup[var2].getCurrent() != null) {
  1912.                var1 = var1 + "\t\tCheckboxGroup cbGroup" + Integer.toString(var2) + " = new CheckboxGroup();\r\n";
  1913.             }
  1914.          }
  1915.  
  1916.          return var1;
  1917.       }
  1918.    }
  1919.  
  1920.    public void InitClass(JDPUser var1, JDPLayoutMgr var2, String var3) {
  1921.       super.user = var1;
  1922.       this.target = var2;
  1923.       this.sourceBuffer = new StringBuffer();
  1924.       this.loadSource(10);
  1925.       this.targetGenerator = new JDPLayoutGenerator(var1, (String)null, (String)null);
  1926.    }
  1927. }
  1928.