Class PMIComboBox
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JComboBox
-
- com.inductiveautomation.factorypmi.application.components.PMIComboBox
-
- All Implemented Interfaces:
DynamicPropertyProvider
,LocaleListener
,MutableDynamicPropertyProvider
,StyleProvider
,ComponentLifecycle
,EnabledEx
,QualityMonitor
,VisionComponent
,java.awt.event.ActionListener
,java.awt.image.ImageObserver
,java.awt.ItemSelectable
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,javax.swing.event.ListDataListener
public class PMIComboBox extends javax.swing.JComboBox implements MutableDynamicPropertyProvider, StyleProvider, VisionComponent, EnabledEx, LocaleListener
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
PMIComboBox.DataSetComboBoxModel
class
PMIComboBox.DataSetListCellRenderer
-
Nested classes/interfaces inherited from class javax.swing.JComboBox
javax.swing.JComboBox.AccessibleJComboBox, javax.swing.JComboBox.KeySelectionManager
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
antialias
protected VisionClientContext
context
The current ClientContext that is set on startupComponent()protected int
cursorCode
protected Dataset
data
static java.lang.String
LABEL_FORMAT
static int
LIST
static int
MODE_EDITABLE
static int
MODE_LENIENT
static int
MODE_STRICT
protected PMIComboBox.DataSetComboBoxModel
model
protected java.awt.Color
selectionBackground
static int
TABLE
-
Fields inherited from class javax.swing.JComboBox
actionCommand, dataModel, editor, isEditable, keySelectionManager, lightWeightPopupEnabled, maximumRowCount, renderer, selectedItemReminder
-
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 com.inductiveautomation.vision.api.client.components.model.ComponentLifecycle
COMPONENT_RUNNING
-
Fields inherited from interface com.inductiveautomation.vision.api.client.components.model.EnabledEx
DISABLED_BY_PERMISSIONS
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from interface com.inductiveautomation.vision.api.client.binding.MutableDynamicPropertyProvider
RESERVED_SET_KEY
-
Fields inherited from interface com.inductiveautomation.vision.api.client.components.model.VisionComponent
COMPONENT_LOCKED, COMPONENT_PERMISSIONS, COMPONENT_SECURITY, COMPONENT_TRANSLATIONS
-
-
Constructor Summary
Constructors Constructor Description PMIComboBox()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
contentsChanged(javax.swing.event.ListDataEvent e)
void
evaluateEnabled()
VisionClientContext
getAppContext()
int
getCursorCode()
Dataset
getData()
int
getDataQuality()
For backwards compatibility with scripts.java.util.TreeMap<java.lang.String,DynamicPropertyDescriptor>
getDynamicProps()
java.lang.String
getHideTableColumns()
int
getHorizontalAlignment()
int
getMaxTableHeight()
int
getMaxTableWidth()
int
getMode()
java.lang.String
getNoSelectionLabel()
java.lang.String
getNoSelectionString()
int
getNoSelectionValue()
DynamicPropertyDescriptor[]
getProperties()
java.lang.Object
getPropertyValue(java.lang.String name)
QualityCode
getQuality()
Retrieves the data quality code.com.inductiveautomation.factorypmi.application.components.PMIComboBox.DataSetComboBoxModel.CBSelection
getSelectedItem()
java.lang.String
getSelectedLabel()
java.lang.String
getSelectedStringValue()
java.lang.Integer
getSelectedValue()
java.awt.Color
getSelectionBackground()
int
getSelectionMode()
Dataset
getStyles()
java.lang.String
getToolTipText()
Dataset
getTranslatedData()
int
getVerticalAlignment()
boolean
isAntialias()
boolean
isComponentEnabled()
boolean
isOpaque()
boolean
isPropertyDefined(java.lang.String name)
boolean
isShowTableHeader()
void
localeChanged(java.util.Locale newLocale)
protected void
paintChildren(java.awt.Graphics g)
protected void
paintComponent(java.awt.Graphics g)
void
setAntialias(boolean ignored)
void
setComponentEnabled(boolean componentEnabled)
void
setCursorCode(int cursorCode)
void
setData(Dataset set)
void
setDataQuality(int value)
void
setDynamicProps(java.util.TreeMap<java.lang.String,DynamicPropertyDescriptor> map)
void
setHideTableColumns(java.lang.String hideTableColumns)
void
setHorizontalAlignment(int horizontalAlignment)
void
setMaxTableHeight(int maxTableHeight)
void
setMaxTableWidth(int maxTableWidth)
void
setMode(int mode)
void
setName(java.lang.String newName)
protected void
setNoSelection(com.inductiveautomation.factorypmi.application.components.PMIComboBox.DataSetComboBoxModel.CBSelection sel)
void
setNoSelectionLabel(java.lang.String noSelectionLabel)
void
setNoSelectionString(java.lang.String noSelectionString)
void
setNoSelectionValue(int noSelectionValue)
void
setPropertyValue(java.lang.String name, java.lang.Object value)
void
setQuality(QualityCode value)
Sets the current data quality to the given valuevoid
setSelectedItem(java.lang.Object anObject)
void
setSelectedLabel(java.lang.String value)
void
setSelectedStringValue(java.lang.String value)
void
setSelectedValue(java.lang.Integer value)
void
setSelectedValue(java.lang.Number n)
void
setSelectionBackground(java.awt.Color selectionColor)
void
setSelectionMode(int selectionMode)
void
setShowTableHeader(boolean showTableHeader)
void
setStyles(Dataset styleDS)
void
setToolTipText(java.lang.String text)
void
setVerticalAlignment(int verticalAlignment)
void
setVisible(boolean visible)
void
shutdownComponent()
Called when the component is now shown anymore.void
startupComponent(VisionClientContext context)
Called when the component is first shown.protected java.lang.String
translateTerm(java.lang.String term)
void
updateQuality(java.lang.String propName, QualityCode quality)
Updates the quality for the given property name.-
Methods inherited from class javax.swing.JComboBox
actionPerformed, actionPropertyChanged, addActionListener, addItem, addItemListener, addPopupMenuListener, configureEditor, configurePropertiesFromAction, createActionPropertyChangeListener, createDefaultKeySelectionManager, fireActionEvent, fireItemStateChanged, firePopupMenuCanceled, firePopupMenuWillBecomeInvisible, firePopupMenuWillBecomeVisible, getAccessibleContext, getAction, getActionCommand, getActionListeners, getEditor, getItemAt, getItemCount, getItemListeners, getKeySelectionManager, getMaximumRowCount, getModel, getPopupMenuListeners, getPrototypeDisplayValue, getRenderer, getSelectedIndex, getSelectedObjects, getUI, getUIClassID, hidePopup, insertItemAt, installAncestorListener, intervalAdded, intervalRemoved, isEditable, isLightWeightPopupEnabled, isPopupVisible, paramString, processKeyBinding, processKeyEvent, removeActionListener, removeAllItems, removeItem, removeItemAt, removeItemListener, removePopupMenuListener, selectedItemChanged, selectWithKeyChar, setAction, setActionCommand, setEditable, setEditor, setEnabled, setKeySelectionManager, setLightWeightPopupEnabled, setMaximumRowCount, setModel, setPopupVisible, setPrototypeDisplayValue, setRenderer, setSelectedIndex, setUI, showPopup, updateUI
-
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, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, 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, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, update
-
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, 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
-
MODE_STRICT
public static final int MODE_STRICT
- See Also:
- Constant Field Values
-
MODE_LENIENT
public static final int MODE_LENIENT
- See Also:
- Constant Field Values
-
MODE_EDITABLE
public static final int MODE_EDITABLE
- See Also:
- Constant Field Values
-
LIST
public static final int LIST
- See Also:
- Constant Field Values
-
TABLE
public static final int TABLE
- See Also:
- Constant Field Values
-
LABEL_FORMAT
public static final java.lang.String LABEL_FORMAT
- See Also:
- Constant Field Values
-
model
protected PMIComboBox.DataSetComboBoxModel model
-
selectionBackground
protected java.awt.Color selectionBackground
-
data
protected Dataset data
-
cursorCode
protected int cursorCode
-
antialias
protected boolean antialias
-
context
protected VisionClientContext context
The current ClientContext that is set on startupComponent()
-
-
Method Detail
-
translateTerm
protected java.lang.String translateTerm(java.lang.String term)
-
getCursorCode
public int getCursorCode()
-
setCursorCode
public void setCursorCode(int cursorCode)
-
isComponentEnabled
public boolean isComponentEnabled()
- Specified by:
isComponentEnabled
in interfaceEnabledEx
-
setComponentEnabled
public void setComponentEnabled(boolean componentEnabled)
- Specified by:
setComponentEnabled
in interfaceEnabledEx
-
evaluateEnabled
public void evaluateEnabled()
- Specified by:
evaluateEnabled
in interfaceEnabledEx
-
setVisible
public void setVisible(boolean visible)
- Overrides:
setVisible
in classjavax.swing.JComponent
-
setSelectedItem
public void setSelectedItem(java.lang.Object anObject)
- Overrides:
setSelectedItem
in classjavax.swing.JComboBox
-
contentsChanged
public void contentsChanged(javax.swing.event.ListDataEvent e)
- Specified by:
contentsChanged
in interfacejavax.swing.event.ListDataListener
- Overrides:
contentsChanged
in classjavax.swing.JComboBox
-
setToolTipText
public void setToolTipText(java.lang.String text)
- Overrides:
setToolTipText
in classjavax.swing.JComponent
-
getToolTipText
public java.lang.String getToolTipText()
- Overrides:
getToolTipText
in classjavax.swing.JComponent
-
isAntialias
public boolean isAntialias()
-
setAntialias
public void setAntialias(boolean ignored)
-
getMode
public int getMode()
-
setMode
public void setMode(int mode)
-
setName
public void setName(java.lang.String newName)
- Overrides:
setName
in classjava.awt.Component
-
getData
public Dataset getData()
-
getTranslatedData
public Dataset getTranslatedData()
-
setData
public void setData(Dataset set)
-
getSelectedValue
public java.lang.Integer getSelectedValue()
-
getSelectedStringValue
public java.lang.String getSelectedStringValue()
-
getSelectedLabel
public java.lang.String getSelectedLabel()
-
getSelectedItem
public com.inductiveautomation.factorypmi.application.components.PMIComboBox.DataSetComboBoxModel.CBSelection getSelectedItem()
- Overrides:
getSelectedItem
in classjavax.swing.JComboBox
-
setSelectedValue
public void setSelectedValue(java.lang.Integer value)
-
setSelectedStringValue
public void setSelectedStringValue(java.lang.String value)
-
setSelectedValue
public void setSelectedValue(java.lang.Number n) throws org.python.core.PyIgnoreMethodTag
- Throws:
org.python.core.PyIgnoreMethodTag
-
setSelectedLabel
public void setSelectedLabel(java.lang.String value)
-
localeChanged
public void localeChanged(java.util.Locale newLocale)
- Specified by:
localeChanged
in interfaceLocaleListener
-
isOpaque
public boolean isOpaque()
- Overrides:
isOpaque
in classjavax.swing.JComponent
-
getHorizontalAlignment
public int getHorizontalAlignment()
-
setHorizontalAlignment
public void setHorizontalAlignment(int horizontalAlignment)
-
getVerticalAlignment
public int getVerticalAlignment()
-
setVerticalAlignment
public void setVerticalAlignment(int verticalAlignment)
-
getSelectionBackground
public java.awt.Color getSelectionBackground()
-
setSelectionBackground
public void setSelectionBackground(java.awt.Color selectionColor)
-
setNoSelection
protected void setNoSelection(com.inductiveautomation.factorypmi.application.components.PMIComboBox.DataSetComboBoxModel.CBSelection sel)
-
getNoSelectionValue
public int getNoSelectionValue()
-
setNoSelectionValue
public void setNoSelectionValue(int noSelectionValue)
-
getNoSelectionString
public java.lang.String getNoSelectionString()
-
setNoSelectionString
public void setNoSelectionString(java.lang.String noSelectionString)
-
getNoSelectionLabel
public java.lang.String getNoSelectionLabel()
-
setNoSelectionLabel
public void setNoSelectionLabel(java.lang.String noSelectionLabel)
-
isShowTableHeader
public boolean isShowTableHeader()
-
setShowTableHeader
public void setShowTableHeader(boolean showTableHeader)
-
getHideTableColumns
public java.lang.String getHideTableColumns()
-
setHideTableColumns
public void setHideTableColumns(java.lang.String hideTableColumns)
-
getMaxTableWidth
public int getMaxTableWidth()
-
setMaxTableWidth
public void setMaxTableWidth(int maxTableWidth)
-
getMaxTableHeight
public int getMaxTableHeight()
-
setMaxTableHeight
public void setMaxTableHeight(int maxTableHeight)
-
getSelectionMode
public int getSelectionMode()
-
setSelectionMode
public void setSelectionMode(int selectionMode)
-
getDynamicProps
public java.util.TreeMap<java.lang.String,DynamicPropertyDescriptor> getDynamicProps()
- Specified by:
getDynamicProps
in interfaceMutableDynamicPropertyProvider
-
setDynamicProps
public void setDynamicProps(java.util.TreeMap<java.lang.String,DynamicPropertyDescriptor> map)
- Specified by:
setDynamicProps
in interfaceMutableDynamicPropertyProvider
-
setPropertyValue
public void setPropertyValue(java.lang.String name, java.lang.Object value) throws java.lang.ClassCastException
- Specified by:
setPropertyValue
in interfaceDynamicPropertyProvider
- Throws:
java.lang.ClassCastException
-
getPropertyValue
public java.lang.Object getPropertyValue(java.lang.String name)
- Specified by:
getPropertyValue
in interfaceDynamicPropertyProvider
-
getProperties
public DynamicPropertyDescriptor[] getProperties()
- Specified by:
getProperties
in interfaceDynamicPropertyProvider
-
isPropertyDefined
public boolean isPropertyDefined(java.lang.String name)
- Specified by:
isPropertyDefined
in interfaceDynamicPropertyProvider
-
getQuality
public QualityCode getQuality()
Description copied from interface:QualityMonitor
Retrieves the data quality code.- Specified by:
getQuality
in interfaceQualityMonitor
-
getDataQuality
public int getDataQuality()
Description copied from interface:QualityMonitor
For 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:
getDataQuality
in interfaceQualityMonitor
-
setDataQuality
public void setDataQuality(int value)
- Specified by:
setDataQuality
in interfaceQualityMonitor
-
setQuality
public void setQuality(QualityCode value)
Description copied from interface:QualityMonitor
Sets the current data quality to the given value- Specified by:
setQuality
in interfaceQualityMonitor
-
updateQuality
public void updateQuality(java.lang.String propName, QualityCode quality)
Description copied from interface:QualityMonitor
Updates 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:
updateQuality
in interfaceQualityMonitor
-
paintChildren
protected void paintChildren(java.awt.Graphics g)
- Overrides:
paintChildren
in classjavax.swing.JComponent
-
paintComponent
protected void paintComponent(java.awt.Graphics g)
- Overrides:
paintComponent
in classjavax.swing.JComponent
-
getStyles
public Dataset getStyles()
- Specified by:
getStyles
in interfaceStyleProvider
-
setStyles
public void setStyles(Dataset styleDS)
- Specified by:
setStyles
in interfaceStyleProvider
-
startupComponent
public final void startupComponent(VisionClientContext context)
Description copied from interface:ComponentLifecycle
Called when the component is first shown.- Specified by:
startupComponent
in interfaceComponentLifecycle
-
shutdownComponent
public final void shutdownComponent()
Description copied from interface:ComponentLifecycle
Called when the component is now shown anymore. Any long-running processes should be stopped. All bindings will have also been shutdown.- Specified by:
shutdownComponent
in interfaceComponentLifecycle
-
getAppContext
public VisionClientContext getAppContext()
- Specified by:
getAppContext
in interfaceComponentLifecycle
-
-