Adding JMCR-Stable version
[Benchmarks_CSolver.git] / JMCR-Stable / real-world application / jigsaw / src / org / w3c / tools / widgets / LabelCheckbox.java
diff --git a/JMCR-Stable/real-world application/jigsaw/src/org/w3c/tools/widgets/LabelCheckbox.java b/JMCR-Stable/real-world application/jigsaw/src/org/w3c/tools/widgets/LabelCheckbox.java
new file mode 100644 (file)
index 0000000..f6fe2d9
--- /dev/null
@@ -0,0 +1,106 @@
+// LabelCheckBox.java\r
+// $Id: LabelCheckbox.java,v 1.1 2010/06/15 12:20:35 smhuang Exp $\r
+// (c) COPYRIGHT MIT and INRIA, 1998.\r
+// Please first read the full copyright statement in file COPYRIGHT.html\r
+package org.w3c.tools.widgets;\r
+\r
+import java.awt.BorderLayout;\r
+import java.awt.Checkbox;\r
+import java.awt.Component;\r
+import java.awt.Container;\r
+import java.awt.Dimension;\r
+import java.awt.Label;\r
+import java.awt.LayoutManager;\r
+\r
+import java.awt.event.ItemEvent;\r
+import java.awt.event.ItemListener;\r
+\r
+/**\r
+ * @version $Revision: 1.1 $\r
+ * @author  Benoît Mahé (bmahe@w3.org)\r
+ */\r
+public class LabelCheckbox extends BorderPanel implements ItemListener {\r
+\r
+    Label     label    = null;\r
+    Checkbox  checkbox = null;\r
+    String    strue    = "on";\r
+    String    sfalse   = "off";\r
+    Dimension size     = null;\r
+\r
+    public void itemStateChanged(ItemEvent e) {\r
+       switch (e.getStateChange()) {\r
+       case ItemEvent.SELECTED:\r
+           setState(true);\r
+           break;\r
+       case ItemEvent.DESELECTED:\r
+           setState(false);\r
+           break;\r
+       default:\r
+\r
+       }\r
+    }\r
+\r
+    String getString(boolean check) {\r
+       return (check ? strue : sfalse);\r
+    }\r
+\r
+    public void setState(boolean state) {\r
+       checkbox.setState(state);\r
+       label.setText(getString(state));\r
+       //      remove(label);\r
+       //      label = new Label(getString(state));\r
+       //      add(label);\r
+    }\r
+\r
+    public boolean getState() {\r
+       return checkbox.getState();\r
+    }\r
+\r
+    /**\r
+     * Create a new LabelCheckbox\r
+     */\r
+    public LabelCheckbox(int type, int thickness ) {\r
+        super(type, thickness);\r
+       init();\r
+    }    \r
+\r
+    /**\r
+     * Create a new LabelCheckbox\r
+     */\r
+    public LabelCheckbox(int type) {\r
+        super(type);\r
+       init();\r
+    }\r
+\r
+    /**\r
+     * Create a new LabelCheckbox\r
+     */\r
+    public LabelCheckbox() {\r
+        super(IN);\r
+       init();\r
+    }    \r
+\r
+    public Dimension getPreferredSize() {\r
+       return size;\r
+    }\r
+\r
+    public Dimension getMinimumSize() {\r
+       return size;\r
+    }\r
+\r
+    public Dimension getSize() {\r
+       return size;\r
+    }\r
+\r
+    private void init() {\r
+       setLayout( new BorderLayout());\r
+       label    = new Label(getString(true));\r
+       checkbox = new Checkbox();\r
+       checkbox.setState(true);\r
+       checkbox.addItemListener(this);\r
+       add(checkbox,"West");\r
+       add(label,"Center");\r
+       size = new Dimension(75,30);\r
+    }\r
+\r
+}\r