Class KMLFeatureTreeNode

    • Field Detail

      • feature

        protected KMLAbstractFeature feature
        Indicates the KML feature this node represents. Initialized during construction.
    • Constructor Detail

      • KMLFeatureTreeNode

        public KMLFeatureTreeNode​(KMLAbstractFeature feature)
        Creates a new KMLFeatureTreeNode from the specified feature. The node's name is set to the feature's name.
        Parameters:
        feature - the KML feature this node represents.
        Throws:
        java.lang.IllegalArgumentException - if the feature is null.
    • Method Detail

      • initialize

        protected void initialize()
        Places the KML feature in the node's AVKey.CONTEXT field.
      • fromKMLFeature

        public static KMLFeatureTreeNode fromKMLFeature​(KMLAbstractFeature feature)
        Creates a new KMLFeatureTreeNode from the specified feature. This maps the feature type to a node type as follows:
        • KML container to KMLContainerTreeNode.
        • KML network link to KMLNetworkLink.
        • All other KML features to KMLFeatureTreeNode.
        Parameters:
        feature - the KML feature to create a new KMLFeatureTreeNode for.
        Returns:
        a new KMLFeatureTreeNode.
        Throws:
        java.lang.IllegalArgumentException - if the feature is null.
      • getFeature

        public KMLAbstractFeature getFeature()
        Indicates the KML feature this node represents.
        Returns:
        this node's KML feature.
      • setSelected

        public void setSelected​(boolean selected)
        Specifies whether this node's feature is enabled for rendering and selection. This sets both the node's selection state and its KML feature's visible state.
        Specified by:
        setSelected in interface TreeNode
        Overrides:
        setSelected in class BasicTreeNode
        Parameters:
        selected - true to enable the KML feature, otherwise false.
        See Also:
        TreeNode.isSelected()
      • expandOpenContainers

        public void expandOpenContainers​(Tree tree)
        Expands paths in the specified tree corresponding to open KML container elements. This assumes that the tree's model contains this node.

        This node's path is expanded if the feature's open property is true.

        This calls expandOpenContainers on all children which are instances of KMLFeatureTreeNode.

        Parameters:
        tree - the Tree who's paths should be expanded.
        Throws:
        java.lang.IllegalArgumentException - if the tree is null.
      • mustExpandNode

        protected boolean mustExpandNode()
        Indicates whether the tree path for this node must expanded. This return true if the KML feature's open property is true, and false otherwise.
        Returns:
        true if the tree path for this node must be expanded, otherwise false.
      • makeFeatureDescription

        protected java.lang.String makeFeatureDescription()
        Makes this node's description text from its KML feature. This uses the feature's KMLSnippet if present, or the feature's description if there is no snippet.
        Returns:
        The feature description.
      • stripHtmlTags

        protected java.lang.String stripHtmlTags​(java.lang.String input)
        Remove HTML tags and extra whitespace from a string. Runs of whitespace will be collapsed to a single space.
        Parameters:
        input - Text to strip of HTML tags and extra whitespace.
        Returns:
        The input string with HTML tags removed, and runs of whitespace collapsed to a single space. Returns null if input is null.