com.metsci.glimpse.layout
Class GlimpseLayout

java.lang.Object
  extended by com.metsci.glimpse.layout.GlimpseLayout
All Implemented Interfaces:
GlimpseTarget, GlimpseMouseListener, GlimpseMouseMotionListener, GlimpseMouseWheelListener, Mouseable, GlimpsePainter
Direct Known Subclasses:
GlimpseAxisLayout1D, GlimpseAxisLayout2D, MultiAxisPlot2D, StackedPlot2D, StackedTimePlot2D

public class GlimpseLayout
extends java.lang.Object
implements GlimpsePainter, GlimpseTarget, Mouseable

GlimpseLayout provides a means of rendering to specific areas of a GlimpseCanvas controlled by Mig Layout constraints. It also acts as a RenderTarget onto which other GlimpsePainters may be painted. GlimpseLayout satisfies the Glimpse-facing interfaces GlimpsePainter and RenderTarget.

GlimpseLayout uses a delegate class GlimpseLayoutDelegate to interface with Mig Layout and hold transient state during layout operations. The final results of the layout are stored in a LayoutCache.

Don't forget the "bottomtotop" layout constraint for MiG, or things will be upside-down from what you probably expect.

Author:
osborn, ulman
See Also:
GlimpseLayoutDelegate

Constructor Summary
GlimpseLayout()
           
GlimpseLayout(GlimpseLayout parent)
           
GlimpseLayout(GlimpseLayout parent, java.lang.String name)
           
GlimpseLayout(java.lang.String name)
           
 
Method Summary
 void addGlimpseMouseAllListener(GlimpseMouseAllListener listener)
           
 void addGlimpseMouseListener(GlimpseMouseListener listener)
           
 void addGlimpseMouseMotionListener(GlimpseMouseMotionListener listener)
           
 void addGlimpseMouseWheelListener(GlimpseMouseWheelListener listener)
           
 void addLayout(GlimpseLayout layout)
          Adds a sub-layout to this GlimpseTarget which will only paint in a region of this GlimpseTarget based on its layout constraints.
 void addLayout(GlimpseLayout layout, GlimpsePainterCallback callback)
           
 void addPainter(GlimpsePainter painter)
           
 void addPainter(GlimpsePainter painter, GlimpsePainterCallback callback)
           
 void dispose(GlimpseContext context)
          Free GPU and CPU memory associated with this this GlimpsePainter.
 java.util.Collection<GlimpseMouseListener> getGlimpseMouseListeners()
           
 java.util.Collection<GlimpseMouseMotionListener> getGlimpseMouseMotionListeners()
           
 java.util.Collection<GlimpseMouseWheelListener> getGlimpseMouseWheelListeners()
           
 GlimpseLayoutManager getLayoutManager()
           
 java.lang.String getName()
           
 GlimpseBounds getTargetBounds(GlimpseTargetStack stack)
          Returns the cached or calculated bounds of this GlimpseTarget for a particular context.
 java.util.List<GlimpseTarget> getTargetChildren()
           
 void invalidateLayout()
           
 boolean isDisposed()
           
 boolean isEventConsumer()
          Sets whether this GlimpseTarget hides events from GlimpseTargets under it.
 boolean isEventGenerator()
          Sets whether this GlimpseTarget generates GlimpseMouseEvents.
 boolean isVisible()
           
 GlimpseBounds layoutTo(GlimpseContext context)
           
 GlimpseBounds layoutTo(GlimpseTargetStack stack)
           
 void mouseEntered(GlimpseMouseEvent event)
           
 void mouseExited(GlimpseMouseEvent event)
           
 void mouseMoved(GlimpseMouseEvent e)
           
 void mousePressed(GlimpseMouseEvent event)
           
 void mouseReleased(GlimpseMouseEvent event)
           
 void mouseWheelMoved(GlimpseMouseEvent e)
           
 void paintTo(GlimpseContext context)
          Renders this GlimpsePainter to the provided GlimpseContext.
 void removeAllGlimpseListeners()
           
 void removeGlimpseMouseAllListener(GlimpseMouseAllListener listener)
           
 void removeGlimpseMouseListener(GlimpseMouseListener listener)
           
 void removeGlimpseMouseMotionListener(GlimpseMouseMotionListener listener)
           
 void removeGlimpseMouseWheelListener(GlimpseMouseWheelListener listener)
           
 void removeLayout(GlimpseLayout layout)
          Removes a previously added layout from this GlimpseTarget.
 void removePainter(GlimpsePainter painter)
           
 void setEventConsumer(boolean consume)
          Set whether or not this GlimpseTarget will consume or pass through mouse events.
 void setEventGenerator(boolean generate)
          Set whether or not this GlimpseTarget will generate GlimpseMouseEvents.
 void setLayoutData(java.lang.Object layoutData)
           
 void setLayoutManager(GlimpseLayoutManager manager)
           
 void setLookAndFeel(LookAndFeel laf)
          Sets display options for the painter based on the provided LookAndFeel.
 void setName(java.lang.String name)
           
 void setVisible(boolean visible)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GlimpseLayout

