Package org.eclipse.draw2d.parts

# Class ScrollableThumbnail

java.lang.Object
org.eclipse.draw2d.Figure
org.eclipse.draw2d.parts.Thumbnail
org.eclipse.draw2d.parts.ScrollableThumbnail

All Implemented Interfaces:
  `IFigure`, `UpdateListener`

public class ScrollableThumbnail extends Thumbnail
A scaled image representation of a Figure. If the source Figure is not completely visible, a SelectorFigure is placed over the thumbnail representing the viewable area and can be dragged around to scroll the source figure.

## Nested Class Summary

## Nested classes/interfaces inherited from class org.eclipse.draw2d.Figure

`Figure.FigureIterator, Figure.IdentitySearch, Figure.ReverseFigureChildrenIterator`

## Nested classes/interfaces inherited from interface org.eclipse.draw2d.IFigure

`IFigure.NoInsets`

## Nested classes/interfaces inherited from interface org.eclipse.draw2d.UpdateListener

`UpdateListener.Stub`

## Field Summary

### Fields inherited from class org.eclipse.draw2d.Figure

`bgColor, border, bounds, fgColor, flags, font, MAX_FLAG, maxSize, minSize, NO_MANAGER, prefSize, toolTip`

### Fields inherited from interface org.eclipse.draw2d.IFigure

`MAX_DIMENSION, MIN_DIMENSION, NO_INSETS`

## Constructor Summary

Constructors
Constructor
Description
`ScrollableThumbnail()`
Creates a new ScrollableThumbnail.
`ScrollableThumbnail(Viewport port)`
Creates a new ScrollableThumbnail that synchs with the given Viewport.

## Method Summary

Modifier and Type
Method
Description
`protected Rectangle`
`calculateSelectorBounds()`
Calculate the size and position of the selector Subclasses may override if they only want to show parts of the overall viewport.
`void`
`deactivate()`
Deactivates this Thumbnail.
`final Viewport`
`getViewport()`
Get the viewport used for this ScrollableThumbnail
`protected double`
`getViewportScaleX()`
Calculate the scale factor in x direction to be used between viewport and thumbnail.
`protected double`
`getViewportScaleY()`
Calculate the scale factor in y direction to be used between viewport and thumbnail.
`protected void`
`setScales(float scaleX, float scaleY)`
Reconfigures the SelectorFigure's bounds if the scales have changed.
`void`
`setViewport(Viewport port)`
Sets the Viewport that this ScrollableThumbnail will synch with.

### Methods inherited from class org.eclipse.draw2d.parts.Thumbnail

`getPreferredSize, getScaleX, getScaleY, getSource, getSourceRectangle, getTargetSize, getThumbnailImage, isDirty, notifyPainting, notifyValidating, paintFigure, setDirty, setRefreshRate, setSource`

### Methods inherited from class org.eclipse.draw2d.Figure

`add, add, add, add, addAncestorListener, addCoordinateListener, addFigureListener, addFocusListener, addKeyListener, addLayoutListener, addListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, containsPoint, containsPoint, erase, findDescendantAtExcluding, findFigureAt, findFigureAt, findFigureAt, findFigureAtExcluding, findMouseEventTargetAt, findMouseEventTargetInDescendantsAt, fireCoordinateSystemChanged, fireFigureMoved, fireMoved, firePropertyChange, firePropertyChange, firePropertyChange, getBackgroundColor, getBorder, getBounds, getChildren, getChildrenRevIterable, getClientArea, getClientArea, getClippingStrategy, getCursor, getFlag, getFont, getForegroundColor, getInsets, getLayoutManager, getListeners, getListenersIterable, getLocalBackgroundColor, getLocalFont, getLocalForegroundColor, getLocation, getMaximumSize, getMinimumSize, getMinimumSize, getParent, getPreferredSize, getSize, getToolTip, getUpdateManager, handleFocusGained, handleFocusLost, handleKeyPressed, handleKeyReleased, handleMouseDoubleClicked, handleMouseDragged, handleMouseEntered, handleMouseExited, handleMouseHover, handleMouseMoved, handleMousePressed, handleMouseReleased, handleMouseWheelScrolled, hasFocus, internalGetEventDispatcher, intersects, invalidate, invalidateTree, isCoordinateSystem, isEnabled, isFocusTraversable, isMirrored, isMouseEventTarget, isOpaque, isRequestFocusEnabled, isShowing, isValid, isValidationRoot, isVisible, layout, optimizeClip, paint, paintBorder, paintChildren, paintClientArea, primTranslate, remove, removeAll, removeAncestorListener, removeCoordinateListener, removeFigureListener, removeFocusListener, removeKeyListener, removeLayoutListener, removeListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, revalidate, setBackgroundColor, setBorder, setBounds, setChildrenDirection, setChildrenEnabled, setChildrenOrientation, setClippingStrategy, setConstraint, setCursor, setEnabled, setFlag, setFocusTraversable, setFont, setForegroundColor, setLayoutManager, setLocation, setMaximumSize, setMinimumSize, setOpaque, setParent, setPreferredSize, setPreferredSize, setRequestFocusEnabled, setSize, setSize, setToolTip, setValid, setVisible, translate, translateFromParent, translateToAbsolute, translateToParent, translateToRelative, useLocalCoordinates, validate`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ScrollableThumbnail

public ScrollableThumbnail()
Creates a new ScrollableThumbnail.

### ScrollableThumbnail

public ScrollableThumbnail(Viewport port)
Creates a new ScrollableThumbnail that synchs with the given Viewport.

Parameters:
  `port` - The Viewport

## Method Details

### deactivate

public void deactivate()
Description copied from class: `Thumbnail`
Deactivates this Thumbnail.

Overrides:
  `deactivate` in class `Thumbnail`
See Also:
  - `Thumbnail.deactivate()`

### getViewport

public final Viewport getViewport()
Get the viewport used for this ScrollableThumbnail

Returns:
  the viewport
Since:
  3.14

### getViewportScaleX

protected double getViewportScaleX()
Calculate the scale factor in x direction to be used between viewport and thumbnail. Subclasses may override if they only want to show parts of the overall viewport.

Returns:
  the viewport scale factor for X
Since:
  3.14

### getViewportScaleY

protected double getViewportScaleY()
Calculate the scale factor in y direction to be used between viewport and thumbnail. Subclasses may override if they only want to show parts of the overall viewport.

Returns:
  the viewport scale factor for Y
Since:
  3.14

### calculateSelectorBounds

protected Rectangle calculateSelectorBounds()
Calculate the size and position of the selector Subclasses may override if they only want to show parts of the overall viewport. Especially the offset calculation may need to be adjusted.

Since:
  3.14

### setScales

protected void setScales(float scaleX, float scaleY)
Reconfigures the SelectorFigure's bounds if the scales have changed.

Overrides:
  `setScales` in class `Thumbnail`
Parameters:
  `scaleX` - The X scale
  `scaleY` - The Y scale
See Also:
  - `Thumbnail.setScales(float, float)`

### setViewport

public void setViewport(Viewport port)
Sets the Viewport that this ScrollableThumbnail will synch with.

Parameters:
  `port` - The Viewport