package sig.modules.Controller; import java.awt.BorderLayout; import java.awt.Checkbox; import java.awt.Color; import java.awt.Container; import java.awt.Dimension; import java.awt.Graphics; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowEvent; import java.awt.event.WindowListener; import java.io.File; import java.io.IOException; import java.text.DecimalFormat; import java.util.ArrayList; import java.util.List; import javax.imageio.ImageIO; import javax.swing.Box; import javax.swing.BoxLayout; import javax.swing.ButtonGroup; import javax.swing.JCheckBox; import javax.swing.JComponent; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JLayeredPane; import javax.swing.JPanel; import javax.swing.JRadioButton; import net.java.games.input.Component; import net.java.games.input.Controller; import sig.modules.ControllerModule; public class ControlConfigurationWindow extends JFrame implements WindowListener{ DialogType dialog; List panels = new ArrayList(); List analog_controller_components = new ArrayList(); List analog_controller_component_labels = new ArrayList(); ControllerModule module; DecimalFormat df = new DecimalFormat("0.000"); PreviewPanel previewpanel; ActionListener checkboxListener = new ActionListener(){ @Override public void actionPerformed(ActionEvent ev) { int checkedamt=0; for (JCheckBox cb : analog_controller_component_labels) { checkedamt+=(cb.isSelected())?1:0; } if (previewpanel.twoAxis && checkedamt>1) { UncheckPreviouslyCheckedbox(ev); } else if (!previewpanel.twoAxis && checkedamt>2) { UncheckPreviouslyCheckedbox(ev); } } private void UncheckPreviouslyCheckedbox(ActionEvent ev) { for (int i=0;i