home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 1998 September / dppcpro0998.iso / Rwc / Sybase / Install.exe / samples.z / Form_Thermometer.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-03-25  |  7.0 KB  |  329 lines

  1. import java.applet.Applet;
  2. import java.awt.Checkbox;
  3. import java.awt.CheckboxGroup;
  4. import java.awt.Color;
  5. import java.awt.Component;
  6. import java.awt.Container;
  7. import java.awt.Event;
  8. import java.awt.Font;
  9. import java.awt.FontMetrics;
  10. import java.awt.Insets;
  11. import java.awt.Label;
  12. import java.awt.Rectangle;
  13. import java.awt.Scrollbar;
  14. import java.awt.TextField;
  15. import java.awt.Window;
  16. import java.awt.event.ActionEvent;
  17. import java.awt.event.ActionListener;
  18. import java.awt.event.AdjustmentEvent;
  19. import java.awt.event.AdjustmentListener;
  20. import java.awt.event.ItemEvent;
  21. import java.awt.event.ItemListener;
  22. import java.util.EventObject;
  23. import powersoft.powerj.event.AWTEvent;
  24. import powersoft.powerj.event.EventData;
  25. import powersoft.powerj.ui.ResizePercentLayout;
  26.  
  27. class Form_Thermometer extends Applet implements AdjustmentListener, ActionListener, ItemListener {
  28.    boolean __mainForm;
  29.    private CheckboxGroup scale = new CheckboxGroup();
  30.    private Scrollbar scroll_scale = new Scrollbar(0);
  31.    private TextField textf_celsius = new TextField();
  32.    private TextField textf_farenheit = new TextField();
  33.    private Label label_1 = new Label();
  34.    private Label label_2 = new Label();
  35.    private Checkbox checkbox_farenheit;
  36.    private Label label_3;
  37.    private Label label_4;
  38.    private Checkbox checkbox_celsius;
  39.    private boolean _fORc;
  40.  
  41.    public Rectangle DURectangle(int var1, int var2, int var3, int var4) {
  42.       String var5 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
  43.       FontMetrics var6 = ((Component)this).getFontMetrics(((Component)this).getFont());
  44.       double var7 = (double)(var6 != null ? var6.stringWidth(var5) / var5.length() : 0);
  45.       double var9 = var6 != null ? (double)var6.getHeight() / (double)2.0F : (double)0.0F;
  46.       return new Rectangle((int)Math.round(var7 * (double)var1 / (double)4.0F), (int)Math.round(var9 * (double)var2 / (double)4.0F), (int)Math.round(var7 * (double)var3 / (double)4.0F), (int)Math.round(var9 * (double)var4 / (double)4.0F));
  47.    }
  48.  
  49.    public void DUPositionComponent(Component var1, int var2, int var3, int var4, int var5, Insets var6) {
  50.       Rectangle var7 = this.DURectangle(var2, var3, var4, var5);
  51.       if (var1 != this && var6 != null) {
  52.          var7.x += var6.left;
  53.          var7.y += var6.top;
  54.       }
  55.  
  56.       var1.setBounds(var7);
  57.    }
  58.  
  59.    public void setMainForm(boolean var1) {
  60.       this.__mainForm = var1;
  61.    }
  62.  
  63.    public boolean isMainForm() {
  64.       return this.__mainForm;
  65.    }
  66.  
  67.    public boolean create() throws Exception {
  68.       Container var1 = this.getContentPane();
  69.       Font var2 = new Font("Dialog", 0, 12);
  70.       ((Component)this).setFont(var2);
  71.       boolean var3 = true;
  72.       Insets var4 = (Insets)var1.getInsets().clone();
  73.       ((Component)var1).setBackground(Color.lightGray);
  74.       ((Component)var1).setForeground(Color.black);
  75.       ResizePercentLayout var5 = new ResizePercentLayout();
  76.       var1.setLayout(var5);
  77.       var1.add(this.scroll_scale);
  78.       var1.add(this.textf_celsius);
  79.       var1.add(this.textf_farenheit);
  80.       var1.add(this.label_1);
  81.       var1.add(this.label_2);
  82.       var1.add(this.checkbox_farenheit);
  83.       var1.add(this.label_3);
  84.       var1.add(this.label_4);
  85.       var1.add(this.checkbox_celsius);
  86.       this.DUPositionComponent(this, 0, 0, 157, 125, var4);
  87.       this.scroll_scale.addAdjustmentListener(this);
  88.       this.DUPositionComponent(this.scroll_scale, 5, 60, 146, 14, var4);
  89.       this.scroll_scale.setOrientation(0);
  90.       this.scroll_scale.setFont(var2);
  91.       this.scroll_scale.setBackground(Color.red);
  92.       this.scroll_scale.setForeground(Color.black);
  93.       this.scroll_scale.setEnabled(true);
  94.       this.scroll_scale.setVisible(true);
  95.       this.scroll_scale.setValues(0, 1, 0, 101);
  96.       this.scroll_scale.setUnitIncrement(1);
  97.       this.scroll_scale.setBlockIncrement(10);
  98.       this.scroll_scale_objectCreated(new EventData(this.scroll_scale));
  99.       this.textf_celsius.addActionListener(this);
  100.       this.DUPositionComponent(this.textf_celsius, 105, 101, 45, 14, var4);
  101.       this.textf_celsius.setFont(var2);
  102.       this.textf_celsius.setBackground(Color.white);
  103.       this.textf_celsius.setForeground(Color.black);
  104.       this.textf_celsius.setEnabled(true);
  105.       this.textf_celsius.setVisible(true);
  106.       this.textf_farenheit.addActionListener(this);
  107.       this.DUPositionComponent(this.textf_farenheit, 5, 101, 45, 14, var4);
  108.       this.textf_farenheit.setFont(var2);
  109.       this.textf_farenheit.setBackground(Color.white);
  110.       this.textf_farenheit.setForeground(Color.black);
  111.       this.textf_farenheit.setEnabled(true);
  112.       this.textf_farenheit.setVisible(true);
  113.       this.DUPositionComponent(this.label_1, 105, 86, 46, 14, var4);
  114.       this.label_1.setText("Celsius");
  115.       this.label_1.setAlignment(0);
  116.       this.label_1.setFont(var2);
  117.       this.label_1.setBackground(Color.lightGray);
  118.       this.label_1.setForeground(Color.black);
  119.       this.label_1.setEnabled(true);
  120.       this.label_1.setVisible(true);
  121.       this.DUPositionComponent(this.label_2, 5, 86, 45, 14, var4);
  122.       this.label_2.setText("Farenheit");
  123.       this.label_2.setAlignment(0);
  124.       this.label_2.setFont(var2);
  125.       this.label_2.setBackground(Color.lightGray);
  126.       this.label_2.setForeground(Color.black);
  127.       this.label_2.setEnabled(true);
  128.       this.label_2.setVisible(true);
  129.       this.checkbox_farenheit.addItemListener(this);
  130.       this.DUPositionComponent(this.checkbox_farenheit, 5, 10, 80, 15, var4);
  131.       this.checkbox_farenheit.setFont(var2);
  132.       this.checkbox_farenheit.setBackground(Color.lightGray);
  133.       this.checkbox_farenheit.setForeground(Color.black);
  134.       this.checkbox_farenheit.setEnabled(true);
  135.       this.checkbox_farenheit.setVisible(true);
  136.       this.checkbox_farenheit.setLabel("Farenheit");
  137.       this.checkbox_farenheit.setState(false);
  138.       this.DUPositionComponent(this.label_3, 5, 45, 26, 15, var4);
  139.       this.label_3.setText("0");
  140.       this.label_3.setAlignment(0);
  141.       this.label_3.setFont(var2);
  142.       this.label_3.setBackground(Color.lightGray);
  143.       this.label_3.setForeground(Color.black);
  144.       this.label_3.setEnabled(true);
  145.       this.label_3.setVisible(true);
  146.       this.DUPositionComponent(this.label_4, 110, 45, 35, 15, var4);
  147.       this.label_4.setText("100");
  148.       this.label_4.setAlignment(2);
  149.       this.label_4.setFont(var2);
  150.       this.label_4.setBackground(Color.lightGray);
  151.       this.label_4.setForeground(Color.black);
  152.       this.label_4.setEnabled(true);
  153.       this.label_4.setVisible(true);
  154.       this.checkbox_celsius.addItemListener(this);
  155.       this.DUPositionComponent(this.checkbox_celsius, 5, 25, 76, 15, var4);
  156.       this.checkbox_celsius.setFont(var2);
  157.       this.checkbox_celsius.setBackground(Color.lightGray);
  158.       this.checkbox_celsius.setForeground(Color.black);
  159.       this.checkbox_celsius.setEnabled(true);
  160.       this.checkbox_celsius.setVisible(true);
  161.       this.checkbox_celsius.setLabel("Celsius");
  162.       this.checkbox_celsius.setState(false);
  163.       var5.setResizePercent(this.scroll_scale, new Rectangle(0, 0, 0, 0));
  164.       var5.setResizePercent(this.textf_celsius, new Rectangle(0, 0, 0, 0));
  165.       var5.setResizePercent(this.textf_farenheit, new Rectangle(0, 0, 0, 0));
  166.       var5.setResizePercent(this.label_1, new Rectangle(0, 0, 0, 0));
  167.       var5.setResizePercent(this.label_2, new Rectangle(0, 0, 0, 0));
  168.       var5.setResizePercent(this.checkbox_farenheit, new Rectangle(0, 0, 0, 0));
  169.       var5.setResizePercent(this.label_3, new Rectangle(0, 0, 0, 0));
  170.       var5.setResizePercent(this.label_4, new Rectangle(0, 0, 0, 0));
  171.       var5.setResizePercent(this.checkbox_celsius, new Rectangle(0, 0, 0, 0));
  172.       this.Form_Thermometer_objectCreated(new EventData(this));
  173.       return var3;
  174.    }
  175.  
  176.    public synchronized void destroy() {
  177.       if (this instanceof Window) {
  178.          ((Window)this).dispose();
  179.       } else {
  180.          ((Container)this).removeNotify();
  181.       }
  182.  
  183.       if (this.isMainForm()) {
  184.          System.gc();
  185.          System.runFinalization();
  186.          System.exit(0);
  187.       }
  188.  
  189.    }
  190.  
  191.    public boolean defaultHandleEvent(Event var1) {
  192.       this.defaultProcessEvent(new AWTEvent(var1));
  193.       return false;
  194.    }
  195.  
  196.    public void defaultProcessEvent(java.awt.AWTEvent var1) {
  197.       super.processEvent(var1);
  198.    }
  199.  
  200.    public void adjustmentValueChanged(AdjustmentEvent var1) {
  201.       Object var2 = ((EventObject)var1).getSource();
  202.       if (var2 == this.scroll_scale) {
  203.          this.scroll_scale_adjustmentValueChanged(var1);
  204.       } else {
  205.          this.unhandledEvent("java.awt.event.AdjustmentListener", "adjustmentValueChanged", var1);
  206.       }
  207.  
  208.    }
  209.  
  210.    public void actionPerformed(ActionEvent var1) {
  211.       Object var2 = ((EventObject)var1).getSource();
  212.       if (var2 == this.textf_celsius) {
  213.          this.textf_celsius_actionPerformed(var1);
  214.       } else if (var2 == this.textf_farenheit) {
  215.          this.textf_farenheit_actionPerformed(var1);
  216.       } else {
  217.          this.unhandledEvent("java.awt.event.ActionListener", "actionPerformed", var1);
  218.       }
  219.  
  220.    }
  221.  
  222.    public void itemStateChanged(ItemEvent var1) {
  223.       Object var2 = ((EventObject)var1).getSource();
  224.       if (var2 == this.checkbox_farenheit) {
  225.          this.checkbox_farenheit_itemStateChanged(var1);
  226.       } else if (var2 == this.checkbox_celsius) {
  227.          this.checkbox_celsius_itemStateChanged(var1);
  228.       } else {
  229.          this.unhandledEvent("java.awt.event.ItemListener", "itemStateChanged", var1);
  230.       }
  231.  
  232.    }
  233.  
  234.    public Form_Thermometer() {
  235.       this.checkbox_farenheit = new Checkbox((String)null, false, this.scale);
  236.       this.label_3 = new Label();
  237.       this.label_4 = new Label();
  238.       this.checkbox_celsius = new Checkbox((String)null, false, this.scale);
  239.    }
  240.  
  241.    public boolean handleEvent(Event var1) {
  242.       return this.defaultHandleEvent(var1);
  243.    }
  244.  
  245.    public void setTemperature() {
  246.       new String();
  247.       new String();
  248.       int var3;
  249.       int var4;
  250.       if (!this._fORc) {
  251.          var3 = this.scroll_scale.getValue();
  252.          var4 = this.farenheit2celsius(var3);
  253.       } else {
  254.          var4 = this.scroll_scale.getValue();
  255.          var3 = this.celsius2farenheit(var4);
  256.       }
  257.  
  258.       String var2 = String.valueOf(var3);
  259.       String var1 = String.valueOf(var4);
  260.       this.textf_celsius.setText(var1);
  261.       this.textf_farenheit.setText(var2);
  262.    }
  263.  
  264.    public int celsius2farenheit(int var1) {
  265.       return var1 * 9 / 5 + 32;
  266.    }
  267.  
  268.    public int farenheit2celsius(int var1) {
  269.       return (var1 - 32) * 5 / 9;
  270.    }
  271.  
  272.    public void unhandledEvent(String var1, String var2, Object var3) {
  273.    }
  274.  
  275.    public void processEvent(java.awt.AWTEvent var1) {
  276.       this.defaultProcessEvent(var1);
  277.    }
  278.  
  279.    public Container getContentPane() {
  280.       return this;
  281.    }
  282.  
  283.    public boolean Form_Thermometer_objectCreated(EventData var1) {
  284.       this._fORc = false;
  285.       this.checkbox_farenheit.setState(true);
  286.       return false;
  287.    }
  288.  
  289.    public boolean scroll_scale_adjustmentValueChanged(AdjustmentEvent var1) {
  290.       this.setTemperature();
  291.       return false;
  292.    }
  293.  
  294.    public boolean scroll_scale_objectCreated(EventData var1) {
  295.       this.setTemperature();
  296.       return false;
  297.    }
  298.  
  299.    public boolean textf_celsius_actionPerformed(ActionEvent var1) {
  300.       Integer var2 = new Integer(this.textf_celsius.getText());
  301.       this.scroll_scale.setValue(var2);
  302.       this._fORc = true;
  303.       this.checkbox_celsius.setState(this._fORc);
  304.       this.setTemperature();
  305.       return false;
  306.    }
  307.  
  308.    public boolean textf_farenheit_actionPerformed(ActionEvent var1) {
  309.       Integer var2 = new Integer(this.textf_farenheit.getText());
  310.       this.scroll_scale.setValue(var2);
  311.       this._fORc = false;
  312.       this.checkbox_farenheit.setState(!this._fORc);
  313.       this.setTemperature();
  314.       return false;
  315.    }
  316.  
  317.    public boolean checkbox_farenheit_itemStateChanged(ItemEvent var1) {
  318.       this._fORc = false;
  319.       this.setTemperature();
  320.       return false;
  321.    }
  322.  
  323.    public boolean checkbox_celsius_itemStateChanged(ItemEvent var1) {
  324.       this._fORc = true;
  325.       this.setTemperature();
  326.       return false;
  327.    }
  328. }
  329.