VR-Forces 4.1 Class Documentation
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
DtTMSymbolUpdater Class Reference
Inheritance diagram for DtTMSymbolUpdater:
Inheritance graph
[legend]

Public Member Functions

 DtTMSymbolUpdater ()
virtual ~DtTMSymbolUpdater ()
virtual void init (DtTMArea *area)
 Initializes the updater by setting up the update callbacks.
virtual void setViewportExtents (const DtTMViewportExtents *)
 Connects this symbol updater to a specific viewport extents object which is used to do screen->database conversions.
virtual const DtTMViewportExtentsviewportExtents () const
virtual void setDisplayOptions (const DtTMDisplayOptions *o)
 Connects this symbol updater to the app display options which is used to determine what and how some symbols should be drawn.
virtual const DtTMDisplayOptionsdisplayOptions () const
virtual void updateSymbol (DtSymbol &, const DtModelData &)
 Update a symbol with the data.
virtual void setViewDriver (const DtViewDriver *driver)
 Sets the view driver that will be using this symbol updater.
virtual void setResetLabelPositions (bool b)
virtual int defaultLineWidth (const DtEnvironmentalModelData &d, const DtTMDisplayOptions *opt) const
virtual void addSymbolUpdateCallback (QString type, DtPostSymbolUpdateCallback fcn, void *usr=NULL)
 Accessors to add/remove callbacks for model data types.
virtual void removeSymbolUpdateCallback (QString type, DtSymbolUpdatorCallback fcn)
virtual void addPostUpdateCallback (int iType, DtPostSymbolUpdateCallback fcn, void *usr)
 Adds a callback to be invoked any time a symbol is updated.
virtual void removePostUpdateCallback (int iType, DtPostSymbolUpdateCallback fcn, void *usr)
 Removes the post create callback if all three items match.
virtual void removeAllPostUpdateCallbacks ()
 Removes all post update callbacks.
virtual QPolygon * createScreenPtsFromDB (const QVector< DtPoint > *dbPoints) const
virtual QPolygon * createScreenPtsFromDB (const QList< DtVector > *dbPoints) const
virtual QPoint createScreenPtFromDB (const DtPoint &dbPoint) const
virtual void setLocationDataFromModelData (DtSymbol &s, QVector< DtPoint > dbPoints) const
virtual bool processUpdateOptions (DtNameLabelSymbol *nls, const DtModelData &d, void *usr) const
 Checks to see if display options have changed before calling updateOptions.
virtual bool updateVerticies (DtNameLabelSymbol *nls, QVector< DtPoint > *points) const
 Simply updates the symbol with the supplied vertices.
virtual void updateLocalControlData (DtSymbol &s, const DtEnvironmentalModelData &d, void *usr) const
virtual void updateGenericPosition (DtSymbol &s, const DtModelData &d) const

Static Public Member Functions

static DtTMSymbolUpdatercreate ()
 Returns a newly created instance of a DtTMSymbolUpdater.
static void updateGenericPositionCb (const DtTMSymbolUpdater *updater, DtSymbol &s, const DtModelData &d, void *usr=0)
static void updateLocalControlDataCb (const DtTMSymbolUpdater *updater, DtSymbol &s, const DtModelData &d, void *usr)
 Main Symbol update callback for DtEnvironmentalModelData.
static void updateNameLabelCb (const DtTMSymbolUpdater *updater, DtSymbol &s, const DtModelData &d, void *usr)
static void updateLabelLabelCb (const DtTMSymbolUpdater *updater, DtSymbol &s, const DtModelData &d, void *usr)
static void updateLayerLabelCb (const DtTMSymbolUpdater *updater, DtSymbol &s, const DtModelData &d, void *usr)

Protected Member Functions

virtual bool updateOptions (DtNameLabelSymbol *nls, const DtTMDisplayOptions *opt, const DtModelData &d, void *usr) const
 Update options for name label symbols (waypoints, areas, etc.)
