JHotDraw 7.4.1

org.jhotdraw.draw
Class DefaultDrawingView

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by org.jhotdraw.draw.DefaultDrawingView
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, EditableComponent, DrawingView

public class DefaultDrawingView
extends javax.swing.JComponent
implements DrawingView, EditableComponent

A default implementation of DrawingView suited for viewing drawings with a small number of figures. FIXME - Implement clone Method. FIXME - Use double buffering for the drawing to improve performance.

Version:
$Id: DefaultDrawingView.java 605 2010-01-10 11:14:33Z rawcoder $
Author:
Werner Randelshofer
See Also:
Serialized Form

Nested Class Summary
 
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  java.awt.image.BufferedImage backgroundTile
           
static java.lang.String DRAWING_DOUBLE_BUFFERED_PROPERTY
           
 
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 org.jhotdraw.draw.DrawingView
ACTIVE_HANDLE_PROPERTY, CONSTRAINER_PROPERTY, CONSTRAINER_VISIBLE_PROPERTY, CURSOR_PROPERTY, DRAWING_PROPERTY, ENABLED_PROPERTY, HANDLE_DETAIL_LEVEL_PROPERTY, INVISIBLE_CONSTRAINER_PROPERTY, SCALE_FACTOR_PROPERTY, VISIBLE_CONSTRAINER_PROPERTY
 
Fields inherited from interface org.jhotdraw.app.EditableComponent
SELECTION_EMPTY_PROPERTY
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
DefaultDrawingView()
          Creates new instance.
 
Method Summary
 void addFigureSelectionListener(FigureSelectionListener fsl)
          Add a listener for selection changes in this DrawingView.
 void addNotify(DrawingEditor editor)
          Informs the view that it has been added to the specified editor.
 void addToSelection(java.util.Collection<Figure> figures)
          Adds a collection of figures to the current selection.
 void addToSelection(Figure figure)
          Adds a figure to the current selection.
 void clearSelection()
          Clears the current selection.
protected  org.jhotdraw.draw.DefaultDrawingView.EventHandler createEventHandler()
           
 void delete()
          Deletes the selected components or the component at (or after) the caret position.
protected  void drawBackground(java.awt.Graphics2D g)
          Draws the background of the drawing view.
protected  void drawCanvas(java.awt.Graphics2D g)
          Draws the canvas.
protected  void drawConstrainer(java.awt.Graphics2D g)
           
protected  void drawDrawing(java.awt.Graphics2D gr)
           
protected  void drawDrawingNonvolatileBuffered(java.awt.Graphics2D g)
          Draws the drawing double buffered using a buffered image.
protected  void drawDrawingVolatileBuffered(java.awt.Graphics2D g)
          Draws the drawing double buffered using a volatile image.
protected  void drawHandles(java.awt.Graphics2D g)
           
 java.awt.Point drawingToView(java.awt.geom.Point2D.Double p)
          Converts drawing coordinates to view coordinates.
 java.awt.Rectangle drawingToView(java.awt.geom.Rectangle2D.Double r)
          Converts drawing coordinates to view coordinates.
protected  void drawTool(java.awt.Graphics2D g)
           
 void duplicate()
          Duplicates the selected region.
 Figure findFigure(java.awt.Point p)
          Finds a figure at a given coordinates.
 java.util.Collection<Figure> findFigures(java.awt.Rectangle r)
          Returns all figures that lie within or intersect the specified bounds.
 java.util.Collection<Figure> findFiguresWithin(java.awt.Rectangle r)
          Returns all figures that lie within the specified bounds.
 Handle findHandle(java.awt.Point p)
          Finds a handle at a given coordinates.
protected  void fireSelectionChanged(java.util.Set<Figure> oldValue, java.util.Set<Figure> newValue)
          Notify all listenerList that have registered interest for notification on this event type.
protected  void fireViewTransformChanged()
           
 Handle getActiveHandle()
          Gets the active handle.
protected  java.awt.Paint getBackgroundPaint(int x, int y)
          Returns a paint for drawing the background of the drawing area.
protected  java.awt.Rectangle getCanvasViewBounds()
          Returns the bounds of the canvas on the drawing view.
 java.util.Collection<Handle> getCompatibleHandles(Handle master)
          Gets compatible handles.
 javax.swing.JComponent getComponent()
          Returns the JComponent of the drawing view.
 Constrainer getConstrainer()
          Gets the current constrainer of this view.
 Drawing getDrawing()
          Gets the drawing.
