public static void writeGraphs(Component parentComponent, String title, SnapFileFilter[] fileFilters, PropertyMap preferences, DiagramGraph[] graphs) { if (graphs.length == 0) { JOptionPane.showMessageDialog(parentComponent, "Nothing to save."); return; } File selectedFile = selectGraphFile(parentComponent, title, fileFilters, preferences, false); if (selectedFile != null) { try { FileWriter fileWriter = new FileWriter(selectedFile); try { writeGraphs(graphs, fileWriter); } finally { fileWriter.close(); } } catch (IOException e) { JOptionPane.showMessageDialog(parentComponent, "I/O error: " + e.getMessage()); } } }
public void actionPerformed(ActionEvent e) { ensureDefaultDirSet(); DiagramGraphIO.writeGraphs(null, "Export Endmembers", new SnapFileFilter[]{DiagramGraphIO.SPECTRA_CSV_FILE_FILTER}, appContext.getPreferences(), endmemberDiagram.getGraphs()); } }
private void testIO(DiagramGraph[] expectedGraphs) throws IOException { StringWriter writer1 = new StringWriter(); DiagramGraphIO.writeGraphs(expectedGraphs, writer1); DiagramGraph[] actualGraphs = DiagramGraphIO.readGraphs(new StringReader(writer1.toString())); assertEqualGraphs(actualGraphs, expectedGraphs); StringWriter writer2 = new StringWriter(); DiagramGraphIO.writeGraphs(expectedGraphs, writer2); assertEquals(writer1.toString(), writer2.toString()); }
private void exportSpectra() { final List<DisplayableSpectrum> selectedSpectra = spectrumTopComponent.getSelectedSpectra(); Placemark[] pins = spectrumTopComponent.getDisplayedPins(); final List<SpectrumGraph> spectrumGraphList = new ArrayList<SpectrumGraph>(); for (Placemark pin : pins) { for (DisplayableSpectrum spectrumInDisplay : selectedSpectra) { final SpectrumGraph spectrumGraph = new SpectrumGraph(pin, spectrumInDisplay.getSelectedBands()); spectrumGraph.readValues(); spectrumGraphList.add(spectrumGraph); } } DiagramGraph[] pinGraphs = spectrumGraphList.toArray(new DiagramGraph[0]); //todo move diagramgraphio to snap DiagramGraphIO.writeGraphs(SwingUtilities.getWindowAncestor(spectrumTopComponent), "Export Pin Spectra", new SnapFileFilter[]{DiagramGraphIO.SPECTRA_CSV_FILE_FILTER}, SnapApp.getDefault().getPreferencesPropertyMap(), pinGraphs); }