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

  1. import java.applet.Applet;
  2. import java.awt.Button;
  3. import java.awt.Checkbox;
  4. import java.awt.CheckboxGroup;
  5. import java.awt.Color;
  6. import java.awt.Component;
  7. import java.awt.Container;
  8. import java.awt.Event;
  9. import java.awt.Font;
  10. import java.awt.FontMetrics;
  11. import java.awt.Insets;
  12. import java.awt.Label;
  13. import java.awt.Rectangle;
  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.util.EventObject;
  19. import powersoft.powerj.event.AWTEvent;
  20. import powersoft.powerj.event.EventData;
  21. import powersoft.powerj.ui.ResizePercentLayout;
  22.  
  23. class Form_CheckBoxGroup extends Applet implements ActionListener {
  24.    boolean __mainForm;
  25.    private CheckboxGroup patty = new CheckboxGroup();
  26.    private Checkbox checkbox_beef;
  27.    private Checkbox checkbox_chicken;
  28.    private Checkbox checkbox_fish;
  29.    private Checkbox checkbox_veggie;
  30.    private Checkbox checkbox_ketchup;
  31.    private Checkbox checkbox_mayonnaise;
  32.    private Checkbox checkbox_mustard;
  33.    private Button cb_placeOrder;
  34.    private TextField textf_orderDetails;
  35.    private Label label_1;
  36.    private Label label_2;
  37.    private Label label_3;
  38.    private Label label_4;
  39.    private Label label_5;
  40.    private Label label_6;
  41.    private Label label_7;
  42.  
  43.    public Rectangle DURectangle(int var1, int var2, int var3, int var4) {
  44.       String var5 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
  45.       FontMetrics var6 = ((Component)this).getFontMetrics(((Component)this).getFont());
  46.       double var7 = (double)(var6 != null ? var6.stringWidth(var5) / var5.length() : 0);
  47.       double var9 = var6 != null ? (double)var6.getHeight() / (double)2.0F : (double)0.0F;
  48.       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));
  49.    }
  50.  
  51.    public void DUPositionComponent(Component var1, int var2, int var3, int var4, int var5, Insets var6) {
  52.       Rectangle var7 = this.DURectangle(var2, var3, var4, var5);
  53.       if (var1 != this && var6 != null) {
  54.          var7.x += var6.left;
  55.          var7.y += var6.top;
  56.       }
  57.  
  58.       var1.setBounds(var7);
  59.    }
  60.  
  61.    public void setMainForm(boolean var1) {
  62.       this.__mainForm = var1;
  63.    }
  64.  
  65.    public boolean isMainForm() {
  66.       return this.__mainForm;
  67.    }
  68.  
  69.    public boolean create() throws Exception {
  70.       Container var1 = this.getContentPane();
  71.       Font var2 = new Font("Dialog", 0, 12);
  72.       ((Component)this).setFont(var2);
  73.       boolean var3 = true;
  74.       Insets var4 = (Insets)var1.getInsets().clone();
  75.       ((Component)var1).setBackground(Color.lightGray);
  76.       ((Component)var1).setForeground(Color.black);
  77.       ResizePercentLayout var5 = new ResizePercentLayout();
  78.       var1.setLayout(var5);
  79.       var1.add(this.checkbox_beef);
  80.       var1.add(this.checkbox_chicken);
  81.       var1.add(this.checkbox_fish);
  82.       var1.add(this.checkbox_veggie);
  83.       var1.add(this.checkbox_ketchup);
  84.       var1.add(this.checkbox_mayonnaise);
  85.       var1.add(this.checkbox_mustard);
  86.       var1.add(this.cb_placeOrder);
  87.       var1.add(this.textf_orderDetails);
  88.       var1.add(this.label_1);
  89.       var1.add(this.label_2);
  90.       var1.add(this.label_3);
  91.       var1.add(this.label_4);
  92.       var1.add(this.label_5);
  93.       var1.add(this.label_6);
  94.       var1.add(this.label_7);
  95.       this.DUPositionComponent(this, 0, 0, 305, 218, var4);
  96.       this.DUPositionComponent(this.checkbox_beef, 51, 81, 46, 15, var4);
  97.       this.checkbox_beef.setFont(var2);
  98.       this.checkbox_beef.setBackground(Color.lightGray);
  99.       this.checkbox_beef.setForeground(Color.black);
  100.       this.checkbox_beef.setEnabled(true);
  101.       this.checkbox_beef.setVisible(true);
  102.       this.checkbox_beef.setLabel("Beef");
  103.       this.checkbox_beef.setState(false);
  104.       this.DUPositionComponent(this.checkbox_chicken, 51, 96, 46, 15, var4);
  105.       this.checkbox_chicken.setFont(var2);
  106.       this.checkbox_chicken.setBackground(Color.lightGray);
  107.       this.checkbox_chicken.setForeground(Color.black);
  108.       this.checkbox_chicken.setEnabled(true);
  109.       this.checkbox_chicken.setVisible(true);
  110.       this.checkbox_chicken.setLabel("Chicken");
  111.       this.checkbox_chicken.setState(false);
  112.       this.DUPositionComponent(this.checkbox_fish, 51, 111, 46, 15, var4);
  113.       this.checkbox_fish.setFont(var2);
  114.       this.checkbox_fish.setBackground(Color.lightGray);
  115.       this.checkbox_fish.setForeground(Color.black);
  116.       this.checkbox_fish.setEnabled(true);
  117.       this.checkbox_fish.setVisible(true);
  118.       this.checkbox_fish.setLabel("Fish");
  119.       this.checkbox_fish.setState(false);
  120.       this.DUPositionComponent(this.checkbox_veggie, 51, 126, 46, 15, var4);
  121.       this.checkbox_veggie.setFont(var2);
  122.       this.checkbox_veggie.setBackground(Color.lightGray);
  123.       this.checkbox_veggie.setForeground(Color.black);
  124.       this.checkbox_veggie.setEnabled(true);
  125.       this.checkbox_veggie.setVisible(true);
  126.       this.checkbox_veggie.setLabel("Veggie");
  127.       this.checkbox_veggie.setState(false);
  128.       this.DUPositionComponent(this.checkbox_ketchup, 139, 80, 70, 15, var4);
  129.       this.checkbox_ketchup.setFont(var2);
  130.       this.checkbox_ketchup.setBackground(Color.lightGray);
  131.       this.checkbox_ketchup.setForeground(Color.black);
  132.       this.checkbox_ketchup.setEnabled(true);
  133.       this.checkbox_ketchup.setVisible(true);
  134.       this.checkbox_ketchup.setLabel("Ketchup");
  135.       this.checkbox_ketchup.setState(false);
  136.       this.DUPositionComponent(this.checkbox_mayonnaise, 139, 95, 60, 15, var4);
  137.       this.checkbox_mayonnaise.setFont(var2);
  138.       this.checkbox_mayonnaise.setBackground(Color.lightGray);
  139.       this.checkbox_mayonnaise.setForeground(Color.black);
  140.       this.checkbox_mayonnaise.setEnabled(true);
  141.       this.checkbox_mayonnaise.setVisible(true);
  142.       this.checkbox_mayonnaise.setLabel("Mayonnaise");
  143.       this.checkbox_mayonnaise.setState(false);
  144.       this.DUPositionComponent(this.checkbox_mustard, 139, 110, 51, 15, var4);
  145.       this.checkbox_mustard.setFont(var2);
  146.       this.checkbox_mustard.setBackground(Color.lightGray);
  147.       this.checkbox_mustard.setForeground(Color.black);
  148.       this.checkbox_mustard.setEnabled(true);
  149.       this.checkbox_mustard.setVisible(true);
  150.       this.checkbox_mustard.setLabel("Mustard");
  151.       this.checkbox_mustard.setState(false);
  152.       this.cb_placeOrder.addActionListener(this);
  153.       this.DUPositionComponent(this.cb_placeOrder, 15, 150, 54, 14, var4);
  154.       this.cb_placeOrder.setFont(var2);
  155.       this.cb_placeOrder.setBackground(Color.lightGray);
  156.       this.cb_placeOrder.setForeground(Color.black);
  157.       this.cb_placeOrder.setEnabled(true);
  158.       this.cb_placeOrder.setVisible(true);
  159.       this.cb_placeOrder.setLabel("Place Order");
  160.       this.textf_orderDetails.setEditable(false);
  161.       this.DUPositionComponent(this.textf_orderDetails, 15, 185, 270, 14, var4);
  162.       this.textf_orderDetails.setFont(var2);
  163.       this.textf_orderDetails.setBackground(Color.lightGray);
  164.       this.textf_orderDetails.setForeground(Color.black);
  165.       this.textf_orderDetails.setEnabled(true);
  166.       this.textf_orderDetails.setVisible(true);
  167.       this.DUPositionComponent(this.label_1, 36, 66, 44, 15, var4);
  168.       this.label_1.setText("One Patty:");
  169.       this.label_1.setAlignment(0);
  170.       this.label_1.setFont(var2);
  171.       this.label_1.setBackground(Color.lightGray);
  172.       this.label_1.setForeground(Color.black);
  173.       this.label_1.setEnabled(true);
  174.       this.label_1.setVisible(true);
  175.       this.DUPositionComponent(this.label_2, 5, 5, 215, 10, var4);
  176.       this.label_2.setText("This sample shows Checkbox and CheckboxGroup.");
  177.       this.label_2.setAlignment(0);
  178.       this.label_2.setFont(var2);
  179.       this.label_2.setBackground(Color.lightGray);
  180.       this.label_2.setForeground(Color.black);
  181.       this.label_2.setEnabled(true);
  182.       this.label_2.setVisible(true);
  183.       this.DUPositionComponent(this.label_3, 5, 15, 290, 10, var4);
  184.       this.label_3.setText("A CheckboxGroup guarantees only one member of the group can be selected.");
  185.       this.label_3.setAlignment(0);
  186.       this.label_3.setFont(var2);
  187.       this.label_3.setBackground(Color.lightGray);
  188.       this.label_3.setForeground(Color.black);
  189.       this.label_3.setEnabled(true);
  190.       this.label_3.setVisible(true);
  191.       this.DUPositionComponent(this.label_4, 15, 170, 50, 15, var4);
  192.       this.label_4.setText("Your order:");
  193.       this.label_4.setAlignment(0);
  194.       this.label_4.setFont(var2);
  195.       this.label_4.setBackground(Color.lightGray);
  196.       this.label_4.setForeground(Color.black);
  197.       this.label_4.setEnabled(true);
  198.       this.label_4.setVisible(true);
  199.       this.DUPositionComponent(this.label_5, 126, 66, 66, 15, var4);
  200.       this.label_5.setText("Any Condiments:");
  201.       this.label_5.setAlignment(0);
  202.       this.label_5.setFont(var2);
  203.       this.label_5.setBackground(Color.lightGray);
  204.       this.label_5.setForeground(Color.black);
  205.       this.label_5.setEnabled(true);
  206.       this.label_5.setVisible(true);
  207.       this.DUPositionComponent(this.label_6, 5, 50, 200, 15, var4);
  208.       this.label_6.setText("Select your burger from the options below:");
  209.       this.label_6.setAlignment(0);
  210.       this.label_6.setFont(var2);
  211.       this.label_6.setBackground(Color.lightGray);
  212.       this.label_6.setForeground(Color.black);
  213.       this.label_6.setEnabled(true);
  214.       this.label_6.setVisible(true);
  215.       this.DUPositionComponent(this.label_7, 5, 25, 195, 10, var4);
  216.       this.label_7.setText("The patty options are members of a CheckboxGroup.");
  217.       this.label_7.setAlignment(0);
  218.       this.label_7.setFont(var2);
  219.       this.label_7.setBackground(Color.lightGray);
  220.       this.label_7.setForeground(Color.black);
  221.       this.label_7.setEnabled(true);
  222.       this.label_7.setVisible(true);
  223.       var5.setResizePercent(this.checkbox_beef, new Rectangle(0, 0, 0, 0));
  224.       var5.setResizePercent(this.checkbox_chicken, new Rectangle(0, 0, 0, 0));
  225.       var5.setResizePercent(this.checkbox_fish, new Rectangle(0, 0, 0, 0));
  226.       var5.setResizePercent(this.checkbox_veggie, new Rectangle(0, 0, 0, 0));
  227.       var5.setResizePercent(this.checkbox_ketchup, new Rectangle(0, 0, 0, 0));
  228.       var5.setResizePercent(this.checkbox_mayonnaise, new Rectangle(0, 0, 0, 0));
  229.       var5.setResizePercent(this.checkbox_mustard, new Rectangle(0, 0, 0, 0));
  230.       var5.setResizePercent(this.cb_placeOrder, new Rectangle(0, 0, 0, 0));
  231.       var5.setResizePercent(this.textf_orderDetails, new Rectangle(0, 0, 0, 0));
  232.       var5.setResizePercent(this.label_1, new Rectangle(0, 0, 0, 0));
  233.       var5.setResizePercent(this.label_2, new Rectangle(0, 0, 0, 0));
  234.       var5.setResizePercent(this.label_3, new Rectangle(0, 0, 0, 0));
  235.       var5.setResizePercent(this.label_4, new Rectangle(0, 0, 0, 0));
  236.       var5.setResizePercent(this.label_5, new Rectangle(0, 0, 0, 0));
  237.       var5.setResizePercent(this.label_6, new Rectangle(0, 0, 0, 0));
  238.       var5.setResizePercent(this.label_7, new Rectangle(0, 0, 0, 0));
  239.       this.Form_CheckBoxGroup_objectCreated(new EventData(this));
  240.       return var3;
  241.    }
  242.  
  243.    public synchronized void destroy() {
  244.       if (this instanceof Window) {
  245.          ((Window)this).dispose();
  246.       } else {
  247.          ((Container)this).removeNotify();
  248.       }
  249.  
  250.       if (this.isMainForm()) {
  251.          System.gc();
  252.          System.runFinalization();
  253.          System.exit(0);
  254.       }
  255.  
  256.    }
  257.  
  258.    public boolean defaultHandleEvent(Event var1) {
  259.       this.defaultProcessEvent(new AWTEvent(var1));
  260.       return false;
  261.    }
  262.  
  263.    public void defaultProcessEvent(java.awt.AWTEvent var1) {
  264.       super.processEvent(var1);
  265.    }
  266.  
  267.    public void actionPerformed(ActionEvent var1) {
  268.       Object var2 = ((EventObject)var1).getSource();
  269.       if (var2 == this.cb_placeOrder) {
  270.          this.cb_placeOrder_actionPerformed(var1);
  271.       } else {
  272.          this.unhandledEvent("java.awt.event.ActionListener", "actionPerformed", var1);
  273.       }
  274.  
  275.    }
  276.  
  277.    public Form_CheckBoxGroup() {
  278.       this.checkbox_beef = new Checkbox((String)null, false, this.patty);
  279.       this.checkbox_chicken = new Checkbox((String)null, false, this.patty);
  280.       this.checkbox_fish = new Checkbox((String)null, false, this.patty);
  281.       this.checkbox_veggie = new Checkbox((String)null, false, this.patty);
  282.       this.checkbox_ketchup = new Checkbox();
  283.       this.checkbox_mayonnaise = new Checkbox();
  284.       this.checkbox_mustard = new Checkbox();
  285.       this.cb_placeOrder = new Button();
  286.       this.textf_orderDetails = new TextField();
  287.       this.label_1 = new Label();
  288.       this.label_2 = new Label();
  289.       this.label_3 = new Label();
  290.       this.label_4 = new Label();
  291.       this.label_5 = new Label();
  292.       this.label_6 = new Label();
  293.       this.label_7 = new Label();
  294.    }
  295.  
  296.    public boolean handleEvent(Event var1) {
  297.       return this.defaultHandleEvent(var1);
  298.    }
  299.  
  300.    public void unhandledEvent(String var1, String var2, Object var3) {
  301.    }
  302.  
  303.    public void processEvent(java.awt.AWTEvent var1) {
  304.       this.defaultProcessEvent(var1);
  305.    }
  306.  
  307.    public Container getContentPane() {
  308.       return this;
  309.    }
  310.  
  311.    public boolean Form_CheckBoxGroup_objectCreated(EventData var1) {
  312.       this.checkbox_veggie.setState(true);
  313.       return false;
  314.    }
  315.  
  316.    public boolean cb_placeOrder_actionPerformed(ActionEvent var1) {
  317.       boolean var2 = false;
  318.       StringBuffer var3 = new StringBuffer();
  319.       if (this.checkbox_beef.getState()) {
  320.          var3.append("Beef Burger with: ");
  321.       } else if (this.checkbox_chicken.getState()) {
  322.          var3.append("Chicken Burger with: ");
  323.       } else if (this.checkbox_fish.getState()) {
  324.          var3.append("Fish Burger with: ");
  325.       } else {
  326.          var3.append("Veggie Burger with: ");
  327.       }
  328.  
  329.       if (this.checkbox_ketchup.getState()) {
  330.          var2 = true;
  331.          var3.append(" ketchup");
  332.       }
  333.  
  334.       if (this.checkbox_mayonnaise.getState()) {
  335.          var2 = true;
  336.          var3.append(" mayonnaise");
  337.       }
  338.  
  339.       if (this.checkbox_mustard.getState()) {
  340.          var2 = true;
  341.          var3.append(" mustard");
  342.       }
  343.  
  344.       if (!var2) {
  345.          var3.append(" no condiments");
  346.       }
  347.  
  348.       this.textf_orderDetails.setText(var3.toString());
  349.       return false;
  350.    }
  351. }
  352.