Updraft  1.0
Open source glider flight visualisation tool.
Updraft::MapLayerGroupInterface Class Reference

Map layer group used by plugins. More...

#include <maplayergroupinterface.h>

Inheritance diagram for Updraft::MapLayerGroupInterface:
Collaboration diagram for Updraft::MapLayerGroupInterface:

List of all members.

Public Member Functions

virtual ~MapLayerGroupInterface ()
virtual MapLayerGroupInterfacecreateMapLayerGroup (const QString &title, int pos=-1)=0
 Create a map layer group and add it as a sub item to this.
virtual MapLayerInterfacecreateMapLayer (osg::Node *layer, const QString &title, int pos=-1)=0
 Create a new map layer containing the node and add it as a child of this group.
virtual void insertMapLayer (MapLayerInterface *layer, int pos=-1)=0
 Insert the map layer as a child of this group.
virtual void removeMapLayer (MapLayerInterface *layer)=0
 Remove the map layer from this group, but don't delete it.
virtual osg::Group * getNodeGroup ()=0
 Returns the osg group associated with this map layer group.
virtual
osgEarth::Util::ObjectPlacer * 
getObjectPlacer ()=0
 Returns the placer associated with the mapNode.

Private Member Functions

virtual MapLayerInterfacecreateMapLayerNoInsert (osg::Node *layer, const QString &title, int pos=-1)=0
 Add map layer without adding it to scene.

Friends

class Core::SceneManager
class Core::MapManager

Detailed Description

Map layer group used by plugins.

This class encapsulates handling of the map layer group. It provides methods for creating and deleting layers and automatically adding to/deleting from the GUI.


Constructor & Destructor Documentation


Member Function Documentation

virtual MapLayerInterface* Updraft::MapLayerGroupInterface::createMapLayer ( osg::Node *  layer,
const QString &  title,
int  pos = -1 
) [pure virtual]

Create a new map layer containing the node and add it as a child of this group.

Returns:
The new layer.

Implemented in Updraft::Core::MapLayerGroup.

virtual MapLayerGroupInterface* Updraft::MapLayerGroupInterface::createMapLayerGroup ( const QString &  title,
int  pos = -1 
) [pure virtual]

Create a map layer group and add it as a sub item to this.

To remove MapLayerGroup use C++ delete.

Parameters:
titlelabel for the item in the tree view
posThe position of the newly created group
Returns:
Pointer to the new MapLayerGroup

Implemented in Updraft::Core::MapLayerGroup.

virtual MapLayerInterface* Updraft::MapLayerGroupInterface::createMapLayerNoInsert ( osg::Node *  layer,
const QString &  title,
int  pos = -1 
) [private, pure virtual]

Add map layer without adding it to scene.

Implemented in Updraft::Core::MapLayerGroup.

virtual osg::Group* Updraft::MapLayerGroupInterface::getNodeGroup ( ) [pure virtual]

Returns the osg group associated with this map layer group.

Implemented in Updraft::Core::MapLayerGroup.

virtual osgEarth::Util::ObjectPlacer* Updraft::MapLayerGroupInterface::getObjectPlacer ( ) [pure virtual]

Returns the placer associated with the mapNode.

Implemented in Updraft::Core::MapLayerGroup.

virtual void Updraft::MapLayerGroupInterface::insertMapLayer ( MapLayerInterface layer,
int  pos = -1 
) [pure virtual]

Insert the map layer as a child of this group.

Implemented in Updraft::Core::MapLayerGroup.

virtual void Updraft::MapLayerGroupInterface::removeMapLayer ( MapLayerInterface layer) [pure virtual]

Remove the map layer from this group, but don't delete it.

Ownership of the layer is transfered to caller of this method.

Implemented in Updraft::Core::MapLayerGroup.


Friends And Related Function Documentation

friend class Core::MapManager [friend]
friend class Core::SceneManager [friend]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines