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

  1. import java.awt.BorderLayout;
  2. import java.awt.Container;
  3. import java.awt.Dialog;
  4. import java.awt.Event;
  5. import java.awt.Font;
  6. import java.awt.Label;
  7. import java.awt.Panel;
  8. import java.awt.TextField;
  9. import java.util.StringTokenizer;
  10. import java.util.Vector;
  11.  
  12. public class JDPObjectSelection extends JDPClassLayout {
  13.    JDPUser user;
  14.    JDPJagg jaggSQL;
  15.    JDPPopupMessage popuppanel;
  16.    JDPMaskEdit JDPMaskEditMain;
  17.    String moduleParameter;
  18.    Panel Main;
  19.    JDPScrollPanel ScrollPanel1;
  20.    Label Label1;
  21.    JDPChoice Choice1;
  22.    Vector valueChoice1;
  23.    Label Label2;
  24.    JDPCardPanel CardPanel1;
  25.    Panel Panel1;
  26.    JDPComboBox classFile;
  27.    JDPButton JDPButton1;
  28.    Panel Panel2;
  29.    JDPChoice Choice2;
  30.    Vector valueChoice2;
  31.    Panel Panel3;
  32.    TextField CommandToRun;
  33.    JDPButton JDPButton2;
  34.    Label Label3;
  35.    JDPCardPanel CardPanel2;
  36.    Panel Panel4;
  37.    JDPChoice constructors;
  38.    Vector valueconstructors;
  39.    Panel Panel5;
  40.    TextField commandParameters;
  41.    Label Label4;
  42.    TextField classParameters;
  43.    public String lastClassLoaded = "";
  44.  
  45.    public void InitClass(JDPUser var1, Panel var2, String var3) {
  46.       this.user = var1;
  47.       this.moduleParameter = var3;
  48.       super.targetPanel = var2;
  49.       this.jaggSQL = new JDPJagg(var1.jaggPath);
  50.       ((Container)this).setLayout(new BorderLayout());
  51.       this.popuppanel = new JDPPopupMessage(var1, this);
  52.       ((Container)this).add(this.popuppanel);
  53.       this.JDPMaskEditMain = new JDPMaskEdit();
  54.       this.Main = new Panel();
  55.       this.ScrollPanel1 = new JDPScrollPanel();
  56.       this.Label1 = new Label("Object type:", 0);
  57.       this.Choice1Main();
  58.       this.Label2 = new Label("Java Class:", 0);
  59.       this.CardPanel1 = new JDPCardPanel();
  60.       this.Panel1 = new Panel();
  61.       this.classFileMain();
  62.       this.JDPButton1 = new JDPButton(JDPButton.getIconValue("Load"), "", JDPButton.getAlignmentValue("Center"));
  63.       this.Panel2 = new Panel();
  64.       this.Choice2Main();
  65.       this.Panel3 = new Panel();
  66.       this.CommandToRun = new TextField("", 50);
  67.       this.JDPButton2 = new JDPButton(JDPButton.getIconValue("Load"), "JDPButton2", JDPButton.getAlignmentValue("Center"));
  68.       this.Label3 = new Label("Constructor:", 0);
  69.       this.CardPanel2 = new JDPCardPanel();
  70.       this.Panel4 = new Panel();
  71.       this.constructorsMain();
  72.       this.Panel5 = new Panel();
  73.       this.commandParameters = new TextField("", 50);
  74.       this.Label4 = new Label("Parameters:", 0);
  75.       this.classParameters = new TextField("", 50);
  76.       this.Main.setLayout(new BorderLayout());
  77.       ((Container)this).add("Center", this.Main);
  78.       this.Main.add("Center", this.ScrollPanel1);
  79.       this.ScrollPanel1.add("Left", this.Label1);
  80.       this.ScrollPanel1.add("Right", this.Choice1);
  81.       this.ScrollPanel1.add("Left", this.Label2);
  82.       this.ScrollPanel1.add("Right", this.CardPanel1);
  83.       this.CardPanel1.add("Panel1", this.Panel1);
  84.       this.Panel1.setLayout(new JDPLineLayout());
  85.       this.Panel1.add("Left", this.classFile);
  86.       this.Panel1.add("Left", this.JDPButton1);
  87.       this.CardPanel1.add("Panel2", this.Panel2);
  88.       this.Panel2.setLayout(new JDPLineLayout());
  89.       this.Panel2.add("Left", this.Choice2);
  90.       this.CardPanel1.add("Panel3", this.Panel3);
  91.       this.Panel3.setLayout(new JDPLineLayout());
  92.       this.Panel3.add("Left", this.CommandToRun);
  93.       this.Panel3.add("Left", this.JDPButton2);
  94.       this.ScrollPanel1.add("Left", this.Label3);
  95.       this.ScrollPanel1.add("Right", this.CardPanel2);
  96.       this.CardPanel2.add("Panel4", this.Panel4);
  97.       this.Panel4.setLayout(new BorderLayout());
  98.       this.Panel4.add("Center", this.constructors);
  99.       this.CardPanel2.add("Panel5", this.Panel5);
  100.       this.Panel5.setLayout(new JDPLineLayout());
  101.       this.Panel5.add("Left", this.commandParameters);
  102.       this.ScrollPanel1.add("Left", this.Label4);
  103.       this.ScrollPanel1.add("Right", this.classParameters);
  104.       this.Label1.setFont(new Font("Helvetica", 1, 11));
  105.       this.Label2.setFont(new Font("Helvetica", 1, 11));
  106.       this.popuppanel.addComponent(this.classFile, "Enter or select the class file", "Enter or select the class file to create and instance of.");
  107.       this.popuppanel.addComponent(this.JDPButton1, "", "Browse the file system for the class to instantiate");
  108.       this.popuppanel.addComponent(this.Choice2, "", "Select the Job Stream to execute");
  109.       this.popuppanel.addComponent(this.CommandToRun, "", "Enter the command to run");
  110.       this.popuppanel.addComponent(this.JDPButton2, "Browse", "Browse the file system for the command to run");
  111.       this.Label3.setFont(new Font("Helvetica", 1, 11));
  112.       this.popuppanel.addComponent(this.constructors, "", "Choose the constructor to use when creating an instance of this class.");
  113.       this.popuppanel.addComponent(this.commandParameters, "", "Enter the parameters required for this command or constructor.");
  114.       this.Label4.setFont(new Font("Helvetica", 1, 11));
  115.       this.popuppanel.addComponent(this.classParameters, "", "Enter the parameters to pass to this class");
  116.       var1.gParm.addElement(this);
  117.       this.InitComponents();
  118.    }
  119.  
  120.    public boolean handleEvent(Event var1) {
  121.       switch (var1.id) {
  122.          case 503:
  123.          case 504:
  124.          case 505:
  125.             this.popuppanel.postEvent(var1);
  126.             return false;
  127.          case 1001:
  128.             if (var1.target.equals(this.Choice1)) {
  129.                this.Label2.setText(this.Choice1.getSelectedItem() + ":");
  130.                if (this.Choice1.getSelectedKey().equals("C")) {
  131.                   this.CardPanel1.setSelectedComp("Panel1");
  132.                   this.Label3.show();
  133.                   this.Label3.setText("Constructor:");
  134.                   this.CardPanel2.show();
  135.                   this.CardPanel2.setSelectedComp("Panel4");
  136.                   this.Label4.show();
  137.                   this.classParameters.show();
  138.                } else if (this.Choice1.getSelectedKey().equals("A")) {
  139.                   this.CardPanel1.setSelectedComp("Panel3");
  140.                   this.Label2.setText("Command:");
  141.                   this.Label3.show();
  142.                   this.Label3.setText("Parameters:");
  143.                   this.CardPanel2.show();
  144.                   this.CardPanel2.setSelectedComp("Panel5");
  145.                   this.Label4.hide();
  146.                   this.classParameters.hide();
  147.                } else if (this.Choice1.getSelectedKey().equals("J")) {
  148.                   this.CardPanel1.setSelectedComp("Panel2");
  149.                   this.CardPanel2.hide();
  150.                   this.Label3.hide();
  151.                   this.Label4.hide();
  152.                   this.classParameters.hide();
  153.                }
  154.  
  155.                this.ScrollPanel1.reDrawPanel();
  156.                this.ScrollPanel1.layout();
  157.                this.ScrollPanel1.paintAll(this.ScrollPanel1.getGraphics());
  158.                return true;
  159.             } else if (var1.target.equals(this.classFile)) {
  160.                this.loadconstructors(this.classFile.getText());
  161.                return true;
  162.             } else if (var1.target.equals(this.JDPButton1)) {
  163.                JDPFileDialog var4 = new JDPFileDialog(this.user, this.user.jdpMainWindow, "Select the class to Instantiate");
  164.                JDPFilePicker var5 = var4.getFilePicker();
  165.                var5.setMode(0);
  166.                var5.setMultipleSelections(false);
  167.                var5.addFilter("Java Class Files", "*.class");
  168.                var5.loadFiles(this.user.JDesignerPro.JDPDirectory, false);
  169.                ((Dialog)var4).show();
  170.                this.classFile.setText(var5.getSelectedFile());
  171.                this.loadconstructors(this.classFile.getText());
  172.                return true;
  173.             } else if (var1.target.equals(this.JDPButton2)) {
  174.                JDPFileDialog var2 = new JDPFileDialog(this.user, this.user.jdpMainWindow, "Select the application or command to run");
  175.                JDPFilePicker var3 = var2.getFilePicker();
  176.                var3.setMode(0);
  177.                var3.setMultipleSelections(false);
  178.                if (JDesignerPro.serverPlatform.startsWith("Win")) {
  179.                   var3.addFilter("Applications", "*.exe");
  180.                   var3.addFilter("Batch files", "*.bat");
  181.                   var3.addFilter("All files", "");
  182.                }
  183.  
  184.                var3.loadFiles(this.user.JDesignerPro.JDPDirectory, false);
  185.                ((Dialog)var2).show();
  186.                this.CommandToRun.setText(var3.getSelectedFullPath());
  187.                return true;
  188.             } else {
  189.                if (var1.target.equals(this.constructors)) {
  190.                   this.classParameters.setText(this.constructors.getSelectedItem().substring(1, this.constructors.getSelectedItem().length() - 1));
  191.                   return true;
  192.                }
  193.  
  194.                return false;
  195.             }
  196.          case 1005:
  197.             if (var1.target.equals(this.classFile)) {
  198.                this.loadconstructors(this.classFile.getText());
  199.                return true;
  200.             }
  201.  
  202.             return false;
  203.          default:
  204.             return false;
  205.       }
  206.    }
  207.  
  208.    public void InitComponents() {
  209.       this.jaggSQL.setKeepConnectionOpen(false);
  210.    }
  211.  
  212.    public String getObjectType() {
  213.       return this.Choice1.getSelectedKey();
  214.    }
  215.  
  216.    public String getObject() {
  217.       if (this.Choice1.getSelectedKey().equals("C")) {
  218.          return this.classFile.getText();
  219.       } else if (this.Choice1.getSelectedKey().equals("A")) {
  220.          return this.CommandToRun.getText();
  221.       } else {
  222.          return this.Choice1.getSelectedKey().equals("J") ? this.Choice2.getSelectedItem() : "";
  223.       }
  224.    }
  225.  
  226.    public String getParameters() {
  227.       if (this.Choice1.getSelectedKey().equals("C")) {
  228.          return this.classParameters.getText();
  229.       } else if (this.Choice1.getSelectedKey().equals("A")) {
  230.          return this.commandParameters.getText();
  231.       } else {
  232.          return this.Choice1.getSelectedKey().equals("J") ? "" : "";
  233.       }
  234.    }
  235.  
  236.    public void setObjectType(String var1) {
  237.       this.Choice1.selectKey(var1);
  238.       ((Container)this).deliverEvent(new Event(this.Choice1, 1001, ""));
  239.    }
  240.  
  241.    public void setObject(String var1) {
  242.       if (this.Choice1.getSelectedKey().equals("C")) {
  243.          this.classFile.setText(var1);
  244.       } else if (this.Choice1.getSelectedKey().equals("A")) {
  245.          this.CommandToRun.setText(var1);
  246.       } else {
  247.          if (this.Choice1.getSelectedKey().equals("J")) {
  248.             this.Choice2.select(var1);
  249.          }
  250.  
  251.       }
  252.    }
  253.  
  254.    public void setParameters(String var1) {
  255.       if (this.Choice1.getSelectedKey().equals("C")) {
  256.          this.classParameters.setText(var1);
  257.       } else {
  258.          if (this.Choice1.getSelectedKey().equals("A")) {
  259.             this.commandParameters.setText(var1);
  260.          }
  261.  
  262.       }
  263.    }
  264.  
  265.    public String getConstructor() {
  266.       return this.Choice1.getSelectedKey().equals("C") ? this.constructors.getSelectedItem() : "";
  267.    }
  268.  
  269.    public void setConstructor(String var1) {
  270.       if (this.Choice1.getSelectedKey().equals("C")) {
  271.          this.loadconstructors(this.getObject());
  272.          this.constructors.select(var1);
  273.       }
  274.  
  275.    }
  276.  
  277.    public void Choice1Main() {
  278.       if (this.Choice1 == null) {
  279.          this.Choice1 = new JDPChoice();
  280.       }
  281.  
  282.       String[] var1 = new String[]{"Java Class", "Application or Command", "JobStream", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""};
  283.       String[] var2 = new String[]{"C", "A", "J", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""};
  284.       this.Choice1.loadChoice(var1, var2);
  285.    }
  286.  
  287.    public void classFileMain() {
  288.       if (this.classFile == null) {
  289.          this.classFile = new JDPComboBox(this.user, "", 20);
  290.       } else {
  291.          this.classFile.clear();
  292.       }
  293.  
  294.       this.jaggSQL.loadSettings(this.user);
  295.       this.jaggSQL.setFCTN("ListFiles");
  296.       this.jaggSQL.setFCTNP(this.user.JDesignerPro.JDPDirectory + ";");
  297.       Vector var1 = new Vector();
  298.       this.jaggSQL.execSQL("", var1);
  299.       this.classFile.addItem("", "");
  300.  
  301.       for(int var3 = 0; var3 < var1.size(); ++var3) {
  302.          StringTokenizer var4 = new StringTokenizer((String)var1.elementAt(var3), this.jaggSQL.getSEP());
  303.          String var2 = var4.nextToken();
  304.          String var5 = var4.nextToken();
  305.          if (var5.equals("F") && var2.endsWith(".class")) {
  306.             var2 = var2.substring(0, var2.length() - 6);
  307.             this.classFile.addItem(var2, var2);
  308.          }
  309.       }
  310.  
  311.       this.jaggSQL.setFCTN("");
  312.       this.jaggSQL.setFCTNP("");
  313.    }
  314.  
  315.    public void Choice2Main() {
  316.       if (this.Choice2 == null) {
  317.          this.Choice2 = new JDPChoice();
  318.       }
  319.  
  320.       JDPJagg var1 = new JDPJagg(this.user.jaggPath);
  321.       var1.loadSettings(this.user);
  322.       this.Choice2.loadChoice(this.user, var1, "STREAMNAME", "STREAMNAME", "JDPJobs", "JDPSYSTEM = '" + this.user.JDPSystem + "'");
  323.    }
  324.  
  325.    public void constructorsMain() {
  326.       if (this.constructors == null) {
  327.          this.constructors = new JDPChoice();
  328.       }
  329.  
  330.    }
  331.  
  332.    public void loadconstructors(String var1) {
  333.       var1 = this.user.u.replace(var1, ".class", "");
  334.       if (!var1.equals("") && !var1.equals(this.lastClassLoaded)) {
  335.          this.lastClassLoaded = var1;
  336.          Vector var2 = new Vector();
  337.          this.jaggSQL.setFCTN("JavaBeanGetConstructors");
  338.          this.jaggSQL.setFCTNP(var1 + ";");
  339.          this.jaggSQL.execSQL("", var2);
  340.          this.constructors.clear();
  341.          String var3 = "";
  342.  
  343.          for(int var4 = 0; var4 < var2.size(); ++var4) {
  344.             if (!((String)var2.elementAt(var4)).equals(" ")) {
  345.                StringTokenizer var5 = new StringTokenizer((String)var2.elementAt(var4), this.jaggSQL.getSEP());
  346.                var3 = var3 + "(";
  347.                int var6 = var5.countTokens() - 1;
  348.                var5.nextToken();
  349.  
  350.                for(int var7 = 0; var7 < var6; ++var7) {
  351.                   if (var7 > 0) {
  352.                      var3 = var3 + ",";
  353.                   }
  354.  
  355.                   var3 = var3 + this.convertParm(var5.nextToken());
  356.                }
  357.  
  358.                var3 = var3 + ")";
  359.                this.constructors.addItem(var3);
  360.             }
  361.  
  362.             var3 = "";
  363.          }
  364.  
  365.          this.jaggSQL.setFCTN("");
  366.          this.jaggSQL.setFCTNP("");
  367.          if (this.constructors.getSelectedItem() != null) {
  368.             this.classParameters.setText(this.constructors.getSelectedItem().substring(1, this.constructors.getSelectedItem().length() - 1));
  369.          }
  370.  
  371.       }
  372.    }
  373.  
  374.    public String convertParm(String var1) {
  375.       try {
  376.          if (var1.indexOf("[[L") >= 0) {
  377.             var1 = var1.substring(3, var1.length() - 1) + "[][]";
  378.          } else if (var1.indexOf("[I") >= 0) {
  379.             var1 = "int[]";
  380.          } else if (var1.indexOf("[Z") >= 0) {
  381.             var1 = "boolean[]";
  382.          } else if (var1.indexOf("[C") >= 0) {
  383.             var1 = "char[]";
  384.          } else if (var1.indexOf("[B") >= 0) {
  385.             var1 = "byte[]";
  386.          } else if (var1.indexOf("[") >= 0) {
  387.             var1 = var1.substring(2, var1.length() - 1) + "[]";
  388.          }
  389.  
  390.          if (var1.startsWith("java")) {
  391.             int var2 = var1.lastIndexOf(".");
  392.             if (var2 > 0) {
  393.                var1 = var1.substring(var2 + 1);
  394.             }
  395.          }
  396.       } catch (Exception var3) {
  397.          System.out.println("Parm value: " + var1);
  398.          ((Throwable)var3).printStackTrace();
  399.       }
  400.  
  401.       return var1;
  402.    }
  403. }
  404.