diff --git a/src/main/java/net/sf/jabref/gui/FileListEntryEditor.java b/src/main/java/net/sf/jabref/gui/FileListEntryEditor.java index a20d9bb9d0a..a15a25986a4 100644 --- a/src/main/java/net/sf/jabref/gui/FileListEntryEditor.java +++ b/src/main/java/net/sf/jabref/gui/FileListEntryEditor.java @@ -58,7 +58,6 @@ * label that can be hidden when the download is complete. */ public class FileListEntryEditor { - private static final Log LOGGER = LogFactory.getLog(FileListEntryEditor.class); private JDialog diag; @@ -334,7 +333,6 @@ public boolean okPressed() { } - private final ActionListener browsePressed = e -> { String filePath = link.getText().trim(); Optional file = FileUtil.expandFilename(this.databaseContext, filePath); diff --git a/src/main/java/net/sf/jabref/gui/UrlDragDrop.java b/src/main/java/net/sf/jabref/gui/UrlDragDrop.java deleted file mode 100644 index 63011214ad3..00000000000 --- a/src/main/java/net/sf/jabref/gui/UrlDragDrop.java +++ /dev/null @@ -1,209 +0,0 @@ -package net.sf.jabref.gui; - -import java.awt.datatransfer.DataFlavor; -import java.awt.datatransfer.Transferable; -import java.awt.datatransfer.UnsupportedFlavorException; -import java.awt.dnd.DnDConstants; -import java.awt.dnd.DropTargetDragEvent; -import java.awt.dnd.DropTargetDropEvent; -import java.awt.dnd.DropTargetEvent; -import java.awt.dnd.DropTargetListener; -import java.io.File; -import java.io.IOException; -import java.net.URL; -import java.util.List; - -import javax.swing.JOptionPane; - -import net.sf.jabref.Globals; -import net.sf.jabref.gui.entryeditor.EntryEditor; -import net.sf.jabref.gui.fieldeditors.FieldEditor; -import net.sf.jabref.gui.net.MonitoredURLDownload; -import net.sf.jabref.logic.l10n.Localization; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * @author Erik Putrycz erik.putrycz-at-nrc-cnrc.gc.ca - */ - -public class UrlDragDrop implements DropTargetListener { - - private static final Log LOGGER = LogFactory.getLog(UrlDragDrop.class); - - private final FieldEditor feditor; - - private final EntryEditor editor; - - private final JabRefFrame frame; - - - public UrlDragDrop(final EntryEditor editor, final JabRefFrame frame, final FieldEditor feditor) { - this.editor = editor; - this.feditor = feditor; - this.frame = frame; - } - - /* - * (non-Javadoc) - * - * @see java.awt.dnd.DropTargetListener#dragEnter(java.awt.dnd.DropTargetDragEvent) - */ - @Override - public void dragEnter(DropTargetDragEvent dtde) { - // Do nothing - } - - /* - * (non-Javadoc) - * - * @see java.awt.dnd.DropTargetListener#dragOver(java.awt.dnd.DropTargetDragEvent) - */ - @Override - public void dragOver(DropTargetDragEvent dtde) { - // Do nothing - } - - /* - * (non-Javadoc) - * - * @see java.awt.dnd.DropTargetListener#dropActionChanged(java.awt.dnd.DropTargetDragEvent) - */ - @Override - public void dropActionChanged(DropTargetDragEvent dtde) { - // Do nothing - } - - /* - * (non-Javadoc) - * - * @see java.awt.dnd.DropTargetListener#dragExit(java.awt.dnd.DropTargetEvent) - */ - @Override - public void dragExit(DropTargetEvent dte) { - // Do nothing - } - - - private static class JOptionChoice { - - private final String label; - - private final int id; - - - public JOptionChoice(final String label, final int id) { - this.label = label; - this.id = id; - } - - @Override - public String toString() { - return label; - } - - public int getId() { - return id; - } - - } - - - /* - * (non-Javadoc) - * - * @see java.awt.dnd.DropTargetListener#drop(java.awt.dnd.DropTargetDropEvent) - */ - - @Override - public void drop(DropTargetDropEvent dtde) { - Transferable tsf = dtde.getTransferable(); - dtde.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE); - //try with an URL - DataFlavor dtURL = null; - try { - dtURL = new DataFlavor("application/x-java-url; class=java.net.URL"); - } catch (ClassNotFoundException e) { - LOGGER.warn("Could not find DropTargetDropEvent class.", e); - } - try { - URL url = (URL) tsf.getTransferData(dtURL); - JOptionChoice res = (JOptionChoice) JOptionPane - .showInputDialog(editor, "", - Localization.lang("Select action"), - JOptionPane.QUESTION_MESSAGE, null, - new JOptionChoice[] { - new JOptionChoice( - Localization.lang("Insert URL"), 0), - new JOptionChoice( - Localization.lang("Download file"), 1)}, - new JOptionChoice(Localization.lang("Insert URL"), 0)); - if (res != null) { - switch (res.getId()) { - //insert URL - case 0: - feditor.setText(url.toString()); - editor.updateField(feditor); - break; - //download file - case 1: - try { - //auto filename: - File file = new File(new File(Globals.prefs.get("pdfDirectory")), - editor.getEntry().getCiteKey() + ".pdf"); - frame.output(Localization.lang("Downloading...")); - MonitoredURLDownload.buildMonitoredDownload(editor, url).downloadToFile(file); - frame.output(Localization.lang("Download completed")); - feditor.setText(file.toURI().toURL().toString()); - editor.updateField(feditor); - - } catch (IOException ioex) { - LOGGER.error("Error while downloading file.", ioex); - JOptionPane.showMessageDialog(editor, Localization.lang("File download"), - Localization.lang("Error while downloading file:" + ioex.getMessage()), - JOptionPane.ERROR_MESSAGE); - } - break; - default: - LOGGER.warn("Unknown selection (should not happen)"); - break; - } - } - return; - } catch (UnsupportedFlavorException nfe) { - // not an URL then... - LOGGER.warn("Could not parse URL.", nfe); - } catch (IOException ioex) { - LOGGER.warn("Could not perform drag and drop.", ioex); - } - - try { - //try with a File List - @SuppressWarnings("unchecked") - List filelist = (List) tsf - .getTransferData(DataFlavor.javaFileListFlavor); - if (filelist.size() > 1) { - JOptionPane - .showMessageDialog(editor, - Localization.lang("Only one item is supported"), - Localization.lang("Drag and Drop Error"), - JOptionPane.ERROR_MESSAGE); - return; - } - File fl = filelist.get(0); - feditor.setText(fl.toURI().toURL().toString()); - editor.updateField(feditor); - - } catch (UnsupportedFlavorException nfe) { - JOptionPane.showMessageDialog(editor, - Localization.lang("Operation not supported"), - Localization.lang("Drag and Drop Error"), JOptionPane.ERROR_MESSAGE); - LOGGER.warn("Could not perform drag and drop.", nfe); - } catch (IOException ioex) { - LOGGER.warn("Could not perform drag and drop.", ioex); - } - - } - -} diff --git a/src/main/java/net/sf/jabref/gui/entryeditor/EntryEditor.java b/src/main/java/net/sf/jabref/gui/entryeditor/EntryEditor.java index 8e097658395..f87f5d972b4 100644 --- a/src/main/java/net/sf/jabref/gui/entryeditor/EntryEditor.java +++ b/src/main/java/net/sf/jabref/gui/entryeditor/EntryEditor.java @@ -502,8 +502,6 @@ public Optional getExtra(final FieldEditor editor) { getStoreFieldAction()); } else if (!panel.getBibDatabaseContext().getMetaData().getContentSelectors(fieldName).isEmpty()) { return FieldExtraComponents.getSelectorExtraComponent(frame, panel, editor, contentSelectors, getStoreFieldAction()); - } else if (fieldExtras.contains(FieldProperties.URL)) { - return FieldExtraComponents.getURLExtraComponent(editor, getStoreFieldAction()); } else if (fieldExtras.contains(FieldProperties.DOI)) { return FieldExtraComponents.getDoiExtraComponent(panel, this, editor); } else if (fieldExtras.contains(FieldProperties.EPRINT)) { diff --git a/src/main/java/net/sf/jabref/gui/entryeditor/FieldExtraComponents.java b/src/main/java/net/sf/jabref/gui/entryeditor/FieldExtraComponents.java index fffa9fc0243..b10cef2a9f8 100644 --- a/src/main/java/net/sf/jabref/gui/entryeditor/FieldExtraComponents.java +++ b/src/main/java/net/sf/jabref/gui/entryeditor/FieldExtraComponents.java @@ -397,21 +397,6 @@ public static Optional getSetOwnerExtraComponent(FieldEditor fieldEd } - /** - * Set up a drop target for URLs for fields with EXTRA_URL - * - * @param fieldEditor - * @param storeFieldAction - * @return - */ - public static Optional getURLExtraComponent(FieldEditor fieldEditor, - StoreFieldAction storeFieldAction) { - ((JComponent) fieldEditor).setDropTarget(new DropTarget((Component) fieldEditor, DnDConstants.ACTION_NONE, - new SimpleUrlDragDrop(fieldEditor, storeFieldAction))); - - return Optional.empty(); - } - /** * Return a button opening a content selector for fields where one exists * diff --git a/src/main/java/net/sf/jabref/gui/entryeditor/SimpleUrlDragDrop.java b/src/main/java/net/sf/jabref/gui/entryeditor/SimpleUrlDragDrop.java deleted file mode 100644 index 0c0a479b2c8..00000000000 --- a/src/main/java/net/sf/jabref/gui/entryeditor/SimpleUrlDragDrop.java +++ /dev/null @@ -1,113 +0,0 @@ -package net.sf.jabref.gui.entryeditor; - -import java.awt.Component; -import java.awt.datatransfer.DataFlavor; -import java.awt.datatransfer.Transferable; -import java.awt.datatransfer.UnsupportedFlavorException; -import java.awt.dnd.DnDConstants; -import java.awt.dnd.DropTargetDragEvent; -import java.awt.dnd.DropTargetDropEvent; -import java.awt.dnd.DropTargetEvent; -import java.awt.dnd.DropTargetListener; -import java.awt.event.ActionEvent; -import java.io.IOException; -import java.net.URL; - -import javax.swing.JOptionPane; - -import net.sf.jabref.gui.fieldeditors.FieldEditor; -import net.sf.jabref.logic.l10n.Localization; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * @author Erik Putrycz erik.putrycz-at-nrc-cnrc.gc.ca - */ - -class SimpleUrlDragDrop implements DropTargetListener { - private static final Log LOGGER = LogFactory.getLog(SimpleUrlDragDrop.class); - - private final FieldEditor editor; - - private final EntryEditor.StoreFieldAction storeFieldAction; - - - public SimpleUrlDragDrop(FieldEditor editor, EntryEditor.StoreFieldAction storeFieldAction) { - this.editor = editor; - this.storeFieldAction = storeFieldAction; - } - - /* - * (non-Javadoc) - * - * @see java.awt.dnd.DropTargetListener#dragEnter(java.awt.dnd.DropTargetDragEvent) - */ - @Override - public void dragEnter(DropTargetDragEvent dtde) { - // Ignored - } - - /* - * (non-Javadoc) - * - * @see java.awt.dnd.DropTargetListener#dragOver(java.awt.dnd.DropTargetDragEvent) - */ - @Override - public void dragOver(DropTargetDragEvent dtde) { - // Ignored - } - - /* - * (non-Javadoc) - * - * @see java.awt.dnd.DropTargetListener#dropActionChanged(java.awt.dnd.DropTargetDragEvent) - */ - @Override - public void dropActionChanged(DropTargetDragEvent dtde) { - // Ignored - } - - /* - * (non-Javadoc) - * - * @see java.awt.dnd.DropTargetListener#dragExit(java.awt.dnd.DropTargetEvent) - */ - @Override - public void dragExit(DropTargetEvent dte) { - // Ignored - } - - /* - * (non-Javadoc) - * - * @see java.awt.dnd.DropTargetListener#drop(java.awt.dnd.DropTargetDropEvent) - */ - @Override - public void drop(DropTargetDropEvent event) { - Transferable tsf = event.getTransferable(); - event.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE); - //try with an URL - DataFlavor dataFlavor = null; - try { - dataFlavor = new DataFlavor("application/x-java-url; class=java.net.URL"); - } catch (ClassNotFoundException e) { - LOGGER.warn("Could not find DropTargetDropEvent class", e); - } - try { - URL url = (URL) tsf.getTransferData(dataFlavor); - //insert URL - editor.setText(url.toString()); - storeFieldAction.actionPerformed(new ActionEvent(editor, 0, "")); - } catch (UnsupportedFlavorException nfe) { - // if not an URL - JOptionPane.showMessageDialog((Component) editor, - Localization.lang("Operation not supported"), - Localization.lang("Drag and Drop Error"), JOptionPane.ERROR_MESSAGE); - LOGGER.warn("Could not perform drage and drop", nfe); - } catch (IOException ioex) { - LOGGER.warn("Could not perform drage and drop", ioex); - } - } - -} \ No newline at end of file diff --git a/src/main/java/net/sf/jabref/model/entry/FieldProperties.java b/src/main/java/net/sf/jabref/model/entry/FieldProperties.java index 3109996c9d9..1f9d972d146 100644 --- a/src/main/java/net/sf/jabref/model/entry/FieldProperties.java +++ b/src/main/java/net/sf/jabref/model/entry/FieldProperties.java @@ -5,7 +5,6 @@ public enum FieldProperties { YES_NO, - URL, DATE, JOURNAL_NAME, EXTERNAL,