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

  1. import java.awt.BorderLayout;
  2. import java.awt.Button;
  3. import java.awt.CardLayout;
  4. import java.awt.Color;
  5. import java.awt.Component;
  6. import java.awt.Container;
  7. import java.awt.Event;
  8. import java.awt.Panel;
  9. import java.awt.TextField;
  10. import java.util.Vector;
  11.  
  12. public class JDPDataSourceMaint extends Panel {
  13.    JDPUser user;
  14.    JDPDatabaseMaint target;
  15.    int itemIndex;
  16.    boolean insertRequested = false;
  17.    boolean deleteRequested = false;
  18.    TextField datasourcename;
  19.    TextField userid;
  20.    TextField password;
  21.  
  22.    JDPDataSourceMaint(JDPUser var1, Panel var2, String var3, JDPDatabaseMaint var4) {
  23.       this.user = var1;
  24.       this.target = var4;
  25.       ((Container)this).setLayout(new BorderLayout());
  26.       ((Component)this).setFont(var1.plainFont);
  27.       Panel var5 = new Panel();
  28.       ((Container)var5).setLayout(new BorderLayout());
  29.       Panel var6 = new Panel();
  30.       ((Container)var6).setLayout(new BorderLayout());
  31.       Panel var7 = new Panel();
  32.       ((Container)var7).setLayout(new BorderLayout());
  33.       JDPScrollPanel var8 = new JDPScrollPanel();
  34.       Panel var9 = new Panel();
  35.       ((Container)var9).setLayout(new BorderLayout());
  36.       this.datasourcename = new TextField("", 25);
  37.       this.userid = new TextField(var1.cust.username, 12);
  38.       this.password = new TextField(var1.cust.password, 12);
  39.       this.password.setEchoCharacter('*');
  40.       ((Container)var8).add("Left", new JDPWrapLabel(var1, "Datasource Name:", Color.black));
  41.       ((Container)var8).add("Left", new JDPWrapLabel(var1, "Username:", Color.black));
  42.       ((Container)var8).add("Left", new JDPWrapLabel(var1, "Password:", Color.black));
  43.       Panel var10 = new Panel();
  44.       ((Container)var10).setLayout(new JDPLineLayout());
  45.       ((Container)var10).add("Left", this.datasourcename);
  46.       ((Container)var8).add("Right", var10);
  47.       Panel var11 = new Panel();
  48.       ((Container)var11).setLayout(new JDPLineLayout());
  49.       ((Container)var11).add("Left", this.userid);
  50.       ((Container)var8).add("Right", var11);
  51.       Panel var12 = new Panel();
  52.       ((Container)var12).setLayout(new JDPLineLayout());
  53.       ((Container)var12).add("Left", this.password);
  54.       ((Container)var8).add("Right", var12);
  55.       ((Container)var7).add("Center", var8);
  56.       if (var3.compareTo("Inquiry") == 0) {
  57.          this.datasourcename.setEditable(false);
  58.       } else {
  59.          String[] var13 = new String[]{"Apply"};
  60.          int[] var14 = new int[]{0};
  61.          ((Container)this).add("South", new JDPButtons(var1, var13, var14, JDPButtons.HORIZONTAL));
  62.       }
  63.  
  64.       ((Container)var5).add("Center", var7);
  65.       ((Container)this).add("Center", new JDPChiselFramePanel(var1, "Datasource Maintenance", var5, "North"));
  66.       ((Component)var2).paintAll(((Component)var2).getGraphics());
  67.       var1.gParm.addElement(this);
  68.    }
  69.  
  70.    public boolean handleEvent(Event var1) {
  71.       switch (var1.id) {
  72.          case 401:
  73.             if (var1.key == 9) {
  74.                if (var1.modifiers != 1) {
  75.                   if (var1.target.equals(this.datasourcename)) {
  76.                      this.user.u.cursor(this.userid);
  77.                      return true;
  78.                   }
  79.  
  80.                   if (var1.target.equals(this.userid)) {
  81.                      this.user.u.cursor(this.password);
  82.                      return true;
  83.                   }
  84.  
  85.                   if (var1.target.equals(this.password)) {
  86.                      this.user.u.cursor(this.datasourcename);
  87.                      return true;
  88.                   }
  89.                } else {
  90.                   if (var1.target.equals(this.datasourcename)) {
  91.                      this.user.u.cursor(this.password);
  92.                      return true;
  93.                   }
  94.  
  95.                   if (var1.target.equals(this.password)) {
  96.                      this.user.u.cursor(this.userid);
  97.                      return true;
  98.                   }
  99.  
  100.                   if (var1.target.equals(this.userid)) {
  101.                      this.user.u.cursor(this.datasourcename);
  102.                      return true;
  103.                   }
  104.                }
  105.  
  106.                return true;
  107.             }
  108.  
  109.             return false;
  110.          case 1001:
  111.             if (var1.target instanceof Button) {
  112.                String var2 = (String)var1.arg;
  113.                if (var2.trim().compareTo("Apply") == 0) {
  114.                   if (this.checkFields()) {
  115.                      if (this.insertRequested) {
  116.                         this.saveData();
  117.                      } else {
  118.                         this.saveData();
  119.                      }
  120.                   }
  121.  
  122.                   return true;
  123.                }
  124.  
  125.                return true;
  126.             } else {
  127.                if (var1.target instanceof TextField) {
  128.                   this.checkFields();
  129.                   return true;
  130.                }
  131.  
  132.                return false;
  133.             }
  134.          default:
  135.             return false;
  136.       }
  137.    }
  138.  
  139.    boolean saveData() {
  140.       int var1 = 0;
  141.       Vector var2 = new Vector();
  142.       this.user.jaggSQL.getSEP();
  143.       String var3 = "";
  144.       JDPJagg var4 = new JDPJagg(this.user.jaggPath);
  145.       var4.setDSN(this.datasourcename.getText());
  146.       String var5 = "DSN=" + this.datasourcename.getText() + ";UID=" + this.userid.getText() + ";PWD=" + this.password.getText() + ";";
  147.       var4.setCSTR(var5);
  148.       if (this.insertRequested) {
  149.          String var6 = this.user.u.getDataSourceType(var4);
  150.          if (var6 == null) {
  151.             this.user.u.setSqlMessage(var4, var3);
  152.             return false;
  153.          }
  154.       }
  155.  
  156.       String[] var8 = this.target.tree.getSelectedBranch();
  157.       if (this.insertRequested) {
  158.          var3 = "INSERT INTO JDPDataSrc (SourceName) VALUES('" + this.datasourcename.getText() + "')";
  159.       } else if (this.deleteRequested) {
  160.          var3 = "DELETE FROM JDPDataSrc WHERE SourceName='" + var8[1] + "'";
  161.       }
  162.  
  163.       this.user.mainmsg.setStatusMsg("Accessing database...", 0);
  164.       var1 = this.user.jaggSQL.execSQL(var3, var2);
  165.       if (var1 == -1) {
  166.          this.user.u.setSqlMessage(this.user.jaggSQL, var3);
  167.          return false;
  168.       } else {
  169.          if (var1 == 1) {
  170.             if (this.insertRequested) {
  171.                this.user.mainmsg.setStatusMsg("Datasource successfully added.", 3);
  172.             } else if (this.deleteRequested) {
  173.                this.user.mainmsg.setStatusMsg("Datasource successfully removed.", 3);
  174.             }
  175.          } else {
  176.             this.user.u.setSqlMessage(this.user.jaggSQL, var3);
  177.          }
  178.  
  179.          this.target.loadDataSources();
  180.          if (this.insertRequested) {
  181.             this.target.tree.nothingChanged = false;
  182.             this.target.tree.repaint();
  183.          }
  184.  
  185.          this.insertRequested = false;
  186.          this.deleteRequested = false;
  187.          ((CardLayout)this.target.cardPanel.getLayout()).show(this.target.cardPanel, "Normal");
  188.          return true;
  189.       }
  190.    }
  191.  
  192.    void clearFields() {
  193.       this.datasourcename.setText("");
  194.    }
  195.  
  196.    boolean checkFields() {
  197.       return this.user.u.ischaracter(this.datasourcename, this.user.mainmsg, "Please enter a Datasource name");
  198.    }
  199. }
  200.