virtual bool updateOptionsFromDisplayOptions (DtNameLabelSymbol *nls, const DtModelData &d, void *usr) const
virtual bool needsOptionUpdate (DtSymbol *) const
virtual bool needsOptionUpdate (const DtModelData &) const
virtual void updateOptionCache (DtSymbol *) const
virtual void invokePostUpdateCallbacks (DtSymbol &, const DtModelData &)
virtual void updateSymbol (DtNameLabelSymbol *es, const DtEnvironmentalModelData &d, void *usr) const
 Update control object attributes.
virtual void updateNameLabel (DtNameLabelSymbol *pes, const DtModelData &d, void *usr) const
virtual void updateLabelLabel (DtNameLabelSymbol *pes, const DtModelData &d, void *usr) const
virtual void updateLayerLabel (DtNameLabelSymbol *pes, const DtModelData &d, void *usr) const
virtual bool updateVerticies (DtNameLabelSymbol *pes, const DtEnvironmentalModelData &d, void *usr) const
 Returns true if the symbol location has changed.
virtual bool updateVerticies (DtNameLabelSymbol *nls, DtSymbol *s, const DtModelData &d, void *usr) const
 The name label symbol is the parent of the symbol passed in for update.
virtual bool updateVerticies (DtNameLabelSymbol *nls, DtSymbol *s, const QVector< DtPoint > &pnts, const DtModelData &d, void *usr) const
virtual void updateColorOptions (DtNameLabelSymbol *nls, const DtTMDisplayOptions *pdo, const DtEnvironmentalModelData &d, void *usr) const
virtual bool isValidUpdatableData (const DtModelData &d) const
virtual void setLineEditable (const DtModelData &d, DtNameLabelSymbol *nls) const
virtual bool terrainLoaded () const

Protected Attributes

const DtTMViewportExtentsmyViewportExtents
const DtTMDisplayOptionsmyTMDisplayOptions
const DtTMAreamyArea
const DtTMMapAreamyMapArea
 Same as myArea except dynamically casted for convenience and speed.
QHash< QString,
DtUpdateCallbackInfoList
myUpdators
const DtViewDrivermyViewDriver
bool myResetLabelPositions
QList< DtPostUpdateCallbackInfomyPostUpdateCallbacks

Constructor & Destructor Documentation

DtTMSymbolUpdater::DtTMSymbolUpdater ( )
virtual DtTMSymbolUpdater::~DtTMSymbolUpdater ( )
virtual

Member Function Documentation

virtual void DtTMSymbolUpdater::init ( DtTMArea area)
virtual

Initializes the updater by setting up the update callbacks.

Reimplemented in DtTerrainSymbolUpdater, and DtFormationSymbolUpdater.

virtual void DtTMSymbolUpdater::setViewportExtents ( const DtTMViewportExtents )
virtual

Connects this symbol updater to a specific viewport extents object which is used to do screen->database conversions.

virtual const DtTMViewportExtents* DtTMSymbolUpdater::viewportExtents ( ) const
virtual
virtual void DtTMSymbolUpdater::setDisplayOptions ( const DtTMDisplayOptions o)
virtual

Connects this symbol updater to the app display options which is used to determine what and how some symbols should be drawn.

virtual const DtTMDisplayOptions* DtTMSymbolUpdater::displayOptions ( ) const
virtual
virtual void DtTMSymbolUpdater::updateSymbol ( DtSymbol ,
const DtModelData  
)
virtual

Update a symbol with the data.

This is really the only function that you should call unless you know specifically what type of symbol and what type of data you have. It uses dynamic casts to figure out what type of symbol you have in order to do the right thing.

virtual void DtTMSymbolUpdater::setViewDriver ( const DtViewDriver driver)
virtual

Sets the view driver that will be using this symbol updater.

