Class TagStructurePanel

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.TreeSelectionListener

    public class TagStructurePanel
    extends javax.swing.JPanel
    implements javax.swing.event.TreeSelectionListener
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.awt.datatransfer.DataFlavor FLAVOR_STRUCTURE_NODE_LIST  
      • 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
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void clear()  
      protected void collectEdits​(java.util.List<TagConfiguration> config, TagStructurePanel.StructureNode node)  
      protected TagStructurePanel.StructureNode configureNewNode​(TagStructurePanel.StructureNode parent, TagConfiguration config, boolean isValid)
      Prepares a structure node for the new tag.
      protected void configureToolbar()  
      protected TagStructurePanel.StructureNode find​(TagPath path)  
      java.util.List<TagConfiguration> getModifiedConfigurations()
      Returns all edits, in order from shallow to deep.
      protected TagStructurePanel.StructureNode getParentForNewItem()
      Returns the valid parent for a new tag, or null if a new tag is not allowed given the current selection.
      protected TagStructurePanel.StructureNode getRootIfStructureNode()
      Returns the root tree node IF it's a structure node, otherwise null.
      TagPath getRootPath()  
      protected javax.swing.tree.DefaultTreeModel getTreeModel()  
      protected javax.swing.tree.TreePath getTreePathFor​(TagPath tag)  
      protected javax.swing.tree.TreePath getTreePathFor​(TagStructurePanel.StructureNode node)  
      protected void initChildrenModels​(TagStructurePanel.StructureNode src, TagStructurePanel.StructureNode dest)
      When we copy a udt instance, we need to initialize the config models of everything beneath it, to maintain overrides and such.
      protected void initComponents()  
      void loadRootTag​(TagPath rootObject)
      Sets the path as the root of all relative operations- and loads that root if not null.
      protected void loadTreeStructure​(TagPath pathToLoad, TagStructurePanel.StructureNode treeNode)
      This retrieves the nodes from the gateway.
      protected void loadTreeStructureFinish​(TagStructureTree tagTree, TagStructurePanel.StructureNode root, java.lang.String source)
      Builds out the structure under a given node.
      void markNodesChanged()
      Marks the current selected nodes as being modified.
      void newTag​(TagConfiguration config)
      Creates a new tag relative to the root path.
      protected void processTreeNodes​(TagStructureTree.TagNode tn, TagStructurePanel.StructureNode sn, java.lang.String source)  
      protected void refreshEnabledItems()  
      protected void setRoot​(javax.swing.tree.TreeNode node)  
      protected void setSelectedNodes​(java.util.List<TagStructurePanel.StructureNode> nodes)  
      void setSelectedTags​(java.util.List<TagPath> tags)  
      void valueChanged​(javax.swing.event.TreeSelectionEvent e)  
      • Methods inherited from class javax.swing.JPanel

        getAccessibleContext, getUI, getUIClassID, paramString, setUI, 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, isValidateRoot, 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, 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, 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
    • Field Detail

      • FLAVOR_STRUCTURE_NODE_LIST

        public static final java.awt.datatransfer.DataFlavor FLAVOR_STRUCTURE_NODE_LIST
    • Method Detail

      • initComponents

        protected void initComponents()
      • clear

        public void clear()
      • getRootPath

        public TagPath getRootPath()
      • getModifiedConfigurations

        public java.util.List<TagConfiguration> getModifiedConfigurations()
        Returns all edits, in order from shallow to deep.
      • loadRootTag

        public void loadRootTag​(TagPath rootObject)
        Sets the path as the root of all relative operations- and loads that root if not null. Should only be null if we're creating a new root object, and newTag will be called next.
      • getTreeModel

        protected javax.swing.tree.DefaultTreeModel getTreeModel()
      • getRootIfStructureNode

        protected TagStructurePanel.StructureNode getRootIfStructureNode()
        Returns the root tree node IF it's a structure node, otherwise null.
      • setRoot

        protected void setRoot​(javax.swing.tree.TreeNode node)
      • configureToolbar

        protected void configureToolbar()
      • refreshEnabledItems

        protected void refreshEnabledItems()
      • getParentForNewItem

        protected TagStructurePanel.StructureNode getParentForNewItem()
        Returns the valid parent for a new tag, or null if a new tag is not allowed given the current selection.
      • setSelectedTags

        public void setSelectedTags​(java.util.List<TagPath> tags)
      • getTreePathFor

        protected javax.swing.tree.TreePath getTreePathFor​(TagPath tag)
      • newTag

        public void newTag​(TagConfiguration config)
        Creates a new tag relative to the root path. If the root is null, this will become the root.
      • loadTreeStructure

        protected void loadTreeStructure​(TagPath pathToLoad,
                                         TagStructurePanel.StructureNode treeNode)
        This retrieves the nodes from the gateway. It may be the root object that we're editing or its parent type, if we're a new node.

        The tree node should not be null.

      • loadTreeStructureFinish

        protected void loadTreeStructureFinish​(TagStructureTree tagTree,
                                               TagStructurePanel.StructureNode root,
                                               java.lang.String source)
        Builds out the structure under a given node. If node is null, a new node will be created and installed
      • valueChanged

        public void valueChanged​(javax.swing.event.TreeSelectionEvent e)
        Specified by:
        valueChanged in interface javax.swing.event.TreeSelectionListener
      • markNodesChanged

        public void markNodesChanged()
        Marks the current selected nodes as being modified.