public static void saveDeadZones(int joyId) { Controller controller = Controllers.getController(joyId); DecimalFormat df = new DecimalFormat("#0.00"); for (int i = 0; i < controller.getAxisCount(); i++) { config.setConfigFileSetting( "-Deadzones-." + controller.getName(), controller.getAxisName(i), df.format(controller.getDeadZone(i))); } config.addComment( "-Deadzones-", "Deadzone values here will override values in individual bindings"); LogHelper.Info("Saved deadzones for " + controller.getName()); }
// Constructor - Creates a Controller object for every controller detected public TestControllers(int index) { // Get the controller index from the Controllers group controller = Controllers.getController(index); // Gui LayoutManager setLayout(null); // Get the number of buttons on the controller buttonCount = controller.getButtonCount(); // Get the number of buttons + the number of hat pads itemCount = controller.getButtonCount() + controller.getAxisCount() + 2; // Create a Gui Box for every button / hat pad values = new JTextField[itemCount]; names = new JTextField[itemCount]; for (int i = 0; i < controller.getButtonCount(); i++) { names[i] = new JTextField(); names[i].setEditable(false); names[i].setBounds(0, i * 30, 100, 30); names[i].setText(controller.getButtonName(i)); add(names[i]); values[i] = new JTextField(); values[i].setEditable(false); values[i].setBounds(100, i * 30, 100, 30); add(values[i]); } for (int i = buttonCount; i < buttonCount + controller.getAxisCount(); i++) { names[i] = new JTextField(); names[i].setEditable(false); names[i].setBounds(0, i * 30, 100, 30); names[i].setText(controller.getAxisName(i - buttonCount)); add(names[i]); values[i] = new JTextField(); values[i].setEditable(false); values[i].setBounds(100, i * 30, 100, 30); add(values[i]); } int i = itemCount - 2; names[i] = new JTextField(); names[i].setEditable(false); names[i].setBounds(0, i * 30, 100, 30); names[i].setText("POV X"); add(names[i]); values[i] = new JTextField(); values[i].setEditable(false); values[i].setBounds(100, i * 30, 100, 30); add(values[i]); i = itemCount - 1; names[i] = new JTextField(); names[i].setEditable(false); names[i].setBounds(0, i * 30, 100, 30); names[i].setText("POV Y"); add(names[i]); values[i] = new JTextField(); values[i].setEditable(false); values[i].setBounds(100, i * 30, 100, 30); add(values[i]); total++; setPreferredSize(new Dimension(200, 30 * itemCount)); JFrame frame = new JFrame(controller.getName()); frame.setContentPane(new JScrollPane(this)); frame.addWindowListener( new WindowAdapter() { public void windowClosing(WindowEvent e) { total--; if (total == 0) { System.exit(0); } } }); frame.setSize(230, 400); frame.setLocation(index * 30, index * 30); frame.setVisible(true); }