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

  1. import com.ms.wfc.app.Application;
  2. import com.ms.wfc.core.Container;
  3. import com.ms.wfc.core.Event;
  4. import com.ms.wfc.core.EventHandler;
  5. import com.ms.wfc.ui.Button;
  6. import com.ms.wfc.ui.Control;
  7. import com.ms.wfc.ui.Edit;
  8. import com.ms.wfc.ui.Font;
  9. import com.ms.wfc.ui.Form;
  10. import com.ms.wfc.ui.Label;
  11. import com.ms.wfc.ui.ListBox;
  12. import com.ms.wfc.ui.MouseEvent;
  13. import com.ms.wfc.ui.MouseEventHandler;
  14. import com.ms.wfc.ui.Point;
  15. import java.io.DataInputStream;
  16. import java.io.File;
  17. import java.io.FileInputStream;
  18. import java.io.FileOutputStream;
  19. import java.io.IOException;
  20. import java.io.PrintStream;
  21. import java.util.StringTokenizer;
  22. import java.util.Vector;
  23.  
  24. public class regUrlForm extends Form {
  25.    File openedfile;
  26.    String rawPage;
  27.    Vector urls;
  28.    Vector codes;
  29.    int curIndex = 0;
  30.    boolean addNew = false;
  31.    Container components = new Container();
  32.    Edit urlEdit = new Edit();
  33.    Edit codeEdit = new Edit();
  34.    Label label1 = new Label();
  35.    Label label2 = new Label();
  36.    Button buttonAdd = new Button();
  37.    ListBox regList = new ListBox();
  38.    Button buttonOK = new Button();
  39.    Button buttonCancel = new Button();
  40.    Label label3 = new Label();
  41.  
  42.    private void event_updateData(Object var1, Event var2) {
  43.       if (var1 == this.urlEdit) {
  44.          if (this.curIndex < this.urls.size()) {
  45.             this.urls.setElementAt(this.urlEdit.getText(), this.curIndex);
  46.             this.regList.setItem(this.curIndex, (String)this.urls.elementAt(this.curIndex));
  47.             return;
  48.          }
  49.       } else if (var1 == this.codeEdit && this.curIndex < this.codes.size()) {
  50.          this.codes.setElementAt(this.codeEdit.getText(), this.curIndex);
  51.       }
  52.  
  53.    }
  54.  
  55.    public regUrlForm() {
  56.       this.initForm();
  57.       this.initData();
  58.       this.urlEdit.addOnLostFocus(new EventHandler(this, "event_updateData"));
  59.       this.codeEdit.addOnLostFocus(new EventHandler(this, "event_updateData"));
  60.    }
  61.  
  62.    private void buttonEvent(Object var1, Event var2) {
  63.    }
  64.  
  65.    private void buttonEvent(Object var1, MouseEvent var2) {
  66.       if (var1 == this.buttonCancel) {
  67.          this.dispose();
  68.       }
  69.  
  70.       if (var1 == this.buttonOK) {
  71.          this.saveCodeFile();
  72.          this.dispose();
  73.       } else {
  74.          if (var1 == this.buttonAdd) {
  75.             this.curIndex = this.codes.size();
  76.             this.urlEdit.setText("www.");
  77.             this.codeEdit.setText("");
  78.             this.addNew = true;
  79.             this.regList.addItem("www.");
  80.             this.codes.addElement("");
  81.             this.urls.addElement("www.");
  82.             this.regList.setSelected(this.curIndex, true);
  83.             this.urlEdit.selectAll();
  84.             this.urlEdit.select();
  85.          }
  86.  
  87.       }
  88.    }
  89.  
  90.    private void listEvent_itemselected(Object var1, Event var2) {
  91.       int var3 = this.regList.getSelectedIndex();
  92.       this.curIndex = var3;
  93.       if (var3 < this.codes.size()) {
  94.          this.urlEdit.setText((String)this.urls.elementAt(var3));
  95.          this.codeEdit.setText((String)this.codes.elementAt(var3));
  96.       }
  97.  
  98.    }
  99.  
  100.    private void initForm() {
  101.       ((Control)this).setText("URL Registration");
  102.       ((Form)this).setAutoScaleBaseSize(new Point(5, 13));
  103.       ((Control)this).setClientSize(new Point(385, 234));
  104.       ((Form)this).setMaximizeBox(false);
  105.       ((Form)this).setMinimizeBox(false);
  106.       ((Form)this).setStartPosition(1);
  107.       ((Form)this).setTopMost(true);
  108.       this.urlEdit.setLocation(new Point(8, 24));
  109.       this.urlEdit.setSize(new Point(240, 20));
  110.       this.urlEdit.setTabIndex(0);
  111.       this.urlEdit.setText("edit1");
  112.       this.urlEdit.setAutoSize(false);
  113.       this.codeEdit.setLocation(new Point(256, 24));
  114.       this.codeEdit.setSize(new Point(96, 20));
  115.       this.codeEdit.setTabIndex(1);
  116.       this.codeEdit.setText("edit2");
  117.       this.codeEdit.setWordWrap(false);
  118.       this.label1.setFont(new Font("MS Sans Serif", 8.0F, 8, 700, false, false, false));
  119.       this.label1.setLocation(new Point(8, 8));
  120.       this.label1.setSize(new Point(104, 16));
  121.       this.label1.setTabIndex(2);
  122.       this.label1.setTabStop(false);
  123.       this.label1.setText("URL:");
  124.       this.label2.setFont(new Font("MS Sans Serif", 8.0F, 8, 700, false, false, false));
  125.       this.label2.setLocation(new Point(256, 8));
  126.       this.label2.setSize(new Point(80, 16));
  127.       this.label2.setTabIndex(3);
  128.       this.label2.setTabStop(false);
  129.       this.label2.setText("Code:");
  130.       this.buttonAdd.setLocation(new Point(356, 24));
  131.       this.buttonAdd.setSize(new Point(20, 20));
  132.       this.buttonAdd.setTabIndex(4);
  133.       this.buttonAdd.setText("+");
  134.       this.buttonAdd.addOnClick(new EventHandler(this, "buttonEvent"));
  135.       this.buttonAdd.addOnMouseUp(new MouseEventHandler(this, "buttonEvent"));
  136.       this.regList.setLocation(new Point(8, 73));
  137.       this.regList.setSize(new Point(368, 121));
  138.       this.regList.setTabIndex(5);
  139.       this.regList.setText("listBox1");
  140.       this.regList.setUseTabStops(true);
  141.       this.regList.addOnSelectedIndexChanged(new EventHandler(this, "listEvent_itemselected"));
  142.       this.buttonOK.setLocation(new Point(216, 204));
  143.       this.buttonOK.setSize(new Point(80, 24));
  144.       this.buttonOK.setTabIndex(6);
  145.       this.buttonOK.setText("OK");
  146.       this.buttonOK.setDialogResult(1);
  147.       this.buttonOK.addOnClick(new EventHandler(this, "buttonEvent"));
  148.       this.buttonOK.addOnMouseUp(new MouseEventHandler(this, "buttonEvent"));
  149.       this.buttonCancel.setLocation(new Point(304, 204));
  150.       this.buttonCancel.setSize(new Point(72, 24));
  151.       this.buttonCancel.setTabIndex(7);
  152.       this.buttonCancel.setText("Cancel");
  153.       this.buttonCancel.addOnClick(new EventHandler(this, "buttonEvent"));
  154.       this.buttonCancel.addOnMouseUp(new MouseEventHandler(this, "buttonEvent"));
  155.       this.label3.setFont(new Font("MS Sans Serif", 8.0F, 8, 700, false, false, false));
  156.       this.label3.setLocation(new Point(8, 56));
  157.       this.label3.setSize(new Point(248, 16));
  158.       this.label3.setTabIndex(8);
  159.       this.label3.setTabStop(false);
  160.       this.label3.setText("Registered URL(s):");
  161.       ((Form)this).setNewControls(new Control[]{this.label3, this.buttonCancel, this.buttonOK, this.regList, this.buttonAdd, this.label2, this.label1, this.codeEdit, this.urlEdit});
  162.    }
  163.  
  164.    public void initData() {
  165.       this.openedfile = new File(ACutil.getClassPath(), "regcodes.ocf");
  166.       this.getRawPage();
  167.       StringTokenizer var2 = new StringTokenizer(this.rawPage, "\n");
  168.       this.urls = new Vector();
  169.       this.codes = new Vector();
  170.       int var3 = -1;
  171.       int var4 = -1;
  172.  
  173.       while(var2.hasMoreTokens()) {
  174.          ++var4;
  175.          String var1 = var2.nextToken().trim();
  176.          var3 = var1.indexOf("=");
  177.          if (var3 > -1) {
  178.             this.urls.addElement(var1.substring(0, var3).trim());
  179.             if (var1.length() > var3 + 1) {
  180.                this.codes.addElement(var1.substring(var3 + 1).trim());
  181.             } else {
  182.                this.codes.addElement("");
  183.             }
  184.          } else {
  185.             this.urls.addElement("empty");
  186.             this.codes.addElement("");
  187.          }
  188.       }
  189.  
  190.       if (this.codes.size() > 0) {
  191.          this.codeEdit.setText((String)this.codes.elementAt(var4));
  192.          this.urlEdit.setText((String)this.urls.elementAt(var4));
  193.  
  194.          for(int var5 = 0; var5 < this.urls.size(); ++var5) {
  195.             this.regList.addItem((String)this.urls.elementAt(var5));
  196.          }
  197.  
  198.          this.regList.setSelected(0, true);
  199.       }
  200.  
  201.    }
  202.  
  203.    private boolean getRawPage() {
  204.       try {
  205.          FileInputStream var1 = new FileInputStream(this.openedfile);
  206.          DataInputStream var2 = new DataInputStream(var1);
  207.          long var3 = this.openedfile.length();
  208.          byte[] var5 = new byte[(int)var3];
  209.          var2.readFully(var5);
  210.          this.rawPage = new String(var5, 0);
  211.          var1.close();
  212.          return true;
  213.       } catch (IOException var6) {
  214.          new OCDialog(ACutila.iface, true, "Error opening selected file.", "Error");
  215.          return false;
  216.       }
  217.    }
  218.  
  219.    public static void launchWindow() {
  220.       Application.run(new regUrlForm());
  221.    }
  222.  
  223.    public void dispose() {
  224.       super.dispose();
  225.       this.components.dispose();
  226.    }
  227.  
  228.    private void saveCodeFile() {
  229.       PrintStream var2 = null;
  230.  
  231.       try {
  232.          FileOutputStream var1 = new FileOutputStream(this.openedfile);
  233.          var2 = new PrintStream(var1);
  234.  
  235.          for(int var3 = 0; var3 < this.urls.size(); ++var3) {
  236.             String var4 = (String)this.urls.elementAt(var3);
  237.             String var5 = (String)this.codes.elementAt(var3);
  238.             var2.println(var4 + " = " + var5);
  239.          }
  240.  
  241.          var2.close();
  242.       } catch (IOException var6) {
  243.          var2.close();
  244.       }
  245.    }
  246. }
  247.