From cf6cdb93b969db606525ff783bfe571507e9ea13 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Anian=20B=C3=BChler?=
 <anian.buehler@reutlingen-university.de>
Date: Thu, 12 Aug 2021 16:39:46 +0200
Subject: [PATCH] save images without apache filenameutils

---
 .../com/ardublock/ui/OpenblocksFrame.java     | 31 +++++++++++--------
 1 file changed, 18 insertions(+), 13 deletions(-)

diff --git a/src/main/java/com/ardublock/ui/OpenblocksFrame.java b/src/main/java/com/ardublock/ui/OpenblocksFrame.java
index c54f9c3..c1c1cd1 100644
--- a/src/main/java/com/ardublock/ui/OpenblocksFrame.java
+++ b/src/main/java/com/ardublock/ui/OpenblocksFrame.java
@@ -33,8 +33,6 @@ import javax.swing.ToolTipManager;
 import javax.swing.filechooser.FileFilter;
 import javax.swing.filechooser.FileNameExtensionFilter;
 
-import org.apache.commons.io.FilenameUtils;
-
 import com.ardublock.core.Context;
 import com.ardublock.ui.listener.ArdublockWorkspaceListener;
 import com.ardublock.ui.listener.GenerateCodeButtonListener;
@@ -804,27 +802,34 @@ public class OpenblocksFrame extends JFrame
 	        fc.setFileFilter(filterPNG);
 	        fc.setAcceptAllFileFilterUsed(false);
 	        
-	        System.out.println("Name"+context.getSaveFileName());
 	        if(context.getSaveFileName().contains(".")) {
-	        	fileName = context.getSaveFileName().substring(0, context.getSaveFileName().lastIndexOf('.'));
+	        	fileName = context.getSaveFileName().substring(0, context.getSaveFileName().lastIndexOf('.')) + ".png";
+	        }
+	        else {	
+	        	fileName = context.getSaveFileName() + ".png";
 	        }
-	        /*else {
-	        	fileName = context.getSaveFileName();
-	        }*/
 	        
-			fc.setSelectedFile(new File(fileName));//get ABprogramFileName
+	        //set std-name if program is unsaved
+	        if(context.getSaveFileName().equals("untitled")){
+	        	fileName = "ardublock.png";
+	        }
+	    
+	        //open SaveDialog with filename and save image
+			fc.setSelectedFile(new File(fileName));
 			int returnVal = fc.showSaveDialog(workspace.getBlockCanvas().getJComponent());
 			
 	        if (returnVal == JFileChooser.APPROVE_OPTION) {
-	            File file = fc.getSelectedFile();
+	        	File file = fc.getSelectedFile();
+	        	
+	        	if(!file.getName().contains(".png")) {
+	        		file = new File (file.getAbsolutePath()+".png");
+	        	}
+
 	            if(file.exists() && !askUserOverwriteExistedImage()) {
 	            	return;
 	            }
 	            else {
-	            	if(fc.getFileFilter().equals(filterPNG)) {
-			        	file = new File(file.getParentFile(), FilenameUtils.getBaseName(file.getName())+".png");
-			        	ImageIO.write(ci,"png",file); 
-			        }
+	            	ImageIO.write(ci,"png",file); 
 	            }
 	        }
 		} catch (Exception e1) {
-- 
GitLab