X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosuilib%2FAltosFlightStatsTable.java;h=b32e92a0ea0e15fd736a517062dd69d7318444cb;hp=ec106cf1f0e973156a55a4183ed5e591b8716f84;hb=bfc0c65c9f9ec9547d71016fc897ba35bdb414f8;hpb=2182c49298e0862a60dea104450d5f74dbeaeeb2 diff --git a/altosuilib/AltosFlightStatsTable.java b/altosuilib/AltosFlightStatsTable.java index ec106cf1..b32e92a0 100644 --- a/altosuilib/AltosFlightStatsTable.java +++ b/altosuilib/AltosFlightStatsTable.java @@ -19,14 +19,23 @@ package org.altusmetrum.altosuilib_2; import java.awt.*; import javax.swing.*; +import java.util.*; import org.altusmetrum.altoslib_4.*; -public class AltosFlightStatsTable extends JComponent { +public class AltosFlightStatsTable extends JComponent implements AltosFontListener { GridBagLayout layout; - class FlightStat { + LinkedList flight_stats = new LinkedList(); + + class FlightStat implements AltosFontListener { JLabel label; - JTextField value; + JTextField[] value; + + public void font_size_changed(int font_size) { + label.setFont(AltosUILib.label_font); + for (int i = 0; i < value.length; i++) + value[i].setFont(AltosUILib.value_font); + } public FlightStat(GridBagLayout layout, int y, String label_text, String ... values) { GridBagConstraints c = new GridBagConstraints(); @@ -43,21 +52,28 @@ public class AltosFlightStatsTable extends JComponent { layout.setConstraints(label, c); add(label); + value = new JTextField[values.length]; for (int j = 0; j < values.length; j++) { - value = new JTextField(values[j]); - value.setFont(AltosUILib.value_font); - value.setHorizontalAlignment(SwingConstants.RIGHT); + value[j] = new JTextField(values[j]); + value[j].setFont(AltosUILib.value_font); + value[j].setHorizontalAlignment(SwingConstants.RIGHT); c.gridx = j+1; c.gridy = y; c.anchor = GridBagConstraints.EAST; c.fill = GridBagConstraints.BOTH; c.weightx = 1; - layout.setConstraints(value, c); - add(value); + layout.setConstraints(value[j], c); + add(value[j]); } + flight_stats.add(this); } } + public void font_size_changed(int font_size) { + for (FlightStat f : flight_stats) + f.font_size_changed(font_size); + } + static String pos(double p, String pos, String neg) { String h = pos; if (p < 0) { @@ -147,5 +163,4 @@ public class AltosFlightStatsTable extends JComponent { pos(stats.lon,"E","W")); } } - }