com.alee.extended.filechooser
Class WebFileTable

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JTable
                  extended by com.alee.laf.table.WebTable
                      extended by com.alee.extended.filechooser.WebFileTable
All Implemented Interfaces:
WebFileTableColumns, FontMethods<WebTable>, SwingMethods, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.CellEditorListener, javax.swing.event.ListSelectionListener, javax.swing.event.RowSorterListener, javax.swing.event.TableColumnModelListener, javax.swing.event.TableModelListener, javax.swing.Scrollable

public class WebFileTable
extends WebTable
implements WebFileTableColumns

File table component. It can either display specified folder content or custom list of files.

Author:
Mikle Garin
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JTable
javax.swing.JTable.AccessibleJTable, javax.swing.JTable.DropLocation, javax.swing.JTable.PrintMode
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class javax.swing.JTable
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
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface com.alee.extended.filechooser.WebFileTableColumns
COLUMN_PREFIX, CREATION_DATE_COLUMN, DEFAULT_COLUMNS, EXTENSION_COLUMN, MODIFICATION_DATE_COLUMN, NAME_COLUMN, NUMBER_COLUMN, SIZE_COLUMN
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
WebFileTable()
          Constructs empty WebFileTable.
 
Method Summary
 void addFiles(java.util.Collection<java.io.File> files)
          Adds displayed files.
 boolean editFileName(java.io.File file)
          Starts editing specified file name.
 boolean editFileNameAt(int row)
          Starts editing file name at the specified row.
 boolean editSelectedFileName()
          Starts editing selected file name.
 java.io.File getDisplayedDirectory()
          Returns displayed directory.
 AbstractFileFilter getFileFilter()
          Returns file filter.
 WebFileTableModel getFileTableModel()
          Returns specific for WebFileTable model.
 java.io.File getSelectedFile()
          Returns selected file.
 java.util.List<java.io.File> getSelectedFiles()
          Returns list of selected files.
 boolean isColumnDisplayed(java.lang.String column)
          Returns whether the specified column is displayed or not.
 void reloadFiles()
          Reloads files from displayed directory.
 void setColumns(java.util.List<java.lang.String> columns)
          Sets displayed column ids list.
 void setColumns(java.lang.String... columns)
          Sets displayed column ids.
 void setDisplayedDirectory(java.io.File file)
          Sets displayed directory.
 void setFileFilter(AbstractFileFilter fileFilter)
          Sets file filter.
 void setFiles(java.util.Collection<java.io.File> files)
          Sets displayed files.
 void setSelectedFile(java.io.File file)
          Sets selected file.
 void setSelectedFile(java.io.File file, boolean shouldScroll)
          Sets selected file.
 void setSelectedFiles(java.util.Collection<java.io.File> files)
          Sets selected files
 void setSelectedFiles(java.io.File[] files)
          Sets selected files
 
Methods inherited from class com.alee.laf.table.WebTable
addSelectedColumn, addSelectedColumns, addSelectedRow, addSelectedRows, changeFontSize, editCellAt, getFontName, getFontSize, getPreferredScrollableViewportSize, getVisibleRowCount, getWebUI, initializeLocalVars, isBoldFont, isCellEditable, isEditable, isItalicFont, isPlainFont, scrollToColumn, scrollToRow, setBoldFont, setBoldFont, setEditable, setFontName, setFontSize, setFontSizeAndStyle, setFontSizeAndStyle, setFontStyle, setFontStyle, setItalicFont, setItalicFont, setPlainFont, setPlainFont, setSelectedColumn, setSelectedColumn, setSelectedColumns, setSelectedRow, setSelectedRow, setSelectedRows, setVisibleRowCount, stopCellEditing, updateUI
 
Methods inherited from class javax.swing.JTable
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, 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, 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, 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, valueChanged
 
Methods inherited from class javax.swing.JComponent
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, 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
 
Methods inherited from class java.awt.Container
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, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
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, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

WebFileTable

public WebFileTable()
Constructs empty WebFileTable.

Method Detail

getFileTableModel

public WebFileTableModel getFileTableModel()
Returns specific for WebFileTable model.

Returns:
specific for WebFileTable model

getFileFilter

public AbstractFileFilter getFileFilter()
Returns file filter.

Returns:
file filter

setFileFilter

public void setFileFilter(AbstractFileFilter fileFilter)
Sets file filter.

Parameters:
fileFilter - new file filter

reloadFiles

public void reloadFiles()
Reloads files from displayed directory.


getDisplayedDirectory

public java.io.File getDisplayedDirectory()
Returns displayed directory. Returned File might be null in case custom files list was set or no data is loaded into list yet.

Returns:
displayed directory

setDisplayedDirectory

public void setDisplayedDirectory(java.io.File file)
Sets displayed directory. This will force list to load and display files from the specified directory.

Parameters:
file - new displayed directory

setFiles

public void setFiles(java.util.Collection<java.io.File> files)
Sets displayed files.

Parameters:
files - files to display

addFiles

public void addFiles(java.util.Collection<java.io.File> files)
Adds displayed files.

Parameters:
files - files to display

setColumns

public void setColumns(java.lang.String... columns)
Sets displayed column ids.

Parameters:
columns - displayed column ids

setColumns

public void setColumns(java.util.List<java.lang.String> columns)
Sets displayed column ids list.

Parameters:
columns - displayed column ids list

getSelectedFile

public java.io.File getSelectedFile()
Returns selected file.

Returns:
selected file

getSelectedFiles

public java.util.List<java.io.File> getSelectedFiles()
Returns list of selected files.

Returns:
list of selected files

setSelectedFile

public void setSelectedFile(java.io.File file)
Sets selected file.

Parameters:
file - file to select

setSelectedFile

public void setSelectedFile(java.io.File file,
                            boolean shouldScroll)
Sets selected file.

Parameters:
file - file to select

setSelectedFiles

public void setSelectedFiles(java.io.File[] files)
Sets selected files

Parameters:
files - files to select

isColumnDisplayed

public boolean isColumnDisplayed(java.lang.String column)
Returns whether the specified column is displayed or not.

Parameters:
column - column to process
Returns:
true if the specified column is displayed, false otherwise

setSelectedFiles

public void setSelectedFiles(java.util.Collection<java.io.File> files)
Sets selected files

Parameters:
files - files to select

editSelectedFileName

public boolean editSelectedFileName()
Starts editing selected file name.

Returns:
true if cell editing started, false otherwise

editFileName

public boolean editFileName(java.io.File file)
Starts editing specified file name.

Parameters:
file - file to edit
Returns:
true if cell editing started, false otherwise

editFileNameAt

public boolean editFileNameAt(int row)
Starts editing file name at the specified row.

Parameters:
row - file row
Returns:
true if cell editing started, false otherwise