jadex.micro.examples.mandelbrot
Class DisplayPanel

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by jadex.micro.examples.mandelbrot.DisplayPanel
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable

public class DisplayPanel
extends JComponent

Panel for displaying calculated results.

See Also:
Serialized Form

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
protected  boolean calculating
          Flag indicating that a calculation is in progress.
protected  Color[] colors
          The colors for drawing.
protected  AreaData data
          The latest area data used for determining original coordinates of painted regions.
protected  Point enddrag
          End point for dragging (if any).
static String HELPTEXT
          The help text.
protected  Image image
          The current image derived from the results.
protected  Point point
          The current selection start point (if any).
protected  Map progressdata
          Progress data objects, available only when calculating (progress data -> percent finished).
protected  Timer progressupdate
          Progress update timer.
protected  IServiceProvider provider
          The service provider.
protected  Rectangle range
          The current selection range (if any).
protected  Point startdrag
          Start point for dragging (if any).
 
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
DisplayPanel(IServiceProvider provider)
          Create a new display panel.
 
Method Summary
 void addProgress(ProgressData progress)
          Display intermediate calculation results.
protected  void calcArea(double x1, double x2, double y1, double y2, int sizex, int sizey)
          Calculate the given area.
protected  void calcDefaultImage()
          Set display coordinates to default values.
protected  void dragImage()
          Drag the image according to current drag settings.
protected  Rectangle getInnerBounds(boolean scrollarea)
          Get the bounds with respect to insets (if any).
 Dimension getMinimumSize()
          Get the desired size of the panel.
 Dimension getPreferredSize()
          Get the desired size of the panel.
protected  void paintComponent(Graphics g)
          Paint the results.
protected  Rectangle scaleToFit(Rectangle bounds, int iwidth, int iheight)
          Calculate draw area for image.
 void setColorScheme(Color[] scheme)
          Set the color scheme.
 void setResults(AreaData data)
          Set new results.
protected  void zoomImage(int x, int y, double factor)
          Zoom into the given location by the given factor.
protected  void zoomIntoRange()
          Zoom into the selected range.
 
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, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, 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, invalidate, 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, 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
 

Field Detail

HELPTEXT

public static final String HELPTEXT
The help text.

See Also:
Constant Field Values

provider

protected IServiceProvider provider
The service provider.


colors

protected Color[] colors
The colors for drawing.


data

protected AreaData data
The latest area data used for determining original coordinates of painted regions.


image

protected Image image
The current image derived from the results.


point

protected Point point
The current selection start point (if any).


range

protected Rectangle range
The current selection range (if any).


calculating

protected boolean calculating
Flag indicating that a calculation is in progress.


progressdata

protected Map progressdata
Progress data objects, available only when calculating (progress data -> percent finished).


progressupdate

protected Timer progressupdate
Progress update timer.


startdrag

protected Point startdrag
Start point for dragging (if any).


enddrag

protected Point enddrag
End point for dragging (if any).

Constructor Detail

DisplayPanel

public DisplayPanel(IServiceProvider provider)
Create a new display panel.

Method Detail

setResults

public void setResults(AreaData data)
Set new results.


addProgress

public void addProgress(ProgressData progress)
Display intermediate calculation results.


paintComponent

protected void paintComponent(Graphics g)
Paint the results.

Overrides:
paintComponent in class JComponent

scaleToFit

protected Rectangle scaleToFit(Rectangle bounds,
                               int iwidth,
                               int iheight)
Calculate draw area for image.


getInnerBounds

protected Rectangle getInnerBounds(boolean scrollarea)
Get the bounds with respect to insets (if any).

Parameters:
scrollarea - True when inner bounds of scroll area instead of visible window space should be considered.

getMinimumSize

public Dimension getMinimumSize()
Get the desired size of the panel.

Overrides:
getMinimumSize in class JComponent

getPreferredSize

public Dimension getPreferredSize()
Get the desired size of the panel.

Overrides:
getPreferredSize in class JComponent

setColorScheme

public void setColorScheme(Color[] scheme)
Set the color scheme.


dragImage

protected void dragImage()
Drag the image according to current drag settings.


zoomImage

protected void zoomImage(int x,
                         int y,
                         double factor)
Zoom into the given location by the given factor.


calcDefaultImage

protected void calcDefaultImage()
Set display coordinates to default values.


zoomIntoRange

protected void zoomIntoRange()
Zoom into the selected range.


calcArea

protected void calcArea(double x1,
                        double x2,
                        double y1,
                        double y2,
                        int sizex,
                        int sizey)
Calculate the given area.



Copyright © 2010. All Rights Reserved.