Class AbstractFileViewPanel<T>
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
org.pushingpixels.radiance.component.api.common.JCommandButtonPanel
org.pushingpixels.radiance.component.api.common.AbstractFileViewPanel<T>
- Type Parameters:
T- Type tag of the underlying data.
- All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Scrollable
Panel that hosts file-related command buttons with progress indication and cancellation
capabilities.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classInformation on the specific file.Nested classes/interfaces inherited from class JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionContains the commands with completely loaded images.private SwingWorker<Void, AbstractFileViewPanel.Leaf> The main worker that loads the images off EDT.private ProgressListenerProgress listener to report back on loaded images.Fields inherited from class JCommandButtonPanel
uiClassIDFields inherited from class JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
ConstructorsConstructorDescriptionAbstractFileViewPanel(Dimension startingDimension) Creates a new panel.AbstractFileViewPanel(CommandButtonPresentationState startingState) Creates a new panel. -
Method Summary
Modifier and TypeMethodDescriptionvoidCancels the pending processing.protected voidconfigureCommand(AbstractFileViewPanel.Leaf leaf, Command command, RadianceIcon icon) Configures the specified command.protected abstract InputStreamgetLeafContent(T leaf) Returns the input stream with the file contents.intReturns the number of loaded icons.protected abstract RadianceIcongetRadianceIcon(AbstractFileViewPanel.Leaf leaf, InputStream stream, CommandButtonPresentationState state, Dimension dimension) Returns the icon for the specified parameters.voidsetFolder(List<BreadcrumbItem<T>> leaves) Sets the current entries to show.voidsetProgressListener(ProgressListener progressListener) protected abstract booleantoShowFile(BreadcrumbItem<T> item) Returns indication whether the specified file should be shown on this panel.Methods inherited from class JCommandButtonPanel
getPreferredScrollableViewportSize, getProjection, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getUI, getUIClassID, scrollToSelectedCommand, updateUIMethods inherited from class JComponent
addAncestorListener, addNotify, 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, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, 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, updateMethods inherited from class Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, 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, validateTreeMethods inherited from class 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, getAccessibleContext, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
progressListener
Progress listener to report back on loaded images. -
loadedSet
-
mainWorker
The main worker that loads the images off EDT.
-
-
Constructor Details
-
AbstractFileViewPanel
Creates a new panel.- Parameters:
startingDimension- Initial dimension for icons.
-
AbstractFileViewPanel
Creates a new panel.- Parameters:
startingState- Initial state for icons.
-
-
Method Details
-
setProgressListener
-
getProgressListener
-
setFolder
Sets the current entries to show. The current contents of the panel are discarded. For each matching entry determined by thetoShowFile(BreadcrumbItem)call, a newJCommandButtonwith matching implementation ofRadianceIconfromgetRadianceIcon(Leaf, InputStream, CommandButtonPresentationState, Dimension)is added to the panel.- Parameters:
leaves- Information on the entries to show in the panel.
-
getLoadedIconCount
public int getLoadedIconCount()Returns the number of loaded icons.- Returns:
- The number of loaded icons.
-
cancelMainWorker
public void cancelMainWorker()Cancels the pending processing. -
toShowFile
Returns indication whether the specified file should be shown on this panel.- Parameters:
item- Information on the file.- Returns:
trueif the specified file should be shown on this panel,falseotherwise.
-
getRadianceIcon
protected abstract RadianceIcon getRadianceIcon(AbstractFileViewPanel.Leaf leaf, InputStream stream, CommandButtonPresentationState state, Dimension dimension) Returns the icon for the specified parameters.- Parameters:
leaf- Information on the file.stream- Input stream with the file contents.state- Icon state.dimension- Icon dimension.- Returns:
- File icon.
-
configureCommand
protected void configureCommand(AbstractFileViewPanel.Leaf leaf, Command command, RadianceIcon icon) Configures the specified command. Can be used to wire additional behavior, such as tooltips or action listeners if the specific panel implementation requires it.- Parameters:
leaf- Information on the file "behind" the command.command- Command to configure.icon- Command icon.
-
getLeafContent
Returns the input stream with the file contents.- Parameters:
leaf- Leaf (file behind a command on this panel).- Returns:
- Input stream with the file contents.
-