protected  java.awt.geom.Rectangle2D.Double getDrawingArea()
           
 java.awt.geom.AffineTransform getDrawingToViewTransform()
          Gets an transform which can be used to convert drawing coordinates to view coordinates.
 DrawingEditor getEditor()
          Gets the drawing editor associated to the DrawingView.
 java.lang.String getEmptyDrawingMessage()
           
 int getHandleDetailLevel()
          Returns the detail level of the handles.
 Constrainer getInvisibleConstrainer()
          Gets the editor's constrainer for this view, for use, when the visible constrainer is turned off.
 java.awt.Dimension getPreferredSize()
           
 double getScaleFactor()
          Gets the scale factor of the drawing view.
 java.util.Set<Figure> getSelectedFigures()
          Gets the current selection as a FigureSelection.
 int getSelectionCount()
          Gets the number of selected figures.
 java.lang.String getToolTipText(java.awt.event.MouseEvent evt)
           
 Constrainer getVisibleConstrainer()
          Gets the editor's constrainer for this view, for use, when the visible constrainer is turned on.
 void invalidate()
           
protected  void invalidateDimension()
           
 boolean isConstrainerVisible()
          Returns true, if the visible Constrainer is in use, returns false, if the invisible Constrainer is in use.
 boolean isDrawingDoubleBuffered()
          Returns true, if the the drawing is double buffered.
 boolean isFigureSelected(Figure checkFigure)
          Test whether a given figure is selected.
 boolean isSelectionEmpty()
          Returns true if the selection is empty.
 void paint(java.awt.Graphics g)
           
 void paintComponent(java.awt.Graphics gr)
          Paints the drawing view.
 void printComponent(java.awt.Graphics gr)
          Prints the drawing view.
 void removeFigureSelectionListener(FigureSelectionListener fsl)
          Remove a listener for selection changes in this DrawingView.
 void removeFromSelection(Figure figure)
          Removes a figure from the selection.
 void removeNotify()
           
 void removeNotify(DrawingEditor editor)
          Informs the view that it has been removed from the specified editor.
protected  void repaintDrawingArea(java.awt.geom.Rectangle2D.Double r)
           
 void repaintHandles()
          Repaints the handles of the view.
 void selectAll()
          Selects all selectable figures.
 void setActiveHandle(Handle newValue)
          Sets the active handle.
 void setBackground(java.awt.Color c)
           
 void setBounds(int x, int y, int width, int height)
          Side effect: Changes view Translation.
 void setConstrainerVisible(boolean newValue)
          Changes between a visible Constrainer and an invisible Constrainer.
 void setDrawing(Drawing newValue)
          Sets and installs another drawing in the view.
 void setDrawingDoubleBuffered(boolean newValue)
          Sets whether the drawing is double buffered.
 void setEmptyDrawingMessage(java.lang.String newValue)
           
 void setEnabled(boolean b)
          Sets the enabled state of the drawing view.
 void setHandleDetailLevel(int newValue)
          The detail level of the handles.
 void setInvisibleConstrainer(Constrainer newValue)
          Sets the editor's constrainer for this view, for use, when the visible constrainer is turned off.
 void setScaleFactor(double newValue)
          Sets the scale factor of the drawing view.
protected  void setViewRenderingHints(java.awt.Graphics2D g)
           
 void setVisibleConstrainer(Constrainer newValue)
          Sets the editor's constrainer for this view, for use, when the visible constrainer is turned on.
 void toggleSelection(Figure figure)
          If a figure isn't selected it is added to the selection.
 java.awt.geom.Point2D.Double viewToDrawing(java.awt.Point p)
          Converts view coordinates to drawing coordinates.
 java.awt.geom.Rectangle2D.Double viewToDrawing(java.awt.Rectangle r)
          Converts view coordinates to drawing coordinates.
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, 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, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
 
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, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, setComponentOrientation, 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
 
Methods inherited from interface org.jhotdraw.draw.DrawingView
addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, isEnabled, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, requestFocus, setCursor
 
Methods inherited from interface org.jhotdraw.app.EditableComponent
addPropertyChangeListener, removePropertyChangeListener
 

Field Detail

backgroundTile

protected java.awt.image.BufferedImage backgroundTile

DRAWING_DOUBLE_BUFFERED_PROPERTY

public static final java.lang.String DRAWING_DOUBLE_BUFFERED_PROPERTY
See Also:
Constant Field Values
Constructor Detail

DefaultDrawingView

public DefaultDrawingView()
Creates new instance.

Method Detail

repaintHandles

public void repaintHandles()
Description copied from interface: DrawingView
Repaints the handles of the view.

Specified by:
repaintHandles in interface DrawingView

drawBackground

protected void drawBackground(java.awt.Graphics2D g)
Draws the background of the drawing view.