public GlimpseLayout(GlimpseLayout parent,
                     java.lang.String name)

GlimpseLayout

public GlimpseLayout(GlimpseLayout parent)

GlimpseLayout

public GlimpseLayout(java.lang.String name)

GlimpseLayout

public GlimpseLayout()
Method Detail

getName

public java.lang.String getName()

setName

public void setName(java.lang.String name)

setLayoutManager

public void setLayoutManager(GlimpseLayoutManager manager)

setLayoutData

public void setLayoutData(java.lang.Object layoutData)

removeLayout

public void removeLayout(GlimpseLayout layout)
Description copied from interface: GlimpseTarget
Removes a previously added layout from this GlimpseTarget.

Specified by:
removeLayout in interface GlimpseTarget

addLayout

public void addLayout(GlimpseLayout layout)
Description copied from interface: GlimpseTarget
Adds a sub-layout to this GlimpseTarget which will only paint in a region of this GlimpseTarget based on its layout constraints. This same GlimpseLayout may be a child of any number of different GlimpseTargets.

Specified by:
addLayout in interface GlimpseTarget

addLayout

public void addLayout(GlimpseLayout layout,
                      GlimpsePainterCallback callback)

addPainter

public void addPainter(GlimpsePainter painter)

addPainter

public void addPainter(GlimpsePainter painter,
                       GlimpsePainterCallback callback)

removePainter

public void removePainter(GlimpsePainter painter)

invalidateLayout

public void invalidateLayout()

layoutTo

public GlimpseBounds layoutTo(GlimpseTargetStack stack)

layoutTo

public GlimpseBounds layoutTo(GlimpseContext context)

paintTo

public void paintTo(GlimpseContext context)
Description copied from interface: GlimpsePainter
Renders this GlimpsePainter to the provided GlimpseContext. The context defines the GLContext to use. The GlimpseContext also specifies where this GlimpsePainter should be rendered via the RenderTarget contained in the GlimpseContext.

Specified by:
paintTo in interface GlimpsePainter

getTargetBounds

public GlimpseBounds getTargetBounds(GlimpseTargetStack stack)
Description copied from interface: GlimpseTarget
Returns the cached or calculated bounds of this GlimpseTarget for a particular context.

Specified by:
getTargetBounds in interface GlimpseTarget
Returns:
the bounds for the given stack

getTargetChildren

public java.util.List<GlimpseTarget> getTargetChildren()
Specified by:
getTargetChildren in interface GlimpseTarget
Returns:
the list of children added through addLayout( GlimpseLayout ).

dispose

public void dispose(GlimpseContext context)
Description copied from interface: GlimpsePainter
Free GPU and CPU memory associated with this this GlimpsePainter. After this call returns, the results of calling other GlimpsePainter methods besides isDisposed( ) are undefined.

Specified by:
dispose in interface GlimpsePainter

isDisposed

public boolean isDisposed()
Specified by:
isDisposed in interface GlimpsePainter

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getGlimpseMouseListeners

public java.util.Collection<GlimpseMouseListener> getGlimpseMouseListeners()
Specified by:
getGlimpseMouseListeners in interface Mouseable

getGlimpseMouseMotionListeners

public java.util.Collection<GlimpseMouseMotionListener> getGlimpseMouseMotionListeners()
Specified by:
getGlimpseMouseMotionListeners in interface Mouseable

getGlimpseMouseWheelListeners

public java.util.Collection<GlimpseMouseWheelListener> getGlimpseMouseWheelListeners()
Specified by:
getGlimpseMouseWheelListeners in interface Mouseable

addGlimpseMouseListener

