diff options
| author | Keith Packard <keithp@keithp.com> | 2012-12-25 14:45:49 -0800 | 
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2012-12-25 14:45:49 -0800 | 
| commit | 9da9adc2718928de2af65a68cddbcc636cc3e9e8 (patch) | |
| tree | 0bc29fe1de7bf179cc52dc0ea948ce22626dd2b7 /micropeak/MicroPeak.java | |
| parent | bf8e1b6eecb2bae12ffdbd730bd6ec12ccdaf23a (diff) | |
Add file chooser for MicroPeak
Needs reasonable directory tracking
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'micropeak/MicroPeak.java')
| -rw-r--r-- | micropeak/MicroPeak.java | 57 | 
1 files changed, 33 insertions, 24 deletions
| diff --git a/micropeak/MicroPeak.java b/micropeak/MicroPeak.java index 82d926fb..cd09c475 100644 --- a/micropeak/MicroPeak.java +++ b/micropeak/MicroPeak.java @@ -32,24 +32,31 @@ public class MicroPeak extends JFrame implements ActionListener, ItemListener {  	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) | 