virtual void DtTMSymbolUpdater::setResetLabelPositions ( bool  b)
virtual
virtual int DtTMSymbolUpdater::defaultLineWidth ( const DtEnvironmentalModelData d,
const DtTMDisplayOptions opt 
) const
virtual
virtual void DtTMSymbolUpdater::addSymbolUpdateCallback ( QString  type,
DtPostSymbolUpdateCallback  fcn,
void *  usr = NULL 
)
virtual

Accessors to add/remove callbacks for model data types.

virtual void DtTMSymbolUpdater::removeSymbolUpdateCallback ( QString  type,
DtSymbolUpdatorCallback  fcn 
)
virtual
virtual void DtTMSymbolUpdater::addPostUpdateCallback ( int  iType,
DtPostSymbolUpdateCallback  fcn,
void *  usr 
)
virtual

Adds a callback to be invoked any time a symbol is updated.

Use the type to specify the type that you want the callback for or -1 for all types

virtual void DtTMSymbolUpdater::removePostUpdateCallback ( int  iType,
DtPostSymbolUpdateCallback  fcn,
void *  usr 
)
virtual

Removes the post create callback if all three items match.

virtual void DtTMSymbolUpdater::removeAllPostUpdateCallbacks ( )
virtual

Removes all post update callbacks.

Only call if you really want to disable these callbacks as they cannot be replaced without executing the code that originally added them

virtual QPolygon* DtTMSymbolUpdater::createScreenPtsFromDB ( const QVector< DtPoint > *  dbPoints) const
virtual

Reimplemented in DtFormationSymbolUpdater.

virtual QPolygon* DtTMSymbolUpdater::createScreenPtsFromDB ( const QList< DtVector > *  dbPoints) const
virtual
virtual QPoint DtTMSymbolUpdater::createScreenPtFromDB ( const DtPoint dbPoint) const
virtual
virtual void DtTMSymbolUpdater::setLocationDataFromModelData ( DtSymbol s,
QVector< DtPoint dbPoints 
) const
virtual
virtual bool DtTMSymbolUpdater::processUpdateOptions ( DtNameLabelSymbol nls,
const DtModelData d,
void *  usr 
) const
virtual

Checks to see if display options have changed before calling updateOptions.

virtual bool DtTMSymbolUpdater::updateVerticies ( DtNameLabelSymbol nls,
QVector< DtPoint > *  points 
) const
virtual

Simply updates the symbol with the supplied vertices.

virtual void DtTMSymbolUpdater::updateLocalControlData ( DtSymbol s,
const DtEnvironmentalModelData d,
void *  usr 
) const
virtual
virtual void DtTMSymbolUpdater::updateGenericPosition ( DtSymbol s,
const DtModelData d 
) const
virtual
virtual bool DtTMSymbolUpdater::updateOptions ( DtNameLabelSymbol nls,
const DtTMDisplayOptions opt,
const DtModelData d,
void *  usr 
) const
protectedvirtual

Update options for name label symbols (waypoints, areas, etc.)

virtual bool DtTMSymbolUpdater::updateOptionsFromDisplayOptions ( DtNameLabelSymbol nls,
const DtModelData d,
void *  usr 
) const
protectedvirtual
virtual bool DtTMSymbolUpdater::needsOptionUpdate ( DtSymbol ) const
protectedvirtual
virtual bool DtTMSymbolUpdater::needsOptionUpdate ( const DtModelData ) const
protectedvirtual
virtual void DtTMSymbolUpdater::updateOptionCache ( DtSymbol ) const
protectedvirtual
virtual void DtTMSymbolUpdater::invokePostUpdateCallbacks ( DtSymbol ,
const DtModelData  
)
protectedvirtual
virtual void DtTMSymbolUpdater::updateSymbol ( DtNameLabelSymbol es,
const DtEnvironmentalModelData d,
void *  usr 
) const
protectedvirtual

Update control object attributes.

