Class PMIChartPanel
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
org.jfree.chart.ChartPanel
com.inductiveautomation.factorypmi.application.components.chart.PMIChartPanel
- All Implemented Interfaces:
- LocaleListener,- ComponentLifecycle,- ExtensibleComponent,- QualityMonitor,- VisionComponent,- ActionListener,- MouseListener,- MouseMotionListener,- ImageObserver,- MenuContainer,- Printable,- Serializable,- EventListener,- Accessible,- org.jfree.chart.event.ChartChangeListener,- org.jfree.chart.event.ChartProgressListener
- Direct Known Subclasses:
- AbstractVisionChartComponent,- PMIBarChart,- PMIBoxWhiskerChart,- PMIGanttChart,- PMILineChartPanel,- PMIPieChart,- PMIStatusChart
public class PMIChartPanel
extends org.jfree.chart.ChartPanel
implements VisionComponent, LocaleListener, ExtensibleComponent
A subclass of JFreeChart's ChartPanel that overrides doSaveAs() and createChartPrintJob() to have FPMI compatible
 popup windows for FSE mode.
- See Also:
- 
Nested Class SummaryNested classes/interfaces inherited from class javax.swing.JPanelJPanel.AccessibleJPanelNested classes/interfaces inherited from class javax.swing.JComponentJComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.ContainerContainer.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.ComponentComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected booleanprotected VisionClientContextThe current ClientContext that is set on startupComponent()protected intprotected Map<String,ExtensionFunction> protected booleanprotected booleanprotected booleanprotected booleanprotected booleanFields inherited from class org.jfree.chart.ChartPanelDEFAULT_BUFFER_USED, DEFAULT_HEIGHT, DEFAULT_MAXIMUM_DRAW_HEIGHT, DEFAULT_MAXIMUM_DRAW_WIDTH, DEFAULT_MINIMUM_DRAW_HEIGHT, DEFAULT_MINIMUM_DRAW_WIDTH, DEFAULT_WIDTH, DEFAULT_ZOOM_TRIGGER_DISTANCE, localizationResources, PRINT_COMMAND, PROPERTIES_COMMAND, SAVE_COMMAND, ZOOM_IN_BOTH_COMMAND, ZOOM_IN_DOMAIN_COMMAND, ZOOM_IN_RANGE_COMMAND, ZOOM_OUT_BOTH_COMMAND, ZOOM_OUT_DOMAIN_COMMAND, ZOOM_OUT_RANGE_COMMAND, ZOOM_RESET_BOTH_COMMAND, ZOOM_RESET_DOMAIN_COMMAND, ZOOM_RESET_RANGE_COMMANDFields inherited from class javax.swing.JComponentlistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class java.awt.ComponentaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface com.inductiveautomation.vision.api.client.components.model.ComponentLifecycleCOMPONENT_RUNNINGFields inherited from interface java.awt.image.ImageObserverABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTHFields inherited from interface com.inductiveautomation.ignition.client.model.LocaleListenerLOCAL_CHANGE_EVENTFields inherited from interface java.awt.print.PrintableNO_SUCH_PAGE, PAGE_EXISTSFields inherited from interface com.inductiveautomation.vision.api.client.components.model.VisionComponentCOMPONENT_LOCKED, COMPONENT_PERMISSIONS, COMPONENT_SECURITY, COMPONENT_TRANSLATIONS
- 
Constructor SummaryConstructorsConstructorDescriptionPMIChartPanel(org.jfree.chart.JFreeChart chart) PMIChartPanel(org.jfree.chart.JFreeChart chart, boolean properties, boolean save, boolean print, boolean zoom, boolean tooltips) PMIChartPanel(org.jfree.chart.JFreeChart chart, boolean properties, boolean save, boolean print, boolean zoom, boolean tooltips, int minimumDrawWidth, int minimumDrawHeight) PMIChartPanel(org.jfree.chart.JFreeChart chart, int minimumDrawWidth, int minimumDrawHeight) PMIChartPanel(org.jfree.chart.JFreeChart chart, int width, int height, int minimumDrawWidth, int minimumDrawHeight, int maximumDrawWidth, int maximumDrawHeight, boolean useBuffer, boolean properties, boolean save, boolean print, boolean zoom, boolean tooltips) 
- 
Method SummaryModifier and TypeMethodDescriptionvoidCreates a print job for the chart.protected JPopupMenucreatePopupMenu(boolean properties, boolean save, boolean print, boolean zoom) Creates a popup menu for the panel.protected voiddisplayPopupMenu(int x, int y) The idea is to modify the zooming options depending on the type of chart being displayed by the panel.voiddoSaveAs()Opens a file chooser and gives the user an opportunity to save the chart in PNG format.intintFor backwards compatibility with scripts.Retrieves the data quality code.protected NumberFormatgetToolTipText(MouseEvent event) booleanbooleanvoidlocaleChanged(Locale newLocale) protected voidSubclasses should override this to provide shutdown logic.protected voidSubclasses should override this to provide startup logic.protected voidvoidprint()voidsetAntialias(boolean ignored) voidsetCursorCode(int cursorCode) voidsetDataQuality(int value) voidvoidvoidsetQuality(QualityCode value) Sets the current data quality to the given valuevoidsetShowPopup(boolean showPopup) voidsetVisible(boolean visible) final voidCalled when the component is now shown anymore.final voidstartupComponent(VisionClientContext context) Called when the component is first shown.protected Stringprotected StringtranslateTerm(String term) voidupdateQuality(String propName, QualityCode quality) Updates the quality for the given property name.Methods inherited from class org.jfree.chart.ChartPanelactionPerformed, addChartMouseListener, chartChanged, chartProgress, doEditChartProperties, getAnchor, getChart, getChartRenderingInfo, getDefaultDirectoryForSaveAs, getDismissDelay, getEntityForPoint, getFillZoomRectangle, getHorizontalAxisTrace, getHorizontalTraceLine, getInitialDelay, getListeners, getMaximumDrawHeight, getMaximumDrawWidth, getMinimumDrawHeight, getMinimumDrawWidth, getPopupMenu, getRefreshBuffer, getReshowDelay, getScaleX, getScaleY, getScreenDataArea, getScreenDataArea, getVerticalAxisTrace, getVerticalTraceLine, getZoomAroundAnchor, getZoomInFactor, getZoomOutFactor, getZoomTriggerDistance, isDomainZoomable, isEnforceFileExtensions, isRangeZoomable, mouseClicked, mouseDragged, mouseEntered, mouseExited, mouseMoved, mousePressed, mouseReleased, paintComponent, print, removeChartMouseListener, restoreAutoBounds, restoreAutoDomainBounds, restoreAutoRangeBounds, scale, setAnchor, setChart, setDefaultDirectoryForSaveAs, setDismissDelay, setDisplayToolTips, setDomainZoomable, setEnforceFileExtensions, setFillZoomRectangle, setHorizontalAxisTrace, setHorizontalTraceLine, setInitialDelay, setMaximumDrawHeight, setMaximumDrawWidth, setMinimumDrawHeight, setMinimumDrawWidth, setMouseZoomable, setMouseZoomable, setPopupMenu, setRangeZoomable, setRefreshBuffer, setReshowDelay, setVerticalAxisTrace, setVerticalTraceLine, setZoomAroundAnchor, setZoomInFactor, setZoomOutFactor, setZoomTriggerDistance, translateJava2DToScreen, translateScreenToJava2D, updateUI, zoom, zoomInBoth, zoomInDomain, zoomInRange, zoomOutBoth, zoomOutDomain, zoomOutRangeMethods inherited from class javax.swing.JPanelgetAccessibleContext, getUI, getUIClassID, paramString, setUIMethods inherited from class javax.swing.JComponentaddAncestorListener, 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, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintImmediately, paintImmediately, 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, unregisterKeyboardAction, updateMethods inherited from class java.awt.Containeradd, 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, validateTreeMethods inherited from class java.awt.Componentaction, 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, 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, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
- 
Field Details- 
contextThe current ClientContext that is set on startupComponent()
- 
cursorCodeprotected int cursorCode
- 
antialiasprotected boolean antialias
- 
extensionFunctions
- 
propertiesprotected boolean properties
- 
saveprotected boolean save
- 
printprotected boolean print
- 
zoomprotected boolean zoom
- 
showPopupprotected boolean showPopup
 
