You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2021/09/12 08:20:06 UTC
svn commit: r1893264 -
/pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java
Author: tilman
Date: Sun Sep 12 08:20:06 2021
New Revision: 1893264
URL: http://svn.apache.org/viewvc?rev=1893264&view=rev
Log:
PDFBOX-2941: add "Save as..." menu item and simple implementation
Modified:
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java
Modified: pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java?rev=1893264&r1=1893263&r2=1893264&view=diff
==============================================================================
--- pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java (original)
+++ pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java Sun Sep 12 08:20:06 2021
@@ -169,7 +169,6 @@ public class PDFDebugger extends JFrame
private Tree tree;
// file menu
private JMenuItem saveAsMenuItem;
- private JMenuItem saveMenuItem;
private JMenu recentFilesMenu;
private JMenuItem printMenuItem;
private JMenu printDpiMenu;
@@ -521,6 +520,11 @@ public class PDFDebugger extends JFrame
addRecentFileItems();
fileMenu.add(recentFilesMenu);
+ saveAsMenuItem = new JMenuItem("Save as...");
+ saveAsMenuItem.addActionListener(this::saveAsMenuItemActionPerformed);
+ saveAsMenuItem.setEnabled(false);
+ fileMenu.add(saveAsMenuItem);
+
printMenuItem = new JMenuItem("Print");
printMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P, shortcutKeyMask));
printMenuItem.setEnabled(false);
@@ -665,6 +669,28 @@ public class PDFDebugger extends JFrame
exitMenuItemActionPerformed(null);
}
+ //TODO needs to be expanded like openMenuItemActionPerformed
+ // (FileOpenSaveDialog also needs to be expanded to have a method that saves a PDDocumennt)
+ private void saveAsMenuItemActionPerformed(ActionEvent evt)
+ {
+ try
+ {
+ FileDialog openDialog = new FileDialog(this, "Save", FileDialog.SAVE);
+ openDialog.setFilenameFilter((dir, name) -> name.toLowerCase().endsWith(".pdf"));
+ openDialog.setVisible(true);
+ String file = openDialog.getFile();
+ if (file != null)
+ {
+ document.setAllSecurityToBeRemoved(true);
+ document.save(file);
+ }
+ }
+ catch (IOException e)
+ {
+ new ErrorDialog(e).setVisible(true);
+ }
+ }
+
private void openMenuItemActionPerformed(ActionEvent evt)
{
try