X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=micropeak%2FMicroPeak.java;h=c9074348a057aa9e8f7344b62173c4a1d7e13a6f;hp=82d926fb81ee67c5732ed5cfc87b38b0d70217f1;hb=daf8776f8646ba187f1a17f7aae797503bed3f2a;hpb=bf8e1b6eecb2bae12ffdbd730bd6ec12ccdaf23a diff --git a/micropeak/MicroPeak.java b/micropeak/MicroPeak.java index 82d926fb..c9074348 100644 --- a/micropeak/MicroPeak.java +++ b/micropeak/MicroPeak.java @@ -25,31 +25,38 @@ import java.util.concurrent.*; import java.util.*; import org.altusmetrum.AltosLib.*; -public class MicroPeak extends JFrame implements ActionListener, ItemListener { +public class MicroPeak extends MicroFrame implements ActionListener, ItemListener { File filename; MicroGraph graph; MicroData data; Container pane; + private void RunFile(InputStream input) { + try { + data = new MicroData(input); + graph.setData(data); + } catch (IOException ioe) { + } + try { + input.close(); + } catch (IOException ioe) { + } + } + private void OpenFile(File filename) { try { - FileInputStream input = new FileInputStream(filename); - try { - data = new MicroData(input); - graph = new MicroGraph(data); - pane.add(graph.panel); - } catch (IOException ioe) { - } - try { - input.close(); - } catch (IOException ioe) { - } + RunFile (new FileInputStream(filename)); } catch (FileNotFoundException fne) { } } private void SelectFile() { + MicroFileChooser chooser = new MicroFileChooser(this); + InputStream input = chooser.runDialog(); + + if (input != null) + RunFile(input); } private void DownloadData() { @@ -73,17 +80,12 @@ public class MicroPeak extends JFrame implements ActionListener, ItemListener { public void itemStateChanged(ItemEvent e) { } - public MicroPeak(File filename) { + public MicroPeak() { this.filename = filename; pane = getContentPane(); -// JLabel label = new JLabel ("Hello, World"); -// pane.add(label); - - setSize(800, 500); - setTitle("MicroPeak"); JMenuBar menuBar = new JMenuBar(); @@ -116,20 +118,27 @@ public class MicroPeak extends JFrame implements ActionListener, ItemListener { } }); - if (filename != null) - this.OpenFile(filename); + graph = new MicroGraph(data); + pane.add(graph.panel); + pane.doLayout(); + pane.validate(); + doLayout(); + validate(); + Insets i = getInsets(); + Dimension ps = pane.getPreferredSize(); + ps.width += i.left + i.right; + ps.height += i.top + i.bottom; + setPreferredSize(ps); + setSize(ps); setVisible(true); } - public MicroPeak() { - this(null); - } - public static void main(final String[] args) { boolean opened = false; for (int i = 0; i < args.length; i++) { - new MicroPeak(new File(args[i])); + MicroPeak m = new MicroPeak(); + m.OpenFile(new File(args[i])); opened = true; } if (!opened)