- 
- 
Constructor Details- 
PMIChartPanelpublic PMIChartPanel(org.jfree.chart.JFreeChart chart) 
- 
PMIChartPanelpublic PMIChartPanel(org.jfree.chart.JFreeChart chart, int minimumDrawWidth, int minimumDrawHeight) 
- 
PMIChartPanelpublic PMIChartPanel(org.jfree.chart.JFreeChart chart, boolean properties, boolean save, boolean print, boolean zoom, boolean tooltips) 
- 
PMIChartPanelpublic PMIChartPanel(org.jfree.chart.JFreeChart chart, boolean properties, boolean save, boolean print, boolean zoom, boolean tooltips, int minimumDrawWidth, int minimumDrawHeight) 
- 
PMIChartPanelpublic PMIChartPanel(org.jfree.chart.JFreeChart chart, int width, int height, int minimumDrawWidth, int minimumDrawHeight, int maximumDrawWidth, int maximumDrawHeight, boolean useBuffer, boolean properties, boolean save, boolean print, boolean zoom, boolean tooltips) 
 
- 
- 
Method Details- 
getCursorCodepublic int getCursorCode()
- 
setCursorCodepublic void setCursorCode(int cursorCode) 
- 
isShowPopuppublic boolean isShowPopup()
- 
setShowPopuppublic void setShowPopup(boolean showPopup) 
- 
setVisiblepublic void setVisible(boolean visible) - Overrides:
- setVisiblein class- JComponent
 
- 
setName
- 
getToolTipText- Overrides:
- getToolTipTextin class- JComponent
 
- 
getToolTipText- Overrides:
- getToolTipTextin class- org.jfree.chart.ChartPanel
 
- 
isAntialiaspublic boolean isAntialias()
- 
setAntialiaspublic void setAntialias(boolean ignored) 
- 
doSaveAsOpens a file chooser and gives the user an opportunity to save the chart in PNG format.- Overrides:
- doSaveAsin class- org.jfree.chart.ChartPanel
- Throws:
- IOException- if there is an I/O error.
 
- 
printpublic void print()
- 
createChartPrintJobpublic void createChartPrintJob()Creates a print job for the chart.- Overrides:
- createChartPrintJobin class- org.jfree.chart.ChartPanel
 
- 
translate
- 
translateTerm
- 
createPopupMenuCreates a popup menu for the panel. Overridden here to get the localized properties from BundleUtil.- Overrides:
- createPopupMenuin class- org.jfree.chart.ChartPanel
- Parameters:
- properties- include a menu item for the chart property editor.
- save- include a menu item for saving the chart.
- print- include a menu item for printing the chart.
- zoom- include menu items for zooming.
- Returns:
- The popup menu.
 
- 
getQualityDescription copied from interface:QualityMonitorRetrieves the data quality code.- Specified by:
- getQualityin interface- QualityMonitor
 
- 
getDataQualitypublic int getDataQuality()Description copied from interface:QualityMonitorFor backwards compatibility with scripts. Would be awesome if this could just be a default method, but there's a bug (JDK-8071693) that makes that not work with property introspection.- Specified by:
- getDataQualityin interface- QualityMonitor
 
- 
setDataQualitypublic void setDataQuality(int value) - Specified by:
- setDataQualityin interface- QualityMonitor
 
- 
setQualityDescription copied from interface:QualityMonitorSets the current data quality to the given value- Specified by:
- setQualityin interface- QualityMonitor
 
- 
updateQualityDescription copied from interface:QualityMonitorUpdates the quality for the given property name. The monitor will then evaluate a new quality based on the quality of its other properties. Overall, the worst quality is chosen.- Specified by:
- updateQualityin interface- QualityMonitor
 
- 
paintChildren- Overrides:
- paintChildrenin class- JComponent
 
- 
startupComponentDescription copied from interface:ComponentLifecycleCalled when the component is first shown.- Specified by:
- startupComponentin interface- ComponentLifecycle
 
- 
shutdownComponentpublic final void shutdownComponent()Description copied from interface:ComponentLifecycleCalled when the component is now shown anymore. Any long-running processes should be stopped. All bindings will have also been shutdown.- Specified by:
- shutdownComponentin interface- ComponentLifecycle
 
- 
getAppContext- Specified by:
- getAppContextin interface- ComponentLifecycle
 
- 
onStartupprotected void onStartup()Subclasses should override this to provide startup logic.
- 
onShutdownprotected void onShutdown()Subclasses should override this to provide shutdown logic.
- 
displayPopupMenuprotected void displayPopupMenu(int x, int y) The idea is to modify the zooming options depending on the type of chart being displayed by the panel.- Overrides:
- displayPopupMenuin class- org.jfree.chart.ChartPanel
- Parameters:
- x- horizontal position of the popup.
- y- vertical position of the popup.
 
- 
localeChanged- Specified by:
- localeChangedin interface- LocaleListener
 
- 
getScientificNumberFormat- Returns:
- A
         ScientificNumberFormatinstance with significant digits ofSIG_DIGITSand threshold ofTHRESHOLD.
 
- 
getExtensionFunctions- Specified by:
- getExtensionFunctionsin interface- ExtensibleComponent
 
- 
setExtensionFunctions- Specified by:
- setExtensionFunctionsin interface- ExtensibleComponent
 
 
-