Package com.inductiveautomation.rm.swing
Class RJBrowser
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JScrollPane
-
- com.inductiveautomation.rm.swing.RJBrowser
-
- All Implemented Interfaces:
java.awt.image.ImageObserver,java.awt.MenuContainer,java.io.Serializable,javax.accessibility.Accessible,javax.swing.ScrollPaneConstants
- Direct Known Subclasses:
KeysBrowser
public class RJBrowser extends javax.swing.JScrollPaneThis component displays a hierarchy of data like a JTree, however, it does it with a number of distinct JTables layed out horizontally.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classRJBrowser.BrowserColumnTableModelAn inner class to represent Browser selection.static interfaceRJBrowser.BrowserModel<T>AbstractBrowserModel - A public interface for controlling a browser.-
Nested classes/interfaces inherited from class javax.swing.JScrollPane
javax.swing.JScrollPane.AccessibleJScrollPane, javax.swing.JScrollPane.ScrollBar
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
-
Fields inherited from class javax.swing.JScrollPane
columnHeader, horizontalScrollBar, horizontalScrollBarPolicy, lowerLeft, lowerRight, rowHeader, upperLeft, upperRight, verticalScrollBar, verticalScrollBarPolicy, viewport
-
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
-
Fields inherited from interface javax.swing.ScrollPaneConstants
COLUMN_HEADER, HORIZONTAL_SCROLLBAR, HORIZONTAL_SCROLLBAR_ALWAYS, HORIZONTAL_SCROLLBAR_AS_NEEDED, HORIZONTAL_SCROLLBAR_NEVER, HORIZONTAL_SCROLLBAR_POLICY, LOWER_LEADING_CORNER, LOWER_LEFT_CORNER, LOWER_RIGHT_CORNER, LOWER_TRAILING_CORNER, ROW_HEADER, UPPER_LEADING_CORNER, UPPER_LEFT_CORNER, UPPER_RIGHT_CORNER, UPPER_TRAILING_CORNER, VERTICAL_SCROLLBAR, VERTICAL_SCROLLBAR_ALWAYS, VERTICAL_SCROLLBAR_AS_NEEDED, VERTICAL_SCROLLBAR_NEVER, VERTICAL_SCROLLBAR_POLICY, VIEWPORT
-
-
Constructor Summary
Constructors Constructor Description RJBrowser()Creates a new browser.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected javax.swing.JScrollPanecreateColumn()Creates a new browser column.protected javax.swing.JTablecreateColumnTable()Creates a new browser column table.protected javax.swing.table.TableCellRenderercreateTableCellRenderer()Returns the browser table cell renderer.javax.swing.IcongetBranchIcon(java.lang.Object anObj)Returns the icon to indicate branch nodes in a browser (right arrow by default).javax.swing.JTablegetColumn(int anIndex)Returns the specific column table at the given index.intgetColumnCount()Returns the number of columns currently in the browser.intgetColumnCountPreferred()Returns the number of desired columns, based on the currently selected column.RJBrowser.BrowserModelgetModel()Returns the current browser model.java.lang.StringgetPath()Returns the path constructed by appending the selected row in each column by a dot.java.lang.StringgetPath(java.lang.String aSeparator)Returns the path constructed by appending the selected row in each column by a dot.intgetSelectedColumnIndex()Returns the selected column index.java.lang.ObjectgetSelectedItem()Returns the selected item.javax.swing.table.TableCellRenderergetTableCellRenderer()Returns the browser table cell renderer.intgetVisibleColumnCount()Returns the number of visible columns in the browser.booleanisSelectedLeaf()Returns whether selected item is leaf.voidreloadColumns(int aStartIndex)Reloads columns from given index.voidsetBounds(int x, int y, int width, int height)Overrides setBounds to reset model.voidsetBranchIcon(javax.swing.Icon anIcon)Sets the default icon to indicate branch nodes in a browser.protected voidsetColumnCount(int aValue)Sets the number of columns.voidsetModel(RJBrowser.BrowserModel aModel)Reconfigures browser for given model.protected voidsetSelectedColumnIndex(int anIndex)Sets the selected column index.voidsetTableCellRenderer(javax.swing.table.TableCellRenderer aTableCellRenderer)Sets the browser table cell renderer.voidsetVisibleColumnCount(int aValue)Sets the number of visible columns in the browser.-
Methods inherited from class javax.swing.JScrollPane
createHorizontalScrollBar, createVerticalScrollBar, createViewport, getAccessibleContext, getColumnHeader, getCorner, getHorizontalScrollBar, getHorizontalScrollBarPolicy, getRowHeader, getUI, getUIClassID, getVerticalScrollBar, getVerticalScrollBarPolicy, getViewport, getViewportBorder, getViewportBorderBounds, isValidateRoot, isWheelScrollingEnabled, paramString, setColumnHeader, setColumnHeaderView, setComponentOrientation, setCorner, setHorizontalScrollBar, setHorizontalScrollBarPolicy, setLayout, setRowHeader, setRowHeaderView, setUI, setVerticalScrollBar, setVerticalScrollBarPolicy, setViewport, setViewportBorder, setViewportView, setWheelScrollingEnabled, 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, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, paint, paintBorder, paintChildren, paintComponent, 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, setVisible, 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, 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, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Method Detail
-
getModel
public RJBrowser.BrowserModel getModel()
Returns the current browser model.
-
setModel
public void setModel(RJBrowser.BrowserModel aModel)
Reconfigures browser for given model.
-
getPath
public java.lang.String getPath()
Returns the path constructed by appending the selected row in each column by a dot.
-
getPath
public java.lang.String getPath(java.lang.String aSeparator)
Returns the path constructed by appending the selected row in each column by a dot.
-
getSelectedItem
@Nullable public java.lang.Object getSelectedItem()
Returns the selected item.
-
isSelectedLeaf
public boolean isSelectedLeaf()
Returns whether selected item is leaf.
-
getColumnCount
public int getColumnCount()
Returns the number of columns currently in the browser.
-
setColumnCount
protected void setColumnCount(int aValue)
Sets the number of columns.
-
getColumnCountPreferred
public int getColumnCountPreferred()
Returns the number of desired columns, based on the currently selected column.
-
getColumn
public javax.swing.JTable getColumn(int anIndex)
Returns the specific column table at the given index.
-
reloadColumns
public void reloadColumns(int aStartIndex)
Reloads columns from given index.
-
createColumn
protected javax.swing.JScrollPane createColumn()
Creates a new browser column.
-
createColumnTable
protected javax.swing.JTable createColumnTable()
Creates a new browser column table.
-
getVisibleColumnCount
public int getVisibleColumnCount()
Returns the number of visible columns in the browser.
-
setVisibleColumnCount
public void setVisibleColumnCount(int aValue)
Sets the number of visible columns in the browser.
-
getSelectedColumnIndex
public int getSelectedColumnIndex()
Returns the selected column index.
-
setSelectedColumnIndex
protected void setSelectedColumnIndex(int anIndex)
Sets the selected column index.
-
getTableCellRenderer
public javax.swing.table.TableCellRenderer getTableCellRenderer()
Returns the browser table cell renderer.
-
createTableCellRenderer
protected javax.swing.table.TableCellRenderer createTableCellRenderer()
Returns the browser table cell renderer.
-
setTableCellRenderer
public void setTableCellRenderer(javax.swing.table.TableCellRenderer aTableCellRenderer)
Sets the browser table cell renderer.
-
getBranchIcon
public javax.swing.Icon getBranchIcon(java.lang.Object anObj)
Returns the icon to indicate branch nodes in a browser (right arrow by default).
-
setBranchIcon
public void setBranchIcon(javax.swing.Icon anIcon)
Sets the default icon to indicate branch nodes in a browser.
-
setBounds
public void setBounds(int x, int y, int width, int height)Overrides setBounds to reset model.- Overrides:
setBoundsin classjava.awt.Component
-
-