ProjectTree (IProjectTree80)

The IProjectTree80 interface allows you to manipulate the Project Tree items. This includes managing groups, items and layers. A Tree item is a group if it can have children items. It is important to note that items that are not groups can only be added through the ICreator80 interface, since it is used to create all the entities of TerraExplorer. These entities (i.e., a polyline on the terrain) are then represented in the Project Tree (as items inside groups). To rename an item in the Project Tree that is not a group, you should use the interface of that item. If you need to access a Project Tree element (for example, to change its position on the terrain) you use its ID that uniquely identifies it in the TerraExplorer Pro world (the ITerraExplorerObject80. ID property) to get an interface to that object using the GetObject method.

Note:    From API version 6.5 and above, elements no longer have an additional separate Project Tree ID; they only have a single object ID.

 

 

Properties

 

HiddenGroupID

Gets the ID of the hidden group tree element.

HiddenGroupName

Gets the name of the hidden group tree element.

NotInTreeID

Gets the ID that should be passed as an element’s ParentGroupID, if you do not want the element added to the Project Tree.

RootID

Gets the ID of the Tree root element.

ShowSearchTool

Gets and sets a Boolean that determines whether the search tool is displayed.

 

Methods

 

CreateGroup

Creates a group in the Project Tree.

CreateLockedGroup

Creates a group in a “locked” (collapsed) mode. When locked, TerraExplorer Viewer users cannot expand the group to view its contents.

DeleteItem

Deletes an item from the Project Tree (and from the terrain, if that item was a terrain object).

EditItem

Reserved. Currently not used. Use EditItemEx instead.

EditItemEx

This method replaces EditItem (now reserved) and should be used instead. Places a specified item in edit mode and positions the property sheet if opened in the specified position on the 3D Window. The flags parameter provides control over the display of the property sheet (e.g., whether to display the property sheet with or without the top toolbar) and over the initial edit and move modes.

EditItems

Opens the Multi Edit property sheet to edit multiple specified items.

EnableRedraw

Enables changes to be redrawn or prevents them from being redrawn in the Project Tree.

EndEdit

Terminates the EditItemEx mode.

ExpandGroup

Expands the specified group so that it displays all of its children, or collapses it.

FindItem

Finds an item using a path to that item.

GetActivationCode

Returns the activation code assigned for the specified group.

GetClientData

Returns the text string describing the group’s attribute data. This information is available for general use in your application.

GetGroupEndTime

Returns the specified group’s end date and time.

GetGroupLocation

Returns the location of the specified group.

GetGroupMessageID

Returns the message set for a specific group or layer in the Project Tree using its ID.

GetGroupStartTime

Returns the specified group’s start date and time.

GetItemName

Returns the name of a specific item using its ID.

GetLayer

Returns an interface to the IFeatureLayer80 object based on the specified group ID.

GetNextItem

Retrieves the Project Tree item that has the specified relationship, indicated by the Code parameter, to another item whose ID is specified.

GetObject

Returns an ITerraExplorerObject interface to an object based on its ID.

GetVisibility

Returns the visibility status of a Project Tree item on the terrain.

IsExpanded

This method checks whether or not a Project Tree group is expanded.

IsGroup

Determines whether or not a ProjectTree item is a group.

IsLayer

Obsolete. To determine whether a Project Tree element is a feature layer, use IProjectTree80.GetObject to return an interface to the element and then ITerraExplorerObject80. ObjectType to get the element type.

IsLocked

Determines whether or not a group is locked.

IsRadioGroup

Determines whether or not a group is a radio group.

LoadFlyLayer

Loads a Fly file into the current project. All the objects from the Fly file, including locations, routes and hyperlinks, are added.

LoadKmlLayer

Loads a KML file into the current project. All the objects from the KML file, including locations, presentations, and hyperlinks, are added.

LockGroup

Sets a group to a “lock” (collapsed) status mode. When a group is locked, users of TerraExplorer Viewer cannot expand the group and view its contents.

RenameGroup

Renames a group in the Project Tree.

SaveAsFly

Saves the specified group to a Fly file.

SaveAsKml

Saves the specified object or group to a KML file.

SelectItem

Selects an item in the Project Tree.

SetActivationCode

Determines the default activation action executed when clicking on the locked group symbol.

SetClientData

Stores a text string in the group global namespace.

SetGroupEndTime

Determines the date and time when the group should stop being visible

SetGroupLocation

Determines the location parameters for a specified group.

SetGroupMessageID

Sets the message for a specific group or layer in the Project Tree using its ID.

SetGroupStartTime

Determines the date and time when the group should start being visible

SetParent

Moves an item to a different group.

SetRadioGroup

Sets a Boolean that determines whether the Project Tree group is a radio group, whose items are mutually exclusive or a standard group.

SetVisibility

Sets a ProjectTree item to be visible, or not visible, on the terrain.

ShowSubTree

Reserved

SortGroup

Sorts the items in the group according to specified sort type.