|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
edu.umd.cs.piccolo.PCanvas
public class PCanvas
PCanvas is a simple Swing component that can be used to embed Piccolo into a Java Swing application. Canvases view the Piccolo scene graph through a camera. The canvas manages screen updates coming from this camera, and forwards swing mouse and keyboard events to the camera.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class javax.swing.JComponent |
|---|
JComponent.AccessibleJComponent |
| Nested classes/interfaces inherited from class java.awt.Container |
|---|
Container.AccessibleAWTContainer |
| Nested classes/interfaces inherited from class java.awt.Component |
|---|
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy |
| Field Summary | |
|---|---|
static PCanvas |
CURRENT_ZCANVAS
Deprecated. since it falsely assumes that there is only one PCanvas per program |
static String |
INTERACTING_CHANGED_NOTIFICATION
Deprecated. in favor of PROPERTY_INTERACTING |
static String |
INTERATING_CHANGED_NOTIFICATION
Deprecated. this is a typo and clients should change their code to reflect the correct spelling |
static String |
PROPERTY_INTERACTING
The property name that identifies a change in the interacting state. |
| 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 java.awt.image.ImageObserver |
|---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| Constructor Summary | |
|---|---|
PCanvas()
Construct a canvas with the basic scene graph consisting of a root, camera, and layer. |
|
| Method Summary | |
|---|---|
void |
addInputEventListener(PInputEventListener listener)
Add an input listener to the camera associated with this canvas. |
protected PCamera |
createDefaultCamera()
Creates and returns a basic Scene Graph. |
Timer |
createTimer(int delay,
ActionListener listener)
Helper for creating a timer. |
boolean |
getAnimating()
Return true if any activities that respond with true to the method isAnimating were run in the last PRoot.processInputs() loop. |
int |
getAnimatingRenderQuality()
Returns the quality to use when animating. |
PCamera |
getCamera()
Return the camera associated with this canvas. |
int |
getDefaultRenderQuality()
Deprecated. in favor or getNormalRenderQuality |
PInputEventListener[] |
getInputEventListeners()
Returns the input event listeners registered to receive input events. |
boolean |
getInteracting()
Return true if this canvas has been marked as interacting, or whether it's root is interacting. |
int |
getInteractingRenderQuality()
Returns the quality to use when interacting. |
PLayer |
getLayer()
Return layer for this canvas. |
int |
getNormalRenderQuality()
Returns the quality to use when not animating or interacting. |
PPanEventHandler |
getPanEventHandler()
Get the pan event handler associated with this canvas. |
PRoot |
getRoot()
Return root for this canvas. |
PZoomEventHandler |
getZoomEventHandler()
Get the zoom event handler associated with this canvas. |
protected void |
installInputSources()
This method installs mouse and key listeners on the canvas that forward those events to piccolo. |
void |
paintComponent(Graphics g)
|
void |
paintImmediately()
If not painting immediately, send paint notification to RepaintManager, otherwise does nothing. |
void |
popCursor()
Pop the cursor on top of the cursorStack and set it as the canvas cursor. |
void |
printAll(Graphics graphics)
Prints the entire scene regardless of what the viewable area is. |
void |
pushCursor(Cursor cursor)
Set the canvas cursor, and remember the previous cursor on the cursor stack. |
void |
removeInputEventListener(PInputEventListener listener)
Remove an input listener to the camera associated with this canvas. |
protected void |
removeInputSources()
This method removes mouse and key listeners on the canvas that forward those events to piccolo. |
void |
repaint(PBounds bounds)
Called to notify PComponent that given bounds need repainting. |
protected void |
sendInputEventToInputManager(InputEvent event,
int type)
Sends the given input event with the given type to the current InputManager. |
void |
setAnimatingRenderQuality(int animatingRenderQuality)
Set the render quality that should be used when rendering this canvas when it is animating. |
void |
setBounds(int x,
int y,
int width,
int height)
Updates the bounds of the component and updates the camera accordingly. |
void |
setCamera(PCamera newCamera)
Set the camera associated with this canvas. |
void |
setDefaultRenderQuality(int defaultRenderQuality)
Set the render quality that should be used when rendering this canvas when it is not interacting or animating. |
void |
setEnabled(boolean enabled)
Override setEnabled to install/remove canvas input sources as needed. |
void |
setInteracting(boolean isInteracting)
Set if this canvas is interacting. |
void |
setInteractingRenderQuality(int interactingRenderQuality)
Set the render quality that should be used when rendering this canvas when it is interacting. |
void |
setPanEventHandler(PPanEventHandler handler)
Set the pan event handler associated with this canvas. |
void |
setZoomEventHandler(PZoomEventHandler handler)
Set the zoom event handler associated with this canvas. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final String INTERATING_CHANGED_NOTIFICATION
public static final String INTERACTING_CHANGED_NOTIFICATION
public static final String PROPERTY_INTERACTING
public static PCanvas CURRENT_ZCANVAS
| Constructor Detail |
|---|
public PCanvas()
| Method Detail |
|---|
protected PCamera createDefaultCamera()
public PPanEventHandler getPanEventHandler()
public void setPanEventHandler(PPanEventHandler handler)
handler - the new zoom event handlerpublic PZoomEventHandler getZoomEventHandler()
public void setZoomEventHandler(PZoomEventHandler handler)
handler - the new zoom event handlerpublic PCamera getCamera()
public void setCamera(PCamera newCamera)
newCamera - the camera which this PCanvas should view the scenepublic PRoot getRoot()
public PLayer getLayer()
public void addInputEventListener(PInputEventListener listener)
listener - listener to register for event notificationspublic void removeInputEventListener(PInputEventListener listener)
listener - listener to unregister from event notificationspublic boolean getInteracting()
public boolean getAnimating()
public void setInteracting(boolean isInteracting)
setInteracting in interface PComponentisInteracting - whether the PCanvas should be considered interactingpublic void setDefaultRenderQuality(int defaultRenderQuality)
defaultRenderQuality - supports PPaintContext.HIGH_QUALITY_RENDERING
or PPaintContext.LOW_QUALITY_RENDERINGpublic void setAnimatingRenderQuality(int animatingRenderQuality)
animatingRenderQuality - supports
PPaintContext.HIGH_QUALITY_RENDERING or
PPaintContext.LOW_QUALITY_RENDERINGpublic void setInteractingRenderQuality(int interactingRenderQuality)
interactingRenderQuality - supports
PPaintContext.HIGH_QUALITY_RENDERING or
PPaintContext.LOW_QUALITY_RENDERINGpublic void pushCursor(Cursor cursor)
pushCursor in interface PComponentcursor - the cursor to push onto the cursor stackpublic void popCursor()
popCursor in interface PComponentpublic void setEnabled(boolean enabled)
setEnabled in class JComponentenabled - new enable status of the Pcanvasprotected void installInputSources()
protected void removeInputSources()
protected void sendInputEventToInputManager(InputEvent event,
int type)
event - event to dispatchtype - type of event being dispatched
public void setBounds(int x,
int y,
int width,
int height)
setBounds in class Componentx - left of boundsy - top of boundswidth - width of boundsheight - height of boundspublic void repaint(PBounds bounds)
repaint in interface PComponentbounds - bounds needing repaintpublic void paintComponent(Graphics g)
paintComponent in class JComponentpublic void paintImmediately()
paintImmediately in interface PComponent
public Timer createTimer(int delay,
ActionListener listener)
delay - the number of milliseconds to wait before invoking the
listenerlistener - the listener to invoke after the delay
public int getDefaultRenderQuality()
public int getNormalRenderQuality()
public int getAnimatingRenderQuality()
public int getInteractingRenderQuality()
public PInputEventListener[] getInputEventListeners()
public void printAll(Graphics graphics)
printAll in class JComponentgraphics - Graphics context onto which to paint the scene for printing
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||