Package jadex.micro.mandelbrot.display
Class DisplayPanel
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
jadex.micro.mandelbrot.display.DisplayPanel
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
Panel for displaying calculated results.
- See Also:
-
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
FieldsModifier and TypeFieldDescriptionprotected jadex.core.IExternalAccess
The service provider.protected List
<IFractalAlgorithm> protected boolean
Flag indicating that a calculation is in progress.protected Color[]
The colors for drawing.protected AreaData
The latest area data used for determining original coordinates of painted regions.protected boolean
protected String
The display id.protected Point
End point for dragging (if any).protected IGenerateService
The generate service.static final String
The help text.protected Image
The current image derived from the results.protected Point
The current selection start point (if any).protected Set
<ProgressData> Progress data objects, available only when calculating (progress data -> percent finished).protected Rectangle
The current selection range (if any).protected Point
Start point for dragging (if any).Fields inherited from class javax.swing.JComponent
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
accessibleContext, 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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addDataChunk
(PartDataChunk data) Set new results.void
addProgress
(ProgressData part) 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
Set display coordinates to default values.void
Subscribe for updates when display service is available.protected void
Drag the image according to current drag settings.protected Rectangle
getInnerBounds
(boolean scrollarea) Get the bounds with respect to insets (if any).Get the desired size of the panel.Get the desired size of the panel.static void
protected void
Paint the results.protected Rectangle
scaleToFit
(Rectangle bounds, int iwidth, int iheight) Calculate draw area for image.void
setColorScheme
(Color[] scheme, boolean cycle) 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
Zoom into the selected range.Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, 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, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, 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, 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, getAccessibleContext, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
HELPTEXT
The help text.- See Also:
-
agent
protected jadex.core.IExternalAccess agentThe service provider. -
colors
The colors for drawing. -
data
The latest area data used for determining original coordinates of painted regions. -
image
The current image derived from the results. -
point
The current selection start point (if any). -
range
The current selection range (if any). -
calculating
protected boolean calculatingFlag indicating that a calculation is in progress. -
progressdata
Progress data objects, available only when calculating (progress data -> percent finished). -
startdrag
Start point for dragging (if any). -
enddrag
End point for dragging (if any). -
displayid
The display id. -
genservice
The generate service. -
dirty
protected boolean dirty -
algos
-
-
Constructor Details
-
DisplayPanel
public DisplayPanel(jadex.core.IExternalAccess agent) Create a new display panel.
-
-
Method Details
-
displayServiceAvailable
Subscribe for updates when display service is available.- Parameters:
ds
- The display service.
-
setResults
Set new results. -
addProgress
Display intermediate calculation results. -
addDataChunk
Set new results. -
paintComponent
Paint the results.- Overrides:
paintComponent
in classJComponent
-
scaleToFit
Calculate draw area for image. -
getInnerBounds
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
Get the desired size of the panel.- Overrides:
getMinimumSize
in classJComponent
-
getPreferredSize
Get the desired size of the panel.- Overrides:
getPreferredSize
in classJComponent
-
setColorScheme
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. -
main
-