public void addGlimpseMouseListener(GlimpseMouseListener listener)
Specified by:
addGlimpseMouseListener in interface Mouseable

addGlimpseMouseMotionListener

public void addGlimpseMouseMotionListener(GlimpseMouseMotionListener listener)
Specified by:
addGlimpseMouseMotionListener in interface Mouseable

addGlimpseMouseWheelListener

public void addGlimpseMouseWheelListener(GlimpseMouseWheelListener listener)
Specified by:
addGlimpseMouseWheelListener in interface Mouseable

addGlimpseMouseAllListener

public void addGlimpseMouseAllListener(GlimpseMouseAllListener listener)
Specified by:
addGlimpseMouseAllListener in interface Mouseable

removeGlimpseMouseAllListener

public void removeGlimpseMouseAllListener(GlimpseMouseAllListener listener)
Specified by:
removeGlimpseMouseAllListener in interface Mouseable

removeGlimpseMouseListener

public void removeGlimpseMouseListener(GlimpseMouseListener listener)
Specified by:
removeGlimpseMouseListener in interface Mouseable

removeGlimpseMouseMotionListener

public void removeGlimpseMouseMotionListener(GlimpseMouseMotionListener listener)
Specified by:
removeGlimpseMouseMotionListener in interface Mouseable

removeGlimpseMouseWheelListener

public void removeGlimpseMouseWheelListener(GlimpseMouseWheelListener listener)
Specified by:
removeGlimpseMouseWheelListener in interface Mouseable

removeAllGlimpseListeners

public void removeAllGlimpseListeners()
Specified by:
removeAllGlimpseListeners in interface Mouseable

getLayoutManager

public GlimpseLayoutManager getLayoutManager()

mouseEntered

public void mouseEntered(GlimpseMouseEvent event)
Specified by:
mouseEntered in interface GlimpseMouseListener

mouseExited

public void mouseExited(GlimpseMouseEvent event)
Specified by:
mouseExited in interface GlimpseMouseListener

mousePressed

public void mousePressed(GlimpseMouseEvent event)
Specified by:
mousePressed in interface GlimpseMouseListener

mouseReleased

public void mouseReleased(GlimpseMouseEvent event)
Specified by:
mouseReleased in interface GlimpseMouseListener

mouseMoved

public void mouseMoved(GlimpseMouseEvent e)
Specified by:
mouseMoved in interface GlimpseMouseMotionListener

mouseWheelMoved

public void mouseWheelMoved(GlimpseMouseEvent e)
Specified by:
mouseWheelMoved in interface GlimpseMouseWheelListener

setLookAndFeel

public void setLookAndFeel(LookAndFeel laf)
Description copied from interface: GlimpsePainter
Sets display options for the painter based on the provided LookAndFeel.

Specified by:
setLookAndFeel in interface GlimpseTarget
Specified by:
setLookAndFeel in interface GlimpsePainter

isEventConsumer

public boolean isEventConsumer()
Description copied from interface: GlimpseTarget
Sets whether this GlimpseTarget hides events from GlimpseTargets under it. This value does not determine whether or not the GlimpseTarget will generate GlimpseMouseEvents (see {@link #isEventGenerator()).

Specified by:
isEventConsumer in interface GlimpseTarget
Returns:
whether this target hides events from targets under it

setEventConsumer

public void setEventConsumer(boolean consume)
Description copied from interface: GlimpseTarget
Set whether or not this GlimpseTarget will consume or pass through mouse events.

Specified by:
setEventConsumer in interface GlimpseTarget

isEventGenerator

public boolean isEventGenerator()
Description copied from interface: GlimpseTarget
Sets whether this GlimpseTarget generates GlimpseMouseEvents. This value does not determine whether or not GlimpseTargets underneath this GlimpseTarget will also generate GlimpseMouseEvents (see GlimpseTarget.isEventConsumer()).

Specified by:
isEventGenerator in interface GlimpseTarget
Returns:
whether this target will generate GlimpseMouseEvents

setEventGenerator

public void setEventGenerator(boolean generate)
Description copied from interface: GlimpseTarget
Set whether or not this GlimpseTarget will generate GlimpseMouseEvents.

Specified by:
setEventGenerator in interface GlimpseTarget

setVisible

public void setVisible(boolean visible)

isVisible

public boolean isVisible()


Copyright © 2012 Metron, Inc.. All Rights Reserved.