Class Viewport

java.lang.Object
org.eclipse.draw2d.Figure
org.eclipse.draw2d.Viewport
All Implemented Interfaces:
PropertyChangeListener, EventListener, IFigure
Direct Known Subclasses:
FreeformViewport

public class Viewport extends Figure implements PropertyChangeListener
A Viewport is a flexible window onto a ScrollPane and represents the visible portion of the ScrollPane.
  • Field Details

    • PROPERTY_VIEW_LOCATION

      public static final String PROPERTY_VIEW_LOCATION
      ID for the view location property
      See Also:
  • Constructor Details

    • Viewport

      public Viewport()
      Constructs a new Viewport with the default values.
    • Viewport

      public Viewport(boolean setting)
      Constructs a new Viewport. If setting is true, the viewport will use graphics translation to paint.
      Parameters:
      setting - whether to use graphics translation
  • Method Details

    • getClientArea

      public Rectangle getClientArea(Rectangle rect)
      Description copied from interface: IFigure
      Copies the client area into the specificied Recangle, and returns that rectangle for convenience.
      Specified by:
      getClientArea in interface IFigure
      Overrides:
      getClientArea in class Figure
      Parameters:
      rect - The destination rectangle for the client area
      Returns:
      The same instance that was passed in, modified to contain the client area
      See Also:
    • getContents

      public IFigure getContents()
      Returns the view, which is the contents of the ScrollPane associated with this Viewport.
      Returns:
      the contents
      Since:
      2.0
    • getHorizontalRangeModel

      public RangeModel getHorizontalRangeModel()
      Returns the RangeModel associated with the horizontal motion of this Viewport
      Returns:
      the RangeModel
      Since:
      2.0
    • getContentsTracksHeight

      public boolean getContentsTracksHeight()
      Returns true if the Viewport resizes itself in the vertical direction when the available height of its view is decreased, false otherwise. This option is turned off by default, and can be activated by calling setContentsTracksHeight(boolean) and passing in true.
      Returns:
      whether the contents tracks height
      Since:
      2.0
    • getContentsTracksWidth

      public boolean getContentsTracksWidth()
      Returns true if the Viewport resizes itself in the horizontal direction when the available width of its view is decreased, false otherwise. This option is turned off by default, and can be activated by calling setContentsTracksWidth(boolean) and passing in true.
      Returns:
      whether the contents tracks width
      Since:
      2.0
    • getVerticalRangeModel

      public RangeModel getVerticalRangeModel()
      Returns the range model associated with the vertical motion of the Viewport.
      Returns:
      the RangeModel
      Since:
      2.0
    • getViewLocation

      public Point getViewLocation()
      Returns the current location of this Viewport.
      Returns:
      the current location of this Viewport
      Since:
      2.0
    • paintClientArea

      protected void paintClientArea(Graphics g)
      Description copied from class: Figure
      Paints this Figure's client area. The client area is typically defined as the anything inside the Figure's Border or Insets, and by default includes the children of this Figure. On return, this method must leave the given Graphics in its initial state.
      Overrides:
      paintClientArea in class Figure
      Parameters:
      g - The Graphics used to paint
      See Also:
    • isCoordinateSystem

      public boolean isCoordinateSystem()
      Description copied from interface: IFigure
      Returns true if this figure is capable of applying a local coordinate system which affects its children.
      Specified by:
      isCoordinateSystem in interface IFigure
      Overrides:
      isCoordinateSystem in class Figure
      Returns:
      true if this figure provides local coordinates to children
      See Also:
    • propertyChange

      public void propertyChange(PropertyChangeEvent event)
      Listens for either of the RangeModels to fire a property change event and updates the view accordingly.
      Specified by:
      propertyChange in interface PropertyChangeListener
      Parameters:
      event - the event
    • readjustScrollBars

      protected void readjustScrollBars()
      Sets extents of RangeModels to the client area of this Viewport. Sets RangeModel minimums to zero. Sets RangeModel maximums to this Viewport's height/width.
      Since:
      2.0
    • setContents

      public void setContents(IFigure figure)
      Sets this Viewport to be associated with the passed Figure.
      Parameters:
      figure - the new contents
      Since:
      2.0
    • setContentsTracksHeight

      public void setContentsTracksHeight(boolean track)
      Toggles the Viewport's ability to resize itself automatically when its view is decreased in size in the vertical direction. This is disabled by default.
      Parameters:
      track - whether this viewport should track its height
      Since:
      2.0
    • setContentsTracksWidth

      public void setContentsTracksWidth(boolean track)
      Toggles the Viewport's ability to resize itself automatically when its view is decreased in size in the horizontal direction. This is disabled by default.
      Parameters:
      track - whether this viewport should track its width
      Since:
      2.0
    • setHorizontalLocation

      public void setHorizontalLocation(int value)
      Sets the horizontal location of the Viewport's view to the passed value.
      Parameters:
      value - the new horizontal location
      Since:
      2.0
    • setHorizontalRangeModel

      public void setHorizontalRangeModel(RangeModel rangeModel)
      Sets the horizontal range model to the passed RangeModel.
      Parameters:
      rangeModel - the new horizontal range model
      Since:
      2.0
    • setIgnoreScroll

      public void setIgnoreScroll(boolean value)
      If value is true, this viewport will ignore any scrolling that occurs until this method is called again with false.
      Parameters:
      value - whether this viewport should ignore future scrolls
    • setVerticalLocation

      public void setVerticalLocation(int value)
      Sets the vertical location of the Viewport's view to the passed value.
      Parameters:
      value - the new vertical location
      Since:
      2.0
    • setVerticalRangeModel

      public void setVerticalRangeModel(RangeModel rangeModel)
      Sets the vertical range model to the passed RangeModel.
      Parameters:
      rangeModel - the new vertical RangeModel
      Since:
      2.0
    • setViewLocation

      public void setViewLocation(int x, int y)
      Sets the location of the Viewport's view to the passed values.
      Parameters:
      x - The new x coordinate of the Viewport's view.
      y - The new y coordinate of the Viewport's view.
      Since:
      2.0
    • setViewLocation

      public void setViewLocation(Point p)
      Sets the location of the Viewport's view to the passed Point.
      Parameters:
      p - The new location of the Viewport's view.
      Since:
      2.0
    • translateFromParent

      public void translateFromParent(Translatable t)
      Description copied from interface: IFigure
      Translates a Translatable from this IFigure's parent's coordinates to this IFigure's local coordinates.
      Specified by:
      translateFromParent in interface IFigure
      Overrides:
      translateFromParent in class Figure
      Parameters:
      t - The object to translate
      See Also:
    • translateToParent

      public void translateToParent(Translatable t)
      Description copied from interface: IFigure
      Translates a Translatable from this IFigure's coordinates to its parent's coordinates.
      Specified by:
      translateToParent in interface IFigure
      Overrides:
      translateToParent in class Figure
      Parameters:
      t - The object to translate
      See Also:
    • useGraphicsTranslate

      public boolean useGraphicsTranslate()
      Returns true if this viewport uses graphics translation.
      Returns:
      whether this viewport uses graphics translation
    • validate

      public void validate()
      Description copied from interface: IFigure
      Indicates that this figure should make itself valid. Validation includes invoking layout on a LayoutManager if present, and then validating all children figures. Default validation uses pre-order, depth-first ordering.
      Specified by:
      validate in interface IFigure
      Overrides:
      validate in class Figure
      See Also: