lhmc.gui.thumbnailsbrowser
Class ThumbnailsBrowser

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JScrollPane
                  extended by lhmc.gui.thumbnailsbrowser.ThumbnailsBrowser
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.ScrollPaneConstants

public class ThumbnailsBrowser
extends javax.swing.JScrollPane

ThumbnailsBrowser its a JScrollPane that contains thumbnails corresponding to the files in a especified directory.

Version:
0.01 20 Jun 2007
Author:
Cristina Roura Claver
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JScrollPane
javax.swing.JScrollPane.AccessibleJScrollPane, javax.swing.JScrollPane.ScrollBar
 
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
protected  javax.swing.JPanel focusedThumbnailPanel
           
protected  LHMCGUI mainFrame
           
protected  PluginFactory pluginFactory
           
protected  java.net.URL selectedThumbnail
           
protected  ThumbnailFacade thumbnailFacade
           
 
Fields inherited from class javax.swing.JScrollPane
columnHeader, horizontalScrollBar, horizontalScrollBarPolicy, lowerLeft, lowerRight, rowHeader, upperLeft, upperRight, verticalScrollBar, verticalScrollBarPolicy, viewport
 
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 javax.swing.ScrollPaneConstants
COLUMN_HEADER, HORIZONTAL_SCROLLBAR, HORIZONTAL_SCROLLBAR_ALWAYS, HORIZONTAL_SCROLLBAR_AS_NEEDED, HORIZONTAL_SCROLLBAR_NEVER, HORIZONTAL_SCROLLBAR_POLICY, LOWER_LEADING_CORNER, LOWER_LEFT_CORNER, LOWER_RIGHT_CORNER, LOWER_TRAILING_CORNER, ROW_HEADER, UPPER_LEADING_CORNER, UPPER_LEFT_CORNER, UPPER_RIGHT_CORNER, UPPER_TRAILING_CORNER, VERTICAL_SCROLLBAR, VERTICAL_SCROLLBAR_ALWAYS, VERTICAL_SCROLLBAR_AS_NEEDED, VERTICAL_SCROLLBAR_NEVER, VERTICAL_SCROLLBAR_POLICY, VIEWPORT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
ThumbnailsBrowser(java.net.URL rootFile, java.io.FileFilter fileFilter, PluginFactory pluginFactory, LHMCGUI mainFrame)
          Constructs the thumbanail browser panel.
ThumbnailsBrowser(java.net.URL rootFile, java.net.URL[] initialRemovableFiles, java.io.FileFilter fileFilter, PluginFactory pluginFactory, LHMCGUI mainFrame)
          Constructs the thumbanail browser panel for removable devices.
 
Method Summary
 void createFilesPanel(java.net.URL rootFile, int urlType)
          Creates a panel of thumbnails.
 int getActualFilesystemLocation()
          Gets the actual filesystem location
 java.net.URL getActualRoot()
          Gets current directory.
 javax.swing.JPanel getFocusedThumbnailPanel()
          Returns the current focused Thumbnail.
 java.net.URL getInitialRoot()
          Gets the initial root directory.
 java.net.URL getSelectedThumbnail()
          Gets the URL file of the selected thumbnail.
 java.util.Vector<java.net.URL> getSelectedThumbnails()
          Gets a vector of URL files from the selected thumbnails.
 void setActualRoot(java.net.URL root)
          Sets current directory.
 void setInitialRoot(java.net.URL root)
          Sets the initial root directory.
 void setUsbDevices(java.net.URL[] usbDevices)
          Sets the removible devices directories.
 
Methods inherited from class javax.swing.JScrollPane
createHorizontalScrollBar, createVerticalScrollBar, createViewport, getAccessibleContext, getColumnHeader, getCorner, getHorizontalScrollBar, getHorizontalScrollBarPolicy, getRowHeader, getUI, getUIClassID, getVerticalScrollBar, getVerticalScrollBarPolicy, getViewport, getViewportBorder, getViewportBorderBounds, isValidateRoot, isWheelScrollingEnabled, paramString, setColumnHeader, setColumnHeaderView, setComponentOrientation, setCorner, setHorizontalScrollBar, setHorizontalScrollBarPolicy, setLayout, setRowHeader, setRowHeaderView, setUI, setVerticalScrollBar, setVerticalScrollBarPolicy, setViewport, setViewportBorder, setViewportView, setWheelScrollingEnabled, updateUI
 
Methods inherited from class javax.swing.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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, 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, update
 
Methods inherited from class java.awt.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, 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, 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
 

Field Detail

selectedThumbnail

protected java.net.URL selectedThumbnail

thumbnailFacade

protected ThumbnailFacade thumbnailFacade

pluginFactory

protected PluginFactory pluginFactory

mainFrame

protected LHMCGUI mainFrame

focusedThumbnailPanel

protected javax.swing.JPanel focusedThumbnailPanel
Constructor Detail

ThumbnailsBrowser

public ThumbnailsBrowser(java.net.URL rootFile,
                         java.io.FileFilter fileFilter,
                         PluginFactory pluginFactory,
                         LHMCGUI mainFrame)
Constructs the thumbanail browser panel.

Parameters:
rootFile - the current directory to browse.
fileFilter - the file filter to apply if the all files are from the same kind.
pluginFactory - the pluginFactory to instance plugins.
mainFrame - the mainFrame of the application.

ThumbnailsBrowser

public ThumbnailsBrowser(java.net.URL rootFile,
                         java.net.URL[] initialRemovableFiles,
                         java.io.FileFilter fileFilter,
                         PluginFactory pluginFactory,
                         LHMCGUI mainFrame)
Constructs the thumbanail browser panel for removable devices.

Parameters:
rootFile - the current directory to browse.
initialRemovableFiles - url file array of removable devices.
fileFilter - the file filter to apply if the all files are from the same kind.
pluginFactory - the pluginFactory to instance plugins.
mainFrame - the mainFrame of the application.
Method Detail

getSelectedThumbnail

public java.net.URL getSelectedThumbnail()
Gets the URL file of the selected thumbnail.

Returns:
The url file correspondig to the thumbnail.

getActualRoot

public java.net.URL getActualRoot()
Gets current directory.

Returns:
The URL file of the actual root.

setActualRoot

public void setActualRoot(java.net.URL root)
Sets current directory.

Parameters:
root - The url file of the actual root.

setInitialRoot

public void setInitialRoot(java.net.URL root)
Sets the initial root directory.

Parameters:
root - The url file of the new root directory.

getInitialRoot

public java.net.URL getInitialRoot()
Gets the initial root directory.

Returns:
The url file of the root directory.

setUsbDevices

public void setUsbDevices(java.net.URL[] usbDevices)
Sets the removible devices directories.

Parameters:
usbDevices - The url files of the removible devices.

getSelectedThumbnails

public java.util.Vector<java.net.URL> getSelectedThumbnails()
Gets a vector of URL files from the selected thumbnails.

Returns:
The url files vector correspondig to the selected thumbnails.

getActualFilesystemLocation

public int getActualFilesystemLocation()
Gets the actual filesystem location

Returns:
The actual filesystem location.

createFilesPanel

public void createFilesPanel(java.net.URL rootFile,
                             int urlType)
Creates a panel of thumbnails. Each thumbnail corresponds to a directory, a file or a back image.

Parameters:
rootFile - The current directory.
urlType - the type of url.

getFocusedThumbnailPanel

public javax.swing.JPanel getFocusedThumbnailPanel()
Returns the current focused Thumbnail.

Returns:
The focused thumbnail panel.