virtual void DtTMSymbolUpdater::updateNameLabel ( DtNameLabelSymbol pes,
const DtModelData d,
void *  usr 
) const
protectedvirtual
virtual void DtTMSymbolUpdater::updateLabelLabel ( DtNameLabelSymbol pes,
const DtModelData d,
void *  usr 
) const
protectedvirtual
virtual void DtTMSymbolUpdater::updateLayerLabel ( DtNameLabelSymbol pes,
const DtModelData d,
void *  usr 
) const
protectedvirtual
virtual bool DtTMSymbolUpdater::updateVerticies ( DtNameLabelSymbol pes,
const DtEnvironmentalModelData d,
void *  usr 
) const
protectedvirtual

Returns true if the symbol location has changed.

virtual bool DtTMSymbolUpdater::updateVerticies ( DtNameLabelSymbol nls,
DtSymbol s,
const DtModelData d,
void *  usr 
) const
protectedvirtual

The name label symbol is the parent of the symbol passed in for update.

If nls is null, then if the model data only has a single point (or none) the the symbol itself will not be updated

virtual bool DtTMSymbolUpdater::updateVerticies ( DtNameLabelSymbol nls,
DtSymbol s,
const QVector< DtPoint > &  pnts,
const DtModelData d,
void *  usr 
) const
protectedvirtual
virtual void DtTMSymbolUpdater::updateColorOptions ( DtNameLabelSymbol nls,
const DtTMDisplayOptions pdo,
const DtEnvironmentalModelData d,
void *  usr 
) const
protectedvirtual
virtual bool DtTMSymbolUpdater::isValidUpdatableData ( const DtModelData d) const
protectedvirtual
virtual void DtTMSymbolUpdater::setLineEditable ( const DtModelData d,
DtNameLabelSymbol nls 
) const
protectedvirtual
virtual bool DtTMSymbolUpdater::terrainLoaded ( ) const
protectedvirtual
static DtTMSymbolUpdater* DtTMSymbolUpdater::create ( )
static

Returns a newly created instance of a DtTMSymbolUpdater.

Reimplemented in DtTerrainSymbolUpdater.

static void DtTMSymbolUpdater::updateGenericPositionCb ( const DtTMSymbolUpdater updater,
DtSymbol s,
const DtModelData d,
void *  usr = 0 
)
static
Parameters
MainSymbol update callback for DtBaseModelData
static void DtTMSymbolUpdater::updateLocalControlDataCb ( const DtTMSymbolUpdater updater,
DtSymbol s,
const DtModelData d,
void *  usr 
)
static

Main Symbol update callback for DtEnvironmentalModelData.

Parameters
Symbols must be a DtNameLabelSymbol instance
static void DtTMSymbolUpdater::updateNameLabelCb ( const DtTMSymbolUpdater updater,
DtSymbol s,
const DtModelData d,
void *  usr 
)
static
Parameters
Symbols must be a DtNameLabelSymbol instance
static void DtTMSymbolUpdater::updateLabelLabelCb ( const DtTMSymbolUpdater updater,
DtSymbol s,
const DtModelData d,
void *  usr 
)
static
Parameters
Symbols must be a DtNameLabelSymbol instance
static void DtTMSymbolUpdater::updateLayerLabelCb ( const DtTMSymbolUpdater updater,
DtSymbol s,
const DtModelData d,
void *  usr 
)
static
Parameters
Symbols must be a DtNameLabelSymbol instance

Member Data Documentation

const DtTMViewportExtents* DtTMSymbolUpdater::myViewportExtents
protected
const DtTMDisplayOptions* DtTMSymbolUpdater::myTMDisplayOptions
protected
const DtTMArea* DtTMSymbolUpdater::myArea
protected
const DtTMMapArea* DtTMSymbolUpdater::myMapArea
protected

Same as myArea except dynamically casted for convenience and speed.

QHash<QString, DtUpdateCallbackInfoList> DtTMSymbolUpdater::myUpdators
protected
const DtViewDriver* DtTMSymbolUpdater::myViewDriver
protected
bool DtTMSymbolUpdater::myResetLabelPositions
protected
QList<DtPostUpdateCallbackInfo> DtTMSymbolUpdater::myPostUpdateCallbacks
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)