isSelectionEmpty

public boolean isSelectionEmpty()
Description copied from interface: EditableComponent
Returns true if the selection is empty. This is a bound property.

Specified by:
isSelectionEmpty in interface EditableComponent

setBackground

public void setBackground(java.awt.Color c)
Overrides:
setBackground in class javax.swing.JComponent

createEventHandler

protected org.jhotdraw.draw.DefaultDrawingView.EventHandler createEventHandler()

getDrawing

public Drawing getDrawing()
Description copied from interface: DrawingView
Gets the drawing. This is a bound property.

Specified by:
getDrawing in interface DrawingView

getToolTipText

public java.lang.String getToolTipText(java.awt.event.MouseEvent evt)
Overrides:
getToolTipText in class javax.swing.JComponent

setEmptyDrawingMessage

public void setEmptyDrawingMessage(java.lang.String newValue)

getEmptyDrawingMessage

public java.lang.String getEmptyDrawingMessage()

paintComponent

public void paintComponent(java.awt.Graphics gr)
Paints the drawing view. Uses rendering hints for fast painting. Paints the canvasColor, the grid, the drawing, the handles and the current tool.

Overrides:
paintComponent in class javax.swing.JComponent

drawDrawingVolatileBuffered

protected void drawDrawingVolatileBuffered(java.awt.Graphics2D g)
Draws the drawing double buffered using a volatile image.


drawDrawingNonvolatileBuffered

protected void drawDrawingNonvolatileBuffered(java.awt.Graphics2D g)
Draws the drawing double buffered using a buffered image.


printComponent

public void printComponent(java.awt.Graphics gr)
Prints the drawing view. Uses high quality rendering hints for printing. Only prints the drawing. Doesn't print the canvasColor, the grid, the handles and the tool.

Overrides:
printComponent in class javax.swing.JComponent

setViewRenderingHints

protected void setViewRenderingHints(java.awt.Graphics2D g)

getCanvasViewBounds

protected java.awt.Rectangle getCanvasViewBounds()
Returns the bounds of the canvas on the drawing view.

Returns:
The current bounds of the canvas on the drawing view.

drawCanvas

protected void drawCanvas(java.awt.Graphics2D g)
Draws the canvas. If the AttributeKeys.CANVAS_FILL_OPACITY is not fully opaque, the canvas area is filled with the background paint before the AttributeKeys.CANVAS_FILL_COLOR is drawn.


drawConstrainer

protected void drawConstrainer(java.awt.Graphics2D g)

drawDrawing

protected void drawDrawing(java.awt.Graphics2D gr)

drawHandles

protected void drawHandles(java.awt.Graphics2D g)

drawTool

protected void drawTool(java.awt.Graphics2D g)

setDrawing

public void setDrawing(Drawing newValue)
Description copied from interface: DrawingView
Sets and installs another drawing in the view. This is a bound property.

Specified by:
setDrawing in interface DrawingView

paint

public void paint(java.awt.Graphics g)
Overrides:
paint in class javax.swing.JComponent

repaintDrawingArea

protected void repaintDrawingArea(java.awt.geom.Rectangle2D.Double r)

invalidate

public void invalidate()
Overrides:
invalidate in class java.awt.Container

removeNotify

public void removeNotify()
Overrides:
removeNotify in class javax.swing.JComponent

addToSelection

public void addToSelection(Figure figure)
Adds a figure to the current selection.

Specified by:
addToSelection in interface DrawingView

addToSelection

public void addToSelection(java.util.Collection<Figure> figures)
Adds a collection of figures to the current selection.

Specified by:
addToSelection in interface DrawingView

removeFromSelection

public void removeFromSelection(Figure figure)
Removes a figure from the selection.

Specified by:
removeFromSelection in interface DrawingView

toggleSelection

public void toggleSelection(Figure figure)
If a figure isn't selected it is added to the selection. Otherwise it is removed from the selection.

Specified by:
toggleSelection in interface DrawingView

setEnabled

public void setEnabled(boolean b)
Description copied from interface: DrawingView
Sets the enabled state of the drawing view. This is a bound property.

Specified by:
setEnabled in interface DrawingView
Overrides:
setEnabled in class javax.swing.JComponent

selectAll

public void selectAll()
Selects all selectable figures.

Specified by:
selectAll in interface EditableComponent
Specified by:
selectAll in interface DrawingView

clearSelection

public void clearSelection()
Clears the current selection.

Specified by:
clearSelection in interface EditableComponent
Specified by:
clearSelection in interface DrawingView

isFigureSelected

public boolean isFigureSelected(Figure checkFigure)
Test whether a given figure is selected.

