home *** CD-ROM | disk | FTP | other *** search
- package mug.ui;
-
- import java.awt.Button;
- import java.awt.Checkbox;
- import java.awt.CheckboxGroup;
- import java.awt.Component;
- import java.awt.Container;
- import java.awt.Dialog;
- import java.awt.Event;
- import java.awt.FlowLayout;
- import java.awt.Frame;
- import java.awt.GridBagConstraints;
- import java.awt.GridBagLayout;
- import java.awt.GridLayout;
- import java.awt.Insets;
- import java.awt.Panel;
- import java.awt.Window;
-
- public class MultipleChoiceDialog extends Dialog {
- private CheckboxGroup _cbg;
- private Callback _callback;
-
- public MultipleChoiceDialog(Frame var1, boolean var2, String var3, String[] var4, Callback var5) {
- super(var1, var2);
- this._callback = var5;
- this.init(var3, var4);
- }
-
- public MultipleChoiceDialog(Frame var1, String var2, boolean var3, String var4, String[] var5, Callback var6) {
- super(var1, var2, var3);
- this._callback = var6;
- this.init(var4, var5);
- }
-
- public Insets insets() {
- Insets var1 = super.insets();
- return new Insets(var1.top + 15, var1.left + 15, var1.bottom + 15, var1.right + 15);
- }
-
- private void init(String var1, String[] var2) {
- ((Container)this).setLayout(new GridBagLayout());
- GridBagConstraints var3 = new GridBagConstraints();
- var3.gridwidth = 0;
- this.constrain(new MultiLineLabel(var1, 1), var3);
- GridBagPanel var4 = new GridBagPanel();
- var3.anchor = 17;
- this._cbg = new CheckboxGroup();
-
- for(int var5 = 0; var5 < var2.length; ++var5) {
- Checkbox var6 = new Checkbox(var2[var5], this._cbg, var5 == 0);
- var4.constrain(var6, var3);
- }
-
- var3.anchor = 10;
- this.constrain(var4, var3);
- Panel var7 = new Panel();
- ((Container)var7).setLayout(new FlowLayout(1, 10, 5));
- ((Container)var7).add(new Button("Ok"));
- ((Container)var7).add(new Button("Cancel"));
- this.constrain(var7, var3);
- ((Window)this).pack();
- }
-
- private void constrain(Component var1, GridBagConstraints var2) {
- GridBagLayout var3 = (GridBagLayout)((Container)this).getLayout();
- var3.setConstraints(var1, var2);
- ((Container)this).add(var1);
- }
-
- private Panel createChoices(String[] var1) {
- Panel var2 = new Panel();
- ((Container)var2).setLayout(new GridLayout(var1.length, 1));
- this._cbg = new CheckboxGroup();
-
- for(int var3 = 0; var3 < var1.length; ++var3) {
- ((Container)var2).add(new Checkbox(var1[var3], this._cbg, var3 == 0));
- }
-
- return var2;
- }
-
- public boolean handleEvent(Event var1) {
- if (var1.id == 201) {
- ((Window)this).dispose();
- return true;
- } else {
- return super.handleEvent(var1);
- }
- }
-
- public boolean action(Event var1, Object var2) {
- if (var1.target instanceof Button) {
- String var3 = this._cbg.getCurrent().getLabel();
- ((Window)this).dispose();
- if (((String)var2).equals("Ok") && this._callback != null) {
- this._callback.execute(this, var3);
- }
-
- return true;
- } else {
- return false;
- }
- }
- }
-