com.sun.electric.tool.user.redisplay
Class AbstractDrawing

java.lang.Object
  extended by com.sun.electric.tool.user.redisplay.AbstractDrawing

public abstract class AbstractDrawing
extends java.lang.Object

Base class for redisplay algorithms


Nested Class Summary
static class AbstractDrawing.LayerColor
           
 
Field Summary
 WindowFrame.DisplayAttributes da
           
 EditWindow wnd
           
 
Constructor Summary
protected AbstractDrawing(EditWindow wnd)
           
 
Method Summary
 void abortRendering()
           
static void clearSubCellCache(boolean layerAlso)
          Method to clear the cache of expanded subcells.
static AbstractDrawing createDrawing(EditWindow wnd, AbstractDrawing drawing, Cell cell)
           
static void drawShapes(java.awt.Graphics2D g, GraphicsPreferences gp, int imgX, int imgY, double scale, VectorCache.VectorBase[] shapes, PixelDrawing offscreen, java.awt.Rectangle entryRect)
          Method to draw polygon "poly", transformed through "trans".
static void forceRedraw(Cell cell)
           
 boolean hasOpacity()
           
 void opacityChanged()
           
abstract  boolean paintComponent(java.awt.Graphics2D g, LayerVisibility lv, java.awt.Dimension sz)
           
abstract  void render(java.awt.Dimension sz, WindowFrame.DisplayAttributes da, GraphicsPreferences gp, boolean fullInstantiate, java.awt.geom.Rectangle2D bounds)
           
 void testJogl()
           
 boolean visibilityChanged()
          Notifies about visibilit change Retruns true if full repaint is necessary
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

wnd

public final EditWindow wnd

da

public WindowFrame.DisplayAttributes da
Constructor Detail

AbstractDrawing

protected AbstractDrawing(EditWindow wnd)
Method Detail

createDrawing

public static AbstractDrawing createDrawing(EditWindow wnd,
                                            AbstractDrawing drawing,
                                            Cell cell)

paintComponent

public abstract boolean paintComponent(java.awt.Graphics2D g,
                                       LayerVisibility lv,
                                       java.awt.Dimension sz)

render

public abstract void render(java.awt.Dimension sz,
                            WindowFrame.DisplayAttributes da,
                            GraphicsPreferences gp,
                            boolean fullInstantiate,
                            java.awt.geom.Rectangle2D bounds)

abortRendering

public void abortRendering()

opacityChanged

public void opacityChanged()

visibilityChanged

public boolean visibilityChanged()
Notifies about visibilit change Retruns true if full repaint is necessary


hasOpacity

public boolean hasOpacity()

testJogl

public void testJogl()

clearSubCellCache

public static void clearSubCellCache(boolean layerAlso)
Method to clear the cache of expanded subcells. This is used by layer visibility which, when changed, causes everything to be redrawn.


forceRedraw

public static void forceRedraw(Cell cell)

drawShapes

public static void drawShapes(java.awt.Graphics2D g,
                              GraphicsPreferences gp,
                              int imgX,
                              int imgY,
                              double scale,
                              VectorCache.VectorBase[] shapes,
                              PixelDrawing offscreen,
                              java.awt.Rectangle entryRect)
Method to draw polygon "poly", transformed through "trans".