Specified by:
isFigureSelected in interface DrawingView

getSelectedFigures

public java.util.Set<Figure> getSelectedFigures()
Gets the current selection as a FigureSelection. A FigureSelection can be cut, copied, pasted.

Specified by:
getSelectedFigures in interface DrawingView

getSelectionCount

public int getSelectionCount()
Gets the number of selected figures.

Specified by:
getSelectionCount in interface DrawingView

findHandle

public Handle findHandle(java.awt.Point p)
Finds a handle at a given coordinates.

Specified by:
findHandle in interface DrawingView
Returns:
A handle, null if no handle is found.

getCompatibleHandles

public java.util.Collection<Handle> getCompatibleHandles(Handle master)
Gets compatible handles.

Specified by:
getCompatibleHandles in interface DrawingView
Returns:
A collection containing the handle and all compatible handles.

findFigure

public Figure findFigure(java.awt.Point p)
Finds a figure at a given coordinates.

Specified by:
findFigure in interface DrawingView
Returns:
A figure, null if no figure is found.

findFigures

public java.util.Collection<Figure> findFigures(java.awt.Rectangle r)
Description copied from interface: DrawingView
Returns all figures that lie within or intersect the specified bounds. The figures are returned in Z-order from back to front.

Specified by:
findFigures in interface DrawingView

findFiguresWithin

public java.util.Collection<Figure> findFiguresWithin(java.awt.Rectangle r)
Description copied from interface: DrawingView
Returns all figures that lie within the specified bounds. The figures are returned in Z-order from back to front.

Specified by:
findFiguresWithin in interface DrawingView

addFigureSelectionListener

public void addFigureSelectionListener(FigureSelectionListener fsl)
Description copied from interface: DrawingView
Add a listener for selection changes in this DrawingView.

Specified by:
addFigureSelectionListener in interface DrawingView
Parameters:
fsl - jhotdraw.framework.FigureSelectionListener

removeFigureSelectionListener

public void removeFigureSelectionListener(FigureSelectionListener fsl)
Description copied from interface: DrawingView
Remove a listener for selection changes in this DrawingView.

Specified by:
removeFigureSelectionListener in interface DrawingView
Parameters:
fsl - jhotdraw.framework.FigureSelectionListener

fireSelectionChanged

protected void fireSelectionChanged(java.util.Set<Figure> oldValue,
                                    java.util.Set<Figure> newValue)
Notify all listenerList that have registered interest for notification on this event type. Also notify listeners who listen for EditableComponent.SELECTION_EMPTY_PROPERTY.


invalidateDimension

protected void invalidateDimension()

getConstrainer

public Constrainer getConstrainer()
Description copied from interface: DrawingView
Gets the current constrainer of this view. If isConstrainerVisible is true, this method returns getVisibleConstrainer, otherwise it returns getInvisibleConstrainer. This is a bound property.

Specified by:
getConstrainer in interface DrawingView

getPreferredSize

public java.awt.Dimension getPreferredSize()
Overrides:
getPreferredSize in class javax.swing.JComponent

getDrawingArea

protected java.awt.geom.Rectangle2D.Double getDrawingArea()

setBounds

public void setBounds(int x,
                      int y,
                      int width,
                      int height)
Side effect: Changes view Translation.

Overrides:
setBounds in class java.awt.Component

drawingToView

public java.awt.Point drawingToView(java.awt.geom.Point2D.Double p)
Converts drawing coordinates to view coordinates.

Specified by:
drawingToView in interface DrawingView

drawingToView

public java.awt.Rectangle drawingToView(java.awt.geom.Rectangle2D.Double r)
Description copied from interface: DrawingView
Converts drawing coordinates to view coordinates.

Specified by:
drawingToView in interface DrawingView

viewToDrawing

public java.awt.geom.Point2D.Double viewToDrawing(java.awt.Point p)
Converts view coordinates to drawing coordinates.

Specified by:
viewToDrawing in interface DrawingView

viewToDrawing

public java.awt.geom.Rectangle2D.Double viewToDrawing(java.awt.Rectangle r)
Description copied from interface: DrawingView
Converts view coordinates to drawing coordinates.

Specified by:
viewToDrawing in interface DrawingView

getComponent

public javax.swing.JComponent getComponent()
Description copied from interface: DrawingView
Returns the JComponent of the drawing view.

Specified by:
getComponent in interface DrawingView

getScaleFactor

public double getScaleFactor()
Description copied from interface: DrawingView
Gets the scale factor of the drawing view. This is a bound property.

Specified by:
getScaleFactor in interface DrawingView

setScaleFactor

