Class 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.JScrollPane
    This 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
      class  RJBrowser.BrowserColumnTableModel
      An inner class to represent Browser selection.
      static interface  RJBrowser.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
      • Nested classes/interfaces inherited from class java.awt.Container

        java.awt.Container.AccessibleAWTContainer
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • 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.JScrollPane createColumn()
      Creates a new browser column.
      protected javax.swing.JTable createColumnTable()
      Creates a new browser column table.
      protected javax.swing.table.TableCellRenderer createTableCellRenderer()
      Returns the browser table cell renderer.
      javax.swing.Icon getBranchIcon​(java.lang.Object anObj)
      Returns the icon to indicate branch nodes in a browser (right arrow by default).
      javax.swing.JTable getColumn​(int anIndex)
      Returns the specific column table at the given index.
      int getColumnCount()
      Returns the number of columns currently in the browser.
      int getColumnCountPreferred()
      Returns the number of desired columns, based on the currently selected column.
      RJBrowser.BrowserModel getModel()
      Returns the current browser model.
      java.lang.String getPath()
      Returns the path constructed by appending the selected row in each column by a dot.
      java.lang.String getPath​(java.lang.String aSeparator)
      Returns the path constructed by appending the selected row in each column by a dot.
      int getSelectedColumnIndex()
      Returns the selected column index.
      java.lang.Object getSelectedItem()
      Returns the selected item.
      javax.swing.table.TableCellRenderer getTableCellRenderer()
      Returns the browser table cell renderer.
      int getVisibleColumnCount()
      Returns the number of visible columns in the browser.
      boolean isSelectedLeaf()
      Returns whether selected item is leaf.
      void reloadColumns​(int aStartIndex)
      Reloads columns from given index.
      void setBounds​(int x, int y, int width, int height)
      Overrides setBounds to reset model.
      void setBranchIcon​(javax.swing.Icon anIcon)
      Sets the default icon to indicate branch nodes in a browser.
      protected void setColumnCount​(int aValue)
      Sets the number of columns.
      void setModel​(RJBrowser.BrowserModel aModel)
      Reconfigures browser for given model.
      protected void setSelectedColumnIndex​(int anIndex)
      Sets the selected column index.
      void setTableCellRenderer​(javax.swing.table.TableCellRenderer aTableCellRenderer)
      Sets the browser table cell renderer.
      void setVisibleColumnCount​(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
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • RJBrowser

        public RJBrowser()
        Creates a new browser.
    • Method Detail

      • 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:
        setBounds in class java.awt.Component