X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosuilib%2FAltosUIEnable.java;h=7bb80bc100d127ead14be817e832ba26197fc651;hp=e5695fa0db96ea34ce034a80134e87730fffe061;hb=21d176f161b90f18f236ef887cef9676d712eee3;hpb=9839b0b62d797a8616fc66038e3f3c68e2a214d0 diff --git a/altosuilib/AltosUIEnable.java b/altosuilib/AltosUIEnable.java index e5695fa0..7bb80bc1 100644 --- a/altosuilib/AltosUIEnable.java +++ b/altosuilib/AltosUIEnable.java @@ -15,7 +15,7 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -package org.altusmetrum.altosuilib_1; +package org.altusmetrum.altosuilib_10; import java.awt.*; import java.awt.event.*; @@ -23,7 +23,7 @@ import javax.swing.*; import java.io.*; import java.util.concurrent.*; import java.util.*; -import org.altusmetrum.altoslib_1.*; +import org.altusmetrum.altoslib_10.*; import org.jfree.ui.*; import org.jfree.chart.*; @@ -37,44 +37,45 @@ import org.jfree.data.*; public class AltosUIEnable extends Container { - Insets il, ir; - int y; + Insets il, ir; + int y; + int x; + JCheckBox imperial_units; + + static final int max_rows = 14; + + public void units_changed(boolean imperial_units) { + if (this.imperial_units != null) { + this.imperial_units.setSelected(imperial_units); + } + } class GraphElement implements ActionListener { - AltosUISeries series; - JLabel label; - JRadioButton enable; + AltosUIGrapher grapher; + JCheckBox enable; String name; public void actionPerformed(ActionEvent ae) { - series.set_enable(enable.isSelected()); + grapher.set_enable(enable.isSelected()); } - GraphElement (String name, AltosUISeries series, boolean enabled) { + GraphElement (String name, AltosUIGrapher grapher, boolean enabled) { this.name = name; - this.series = series; - label = new JLabel(name); - enable = new JRadioButton("Enable", enabled); - series.set_enable(enabled); + this.grapher = grapher; + enable = new JCheckBox(name, enabled); + grapher.set_enable(enabled); enable.addActionListener(this); } } - public void add(String name, AltosUISeries series, boolean enabled) { - - GraphElement e = new GraphElement(name, series, enabled); + public void add(String name, AltosUIGrapher grapher, boolean enabled) { - /* Add label */ + GraphElement e = new GraphElement(name, grapher, enabled); GridBagConstraints c = new GridBagConstraints(); - c.gridx = 0; c.gridy = y; - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - c.insets = il; - add(e.label, c); - /* Add radio button */ + /* Add element */ c = new GridBagConstraints(); - c.gridx = 1; c.gridy = y; + c.gridx = x; c.gridy = y; c.fill = GridBagConstraints.HORIZONTAL; c.anchor = GridBagConstraints.CENTER; c.insets = ir; @@ -82,12 +83,39 @@ public class AltosUIEnable extends Container { /* Next row */ y++; + if (y == max_rows) { + x++; + y = 0; + } + } + + public void add_units() { + /* Imperial units setting */ + + /* Add label */ + imperial_units = new JCheckBox("Imperial Units", AltosUIPreferences.imperial_units()); + imperial_units.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + JCheckBox item = (JCheckBox) e.getSource(); + boolean enabled = item.isSelected(); + AltosUIPreferences.set_imperial_units(enabled); + } + }); + imperial_units.setToolTipText("Use Imperial units instead of metric"); + GridBagConstraints c = new GridBagConstraints(); + c.gridx = 0; c.gridy = 1000; + c.fill = GridBagConstraints.NONE; + c.anchor = GridBagConstraints.LINE_START; + c.insets = il; + add(imperial_units, c); } public AltosUIEnable() { il = new Insets(4,4,4,4); ir = new Insets(4,4,4,4); + x = 0; y = 0; setLayout(new GridBagLayout()); + add_units(); } }