public void setScaleFactor(double newValue)
Description copied from interface: DrawingView
Sets the scale factor of the drawing view. This is a bound property.

Specified by:
setScaleFactor in interface DrawingView

fireViewTransformChanged

protected void fireViewTransformChanged()

setHandleDetailLevel

public void setHandleDetailLevel(int newValue)
Description copied from interface: DrawingView
The detail level of the handles. This is a bound property.

Specified by:
setHandleDetailLevel in interface DrawingView

getHandleDetailLevel

public int getHandleDetailLevel()
Description copied from interface: DrawingView
Returns the detail level of the handles. This is a bound property.

Specified by:
getHandleDetailLevel in interface DrawingView

getDrawingToViewTransform

public java.awt.geom.AffineTransform getDrawingToViewTransform()
Description copied from interface: DrawingView
Gets an transform which can be used to convert drawing coordinates to view coordinates.

Specified by:
getDrawingToViewTransform in interface DrawingView

delete

public void delete()
Description copied from interface: EditableComponent
Deletes the selected components or the component at (or after) the caret position.

Specified by:
delete in interface EditableComponent

duplicate

public void duplicate()
Description copied from interface: EditableComponent
Duplicates the selected region.

Specified by:
duplicate in interface EditableComponent

removeNotify

public void removeNotify(DrawingEditor editor)
Description copied from interface: DrawingView
Informs the view that it has been removed from the specified editor. The view must not draw the tool from the editor anymore.

Specified by:
removeNotify in interface DrawingView

addNotify

public void addNotify(DrawingEditor editor)
Description copied from interface: DrawingView
Informs the view that it has been added to the specified editor. The view must draw the tool of the editor, if getActiveView() of the editor returns the view.

Specified by:
addNotify in interface DrawingView

setVisibleConstrainer

public void setVisibleConstrainer(Constrainer newValue)
Description copied from interface: DrawingView
Sets the editor's constrainer for this view, for use, when the visible constrainer is turned on. This is a bound property.

Specified by:
setVisibleConstrainer in interface DrawingView

getVisibleConstrainer

public Constrainer getVisibleConstrainer()
Description copied from interface: DrawingView
Gets the editor's constrainer for this view, for use, when the visible constrainer is turned on. This is a bound property.

Specified by:
getVisibleConstrainer in interface DrawingView

setInvisibleConstrainer

public void setInvisibleConstrainer(Constrainer newValue)
Description copied from interface: DrawingView
Sets the editor's constrainer for this view, for use, when the visible constrainer is turned off. This is a bound property.

Specified by:
setInvisibleConstrainer in interface DrawingView

getInvisibleConstrainer

public Constrainer getInvisibleConstrainer()
Description copied from interface: DrawingView
Gets the editor's constrainer for this view, for use, when the visible constrainer is turned off. This is a bound property.

Specified by:
getInvisibleConstrainer in interface DrawingView

setConstrainerVisible

public void setConstrainerVisible(boolean newValue)
Description copied from interface: DrawingView
Changes between a visible Constrainer and an invisible Constrainer. This is a bound property.

Specified by:
setConstrainerVisible in interface DrawingView

isConstrainerVisible

public boolean isConstrainerVisible()
Description copied from interface: DrawingView
Returns true, if the visible Constrainer is in use, returns false, if the invisible Constrainer is in use. This is a bound property.

Specified by:
isConstrainerVisible in interface DrawingView

setDrawingDoubleBuffered

public void setDrawingDoubleBuffered(boolean newValue)
Sets whether the drawing is double buffered.

The default value is true.

This is a bound property.

If the drawing view is used for editing, you should leave this to true. If the drawing view is used for viewing only, you should set this to false.


isDrawingDoubleBuffered

public boolean isDrawingDoubleBuffered()
Returns true, if the the drawing is double buffered.


getBackgroundPaint

protected java.awt.Paint getBackgroundPaint(int x,
                                            int y)
Returns a paint for drawing the background of the drawing area.

Returns:
Paint.

getEditor

public DrawingEditor getEditor()
Description copied from interface: DrawingView
Gets the drawing editor associated to the DrawingView. This is a bound property.

Specified by:
getEditor in interface DrawingView

setActiveHandle

public void setActiveHandle(Handle newValue)
Description copied from interface: DrawingView
Sets the active handle.

Specified by:
setActiveHandle in interface DrawingView

getActiveHandle

public Handle getActiveHandle()
Description copied from interface: DrawingView
Gets the active handle.

Specified by:
getActiveHandle in interface DrawingView

Copyright 1996-2010 (c) by the authors and contributors of the JHotDraw project.
Some rights reserved.