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,- java.awt.event.ActionListener,- java.awt.event.MouseListener,- java.awt.event.MouseMotionListener,- java.awt.image.ImageObserver,- java.awt.MenuContainer,- java.awt.print.Printable,- java.io.Serializable,- java.util.EventListener,- javax.accessibility.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:
- Serialized Form
 
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from class javax.swing.JPaneljavax.swing.JPanel.AccessibleJPanel
 - 
Nested classes/interfaces inherited from class javax.swing.JComponentjavax.swing.JComponent.AccessibleJComponent
 
- 
 - 
Field SummaryFields Modifier and Type Field Description protected booleanantialiasprotected VisionClientContextcontextThe current ClientContext that is set on startupComponent()protected intcursorCodeprotected java.util.Map<java.lang.String,ExtensionFunction>extensionFunctionsprotected booleanprintprotected booleanpropertiesprotected booleansaveprotected booleanshowPopupprotected booleanzoom- 
Fields 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_COMMAND
 - 
Fields inherited from class javax.swing.JComponentlistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 - 
Fields inherited from class java.awt.ComponentaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 - 
Fields inherited from interface com.inductiveautomation.vision.api.client.components.model.ComponentLifecycleCOMPONENT_RUNNING
 - 
Fields inherited from interface java.awt.image.ImageObserverABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 - 
Fields inherited from interface com.inductiveautomation.ignition.client.model.LocaleListenerLOCAL_CHANGE_EVENT
 - 
Fields inherited from interface com.inductiveautomation.vision.api.client.components.model.VisionComponentCOMPONENT_LOCKED, COMPONENT_PERMISSIONS, COMPONENT_SECURITY, COMPONENT_TRANSLATIONS
 
- 
 - 
Constructor SummaryConstructors Constructor Description PMIChartPanel(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 SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcreateChartPrintJob()Creates a print job for the chart.protected javax.swing.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.VisionClientContextgetAppContext()intgetCursorCode()intgetDataQuality()For backwards compatibility with scripts.java.util.Map<java.lang.String,ExtensionFunction>getExtensionFunctions()QualityCodegetQuality()Retrieves the data quality code.protected java.text.NumberFormatgetScientificNumberFormat()java.lang.StringgetToolTipText()java.lang.StringgetToolTipText(java.awt.event.MouseEvent event)booleanisAntialias()booleanisShowPopup()voidlocaleChanged(java.util.Locale newLocale)protected voidonShutdown()Subclasses should override this to provide shutdown logic.protected voidonStartup()Subclasses should override this to provide startup logic.protected voidpaintChildren(java.awt.Graphics g)voidprint()voidsetAntialias(boolean ignored)voidsetCursorCode(int cursorCode)voidsetDataQuality(int value)voidsetExtensionFunctions(java.util.Map<java.lang.String,ExtensionFunction> map)voidsetName(java.lang.String newName)voidsetQuality(QualityCode value)Sets the current data quality to the given valuevoidsetShowPopup(boolean showPopup)voidsetVisible(boolean visible)voidshutdownComponent()Called when the component is now shown anymore.voidstartupComponent(VisionClientContext context)Called when the component is first shown.protected java.lang.Stringtranslate(java.lang.String key)protected java.lang.StringtranslateTerm(java.lang.String term)voidupdateQuality(java.lang.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, zoomOutRange
 - 
Methods inherited from class javax.swing.JPanelgetAccessibleContext, getUI, getUIClassID, paramString, setUI
 - 
Methods 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, update
 - 
Methods 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, validateTree
 - 
Methods 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 Detail- 
contextprotected VisionClientContext context The current ClientContext that is set on startupComponent()
 - 
cursorCodeprotected int cursorCode 
 - 
antialiasprotected boolean antialias 
 - 
extensionFunctionsprotected java.util.Map<java.lang.String,ExtensionFunction> extensionFunctions 
 - 
propertiesprotected boolean properties 
 - 
saveprotected boolean save 
 - 
printprotected boolean print 
 - 
zoomprotected boolean zoom 
 - 
showPopupprotected boolean showPopup 
 
- 
 - 
Constructor Detail- 
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 Detail- 
getCursorCodepublic int getCursorCode() 
 - 
setCursorCodepublic void setCursorCode(int cursorCode) 
 - 
isShowPopuppublic boolean isShowPopup() 
 - 
setShowPopuppublic void setShowPopup(boolean showPopup) 
 - 
setVisiblepublic void setVisible(boolean visible) - Overrides:
- setVisiblein class- javax.swing.JComponent
 
 - 
setNamepublic void setName(java.lang.String newName) - Overrides:
- setNamein class- java.awt.Component
 
 - 
getToolTipTextpublic java.lang.String getToolTipText() - Overrides:
- getToolTipTextin class- javax.swing.JComponent
 
 - 
getToolTipTextpublic java.lang.String getToolTipText(java.awt.event.MouseEvent event) - Overrides:
- getToolTipTextin class- org.jfree.chart.ChartPanel
 
 - 
isAntialiaspublic boolean isAntialias() 
 - 
setAntialiaspublic void setAntialias(boolean ignored) 
 - 
doSaveAspublic void doSaveAs() throws java.io.IOExceptionOpens a file chooser and gives the user an opportunity to save the chart in PNG format.- Overrides:
- doSaveAsin class- org.jfree.chart.ChartPanel
- Throws:
- java.io.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
 
 - 
translateprotected java.lang.String translate(java.lang.String key) 
 - 
translateTermprotected java.lang.String translateTerm(java.lang.String term) 
 - 
createPopupMenuprotected javax.swing.JPopupMenu createPopupMenu(boolean properties, boolean save, boolean print, boolean zoom)Creates 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.
 
 - 
getQualitypublic QualityCode getQuality() Description 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
 
 - 
setQualitypublic void setQuality(QualityCode value) Description copied from interface:QualityMonitorSets the current data quality to the given value- Specified by:
- setQualityin interface- QualityMonitor
 
 - 
updateQualitypublic void updateQuality(java.lang.String propName, QualityCode quality)Description 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
 
 - 
paintChildrenprotected void paintChildren(java.awt.Graphics g) - Overrides:
- paintChildrenin class- javax.swing.JComponent
 
 - 
startupComponentpublic final void startupComponent(VisionClientContext context) Description 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
 
 - 
getAppContextpublic VisionClientContext 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.
 
 - 
localeChangedpublic void localeChanged(java.util.Locale newLocale) - Specified by:
- localeChangedin interface- LocaleListener
 
 - 
getScientificNumberFormatprotected java.text.NumberFormat getScientificNumberFormat() - Returns:
- A
         ScientificNumberFormatinstance with significant digits ofSIG_DIGITSand threshold ofTHRESHOLD.
 
 - 
getExtensionFunctionspublic java.util.Map<java.lang.String,ExtensionFunction> getExtensionFunctions() - Specified by:
- getExtensionFunctionsin interface- ExtensibleComponent
 
 - 
setExtensionFunctionspublic void setExtensionFunctions(java.util.Map<java.lang.String,ExtensionFunction> map) - Specified by:
- setExtensionFunctionsin interface- ExtensibleComponent
 
 
- 
 
-