Revision: 5921
http://sourceforge.net/p/jump-pilot/code/5921
Author: ma15569
Date: 2018-08-22 15:28:45 +0000 (Wed, 22 Aug 2018)
Log Message:
-----------
Add generic save view to image of JPanel in a JScrollPane
Modified Paths:
--------------
core/trunk/src/org/openjump/sextante/gui/additionalResults/AdditionalResultsFrame.java
Modified:
core/trunk/src/org/openjump/sextante/gui/additionalResults/AdditionalResultsFrame.java
===================================================================
---
core/trunk/src/org/openjump/sextante/gui/additionalResults/AdditionalResultsFrame.java
2018-08-22 15:24:29 UTC (rev 5920)
+++
core/trunk/src/org/openjump/sextante/gui/additionalResults/AdditionalResultsFrame.java
2018-08-22 15:28:45 UTC (rev 5921)
@@ -454,8 +454,43 @@
} else if (returnVal == JFileChooser.CANCEL_OPTION) {
return;
}
+
}
+ // [Giuseppe Aruta 2018-08-22] add generic save view to
+ // image of JPanel in a JScrollPane
+ else if (view instanceof JPanel) {
+ final JPanel panel = (JPanel) pane.getViewport()
+ .getView();
+ final int w = panel.getWidth();
+ final int h = panel.getHeight();
+ final BufferedImage bi = new BufferedImage(w, h,
+ BufferedImage.TYPE_INT_RGB);
+ final Graphics2D g = bi.createGraphics();
+ panel.paint(g);
+
+ filter = new FileNameExtensionFilter(
+ "Portable Network Graphics (png)", "png");
+ final JFileChooser fc = new
GUIUtil.FileChooserWithOverwritePrompting(
+ "png");
+ fc.setFileFilter(filter);
+ fc.addChoosableFileFilter(filter);
+ final int returnVal = fc
+ .showSaveDialog(AdditionalResultsFrame.this);
+ fc.getWidth();
+ fc.getHeight();
+ if (returnVal == JFileChooser.APPROVE_OPTION) {
+ try {
+ file = new File(fc.getSelectedFile() + ".png");
+ ImageIO.write(bi, "png", file);
+ saved(file);
+ } catch (final Exception e) {
+ notsaved();
+ Logger(this.getClass(), e);
+ }
+ }
+ }
+
} else if (c instanceof PlotPanel) {
final PlotPanel panel = (PlotPanel) c;
filter = new FileNameExtensionFilter(
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel