public class FileListEditor extends javax.swing.JTable implements FieldEditor, DownloadExternalFile.DownloadCallback
javax.swing.JTable.AccessibleJTable, javax.swing.JTable.DropLocation, javax.swing.JTable.PrintMode
javax.swing.JComponent.AccessibleJComponent
AUTO_RESIZE_ALL_COLUMNS, AUTO_RESIZE_LAST_COLUMN, AUTO_RESIZE_NEXT_COLUMN, AUTO_RESIZE_OFF, AUTO_RESIZE_SUBSEQUENT_COLUMNS, autoCreateColumnsFromModel, autoResizeMode, cellEditor, cellSelectionEnabled, columnModel, dataModel, defaultEditorsByColumnClass, defaultRenderersByColumnClass, editingColumn, editingRow, editorComp, gridColor, preferredViewportSize, rowHeight, rowMargin, rowSelectionAllowed, selectionBackground, selectionForeground, selectionModel, showHorizontalLines, showVerticalLines, tableHeader
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
FileListEditor(JabRefFrame frame,
MetaData metaData,
java.lang.String fieldName,
java.lang.String content,
EntryEditor entryEditor) |
Modifier and Type | Method and Description |
---|---|
void |
addUndoableEditListener(javax.swing.event.UndoableEditListener listener) |
void |
append(java.lang.String text) |
static java.lang.Thread |
autoSetLinks(BibtexEntry entry,
FileListTableModel tableModel,
MetaData metaData,
java.awt.event.ActionListener callback,
javax.swing.JDialog diag)
Automatically add links for this entry to the table model given as an argument, based on
the globally stored list of external file types.
|
static java.lang.Thread |
autoSetLinks(java.util.Collection<BibtexEntry> entries,
NamedCompound ce,
java.util.Set<BibtexEntry> changedEntries,
java.util.ArrayList<java.io.File> dirs)
Automatically add links for this set of entries, based on the globally stored list of
external file types.
|
void |
clearAutoCompleteSuggestion() |
void |
downloadComplete(FileListEntry file)
This is the callback method that the DownloadExternalFile class uses to report the result
of a download operation.
|
java.lang.String |
getFieldName() |
javax.swing.JLabel |
getLabel() |
javax.swing.JComponent |
getPane() |
java.lang.String |
getSelectedText()
normally implemented in JTextArea and JTextField
|
FileListTableModel |
getTableModel() |
java.lang.String |
getText() |
javax.swing.JComponent |
getTextComponent() |
boolean |
hasRedoInformation() |
boolean |
hasUndoInformation() |
void |
paste(java.lang.String textToInsert)
paste text into component, it should also take some selected text into
account
|
void |
redo() |
static java.io.File |
relativizePath(java.io.File f,
java.util.ArrayList<java.io.File> dirs)
If the file is below one of the directories in a list, return a File specifying
a path relative to that directory.
|
void |
setActiveBackgroundColor() |
void |
setAutoCompleteListener(AutoCompleteListener listener) |
void |
setInvalidBackgroundColor() |
void |
setLabelColor(java.awt.Color c) |
void |
setText(java.lang.String newText)
Sets the given text on the current field editor and marks this text
editor as modified.
|
void |
setValidBackgroundColor() |
void |
undo() |
void |
updateFont() |
void |
updateFontColor() |
addColumn, addColumnSelectionInterval, addNotify, addRowSelectionInterval, changeSelection, clearSelection, columnAdded, columnAtPoint, columnMarginChanged, columnMoved, columnRemoved, columnSelectionChanged, configureEnclosingScrollPane, convertColumnIndexToModel, convertColumnIndexToView, convertRowIndexToModel, convertRowIndexToView, createDefaultColumnModel, createDefaultColumnsFromModel, createDefaultDataModel, createDefaultEditors, createDefaultRenderers, createDefaultSelectionModel, createDefaultTableHeader, createScrollPaneForTable, doLayout, editCellAt, editCellAt, editingCanceled, editingStopped, getAccessibleContext, getAutoCreateColumnsFromModel, getAutoCreateRowSorter, getAutoResizeMode, getCellEditor, getCellEditor, getCellRect, getCellRenderer, getCellSelectionEnabled, getColumn, getColumnClass, getColumnCount, getColumnModel, getColumnName, getColumnSelectionAllowed, getDefaultEditor, getDefaultRenderer, getDragEnabled, getDropLocation, getDropMode, getEditingColumn, getEditingRow, getEditorComponent, getFillsViewportHeight, getGridColor, getIntercellSpacing, getModel, getPreferredScrollableViewportSize, getPrintable, getRowCount, getRowHeight, getRowHeight, getRowMargin, getRowSelectionAllowed, getRowSorter, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getSelectedColumn, getSelectedColumnCount, getSelectedColumns, getSelectedRow, getSelectedRowCount, getSelectedRows, getSelectionBackground, getSelectionForeground, getSelectionModel, getShowHorizontalLines, getShowVerticalLines, getSurrendersFocusOnKeystroke, getTableHeader, getToolTipText, getUI, getUIClassID, getUpdateSelectionOnSort, getValueAt, initializeLocalVars, isCellEditable, isCellSelected, isColumnSelected, isEditing, isRowSelected, moveColumn, paramString, prepareEditor, prepareRenderer, print, print, print, print, print, processKeyBinding, removeColumn, removeColumnSelectionInterval, removeEditor, removeNotify, removeRowSelectionInterval, resizeAndRepaint, rowAtPoint, selectAll, setAutoCreateColumnsFromModel, setAutoCreateRowSorter, setAutoResizeMode, setCellEditor, setCellSelectionEnabled, setColumnModel, setColumnSelectionAllowed, setColumnSelectionInterval, setDefaultEditor, setDefaultRenderer, setDragEnabled, setDropMode, setEditingColumn, setEditingRow, setFillsViewportHeight, setGridColor, setIntercellSpacing, setModel, setPreferredScrollableViewportSize, setRowHeight, setRowHeight, setRowMargin, setRowSelectionAllowed, setRowSelectionInterval, setRowSorter, setSelectionBackground, setSelectionForeground, setSelectionMode, setSelectionModel, setShowGrid, setShowHorizontalLines, setShowVerticalLines, setSurrendersFocusOnKeystroke, setTableHeader, setUI, setUpdateSelectionOnSort, setValueAt, sizeColumnsToFit, sizeColumnsToFit, sorterChanged, tableChanged, unconfigureEnclosingScrollPane, updateUI, valueChanged
addAncestorListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getParent, requestFocus, setBackground, setEnabled
public FileListEditor(JabRefFrame frame, MetaData metaData, java.lang.String fieldName, java.lang.String content, EntryEditor entryEditor)
public FileListTableModel getTableModel()
public java.lang.String getFieldName()
getFieldName
in interface FieldEditor
public javax.swing.JComponent getPane()
getPane
in interface FieldEditor
public javax.swing.JComponent getTextComponent()
getTextComponent
in interface FieldEditor
public javax.swing.JLabel getLabel()
getLabel
in interface FieldEditor
public void setLabelColor(java.awt.Color c)
setLabelColor
in interface FieldEditor
public java.lang.String getText()
getText
in interface FieldEditor
public void setText(java.lang.String newText)
FieldEditor
setText
in interface FieldEditor
public void append(java.lang.String text)
append
in interface FieldEditor
public void updateFont()
updateFont
in interface FieldEditor
public void paste(java.lang.String textToInsert)
FieldEditor
paste
in interface FieldEditor
public java.lang.String getSelectedText()
FieldEditor
getSelectedText
in interface FieldEditor
public static java.lang.Thread autoSetLinks(java.util.Collection<BibtexEntry> entries, NamedCompound ce, java.util.Set<BibtexEntry> changedEntries, java.util.ArrayList<java.io.File> dirs)
entries
- A collection of BibtexEntry objects to find links for.ce
- A NamedCompound to add UndoEdit elements to.changedEntries
- A Set of BibtexEntry objects to which all modified entries is added.public static java.lang.Thread autoSetLinks(BibtexEntry entry, FileListTableModel tableModel, MetaData metaData, java.awt.event.ActionListener callback, javax.swing.JDialog diag)
entry
- The BibtexEntry to find links for.tableModel
- The table model to insert links into. Already existing links are not duplicated or removed.metaData
- The MetaData providing the relevant file directory, if any.callback
- An ActionListener that is notified (on the event dispatch thread) when the search is
finished. The ActionEvent has id=0 if no new links were added, and id=1 if one or more links were added.
This parameter can be null, which means that no callback will be notified.diag
- An instantiated modal JDialog which will be used to display the progress of the autosetting.
This parameter can be null, which means that no progress update will be shown.public static java.io.File relativizePath(java.io.File f, java.util.ArrayList<java.io.File> dirs)
public void downloadComplete(FileListEntry file)
downloadComplete
in interface DownloadExternalFile.DownloadCallback
file
- The FileListEntry linking to the resulting local file.public boolean hasUndoInformation()
hasUndoInformation
in interface FieldEditor
public void undo()
undo
in interface FieldEditor
public boolean hasRedoInformation()
hasRedoInformation
in interface FieldEditor
public void redo()
redo
in interface FieldEditor
public void addUndoableEditListener(javax.swing.event.UndoableEditListener listener)
addUndoableEditListener
in interface FieldEditor
public void setAutoCompleteListener(AutoCompleteListener listener)
setAutoCompleteListener
in interface FieldEditor
public void clearAutoCompleteSuggestion()
clearAutoCompleteSuggestion
in interface FieldEditor
public void setActiveBackgroundColor()
setActiveBackgroundColor
in interface FieldEditor
public void setValidBackgroundColor()
setValidBackgroundColor
in interface FieldEditor
public void setInvalidBackgroundColor()
setInvalidBackgroundColor
in interface FieldEditor
public void updateFontColor()
updateFontColor
in interface FieldEditor