VR-Forces 4.1 Class Documentation
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions
DtTTSSymbol Class Reference

This class contains the data to draw a string with a true type font. More...

Inheritance diagram for DtTTSSymbol:
Inheritance graph
[legend]

Public Types

enum  DtRotationOption { DtOrigin = 0, DtBottomLeft, DtCustom }

Public Member Functions

 DtTTSSymbol (DtSymbolDrawer &drawer, const QString &string=QString(), const QString &altString=QString())
 Constructors / assignment operator / destructor.
 DtTTSSymbol (DtNullDrawer &drawer, const QString &string=QString(), const QString &altString=QString())
 DtTTSSymbol (const DtTTSSymbol &orig)
DtTTSSymboloperator= (const DtTTSSymbol &orig)
virtual ~DtTTSSymbol ()
virtual DtSymbolclone () const
 Returns an instance of a symbol which is a copy of this.
virtual const QString & string () const
 member data i/o
virtual void setString (const QString &string)
virtual const QString & altString () const
virtual void setAltString (const QString &name)
virtual void setUseAltString (bool value)
 Use the alt name if it exists.
virtual bool useAltString () const
virtual Qt::PenStyle penStyle () const
virtual void setPenStyle (const Qt::PenStyle style)
virtual const QColor & penColor () const
virtual void setPenColor (const QColor &color)
virtual unsigned pointSize () const
 Size can be set by point size or a conversion scale.
virtual void setScale (const unsigned scale)
virtual void setPointSize (const unsigned ptSize)
virtual void setScaleToSize (DtTTSScaleToSize *scale)
 Set function that converts scale to point size.
virtual DtTTSScaleToSizescaleToSize () const
virtual void setDegreesRotated (double)
virtual double degreesRotated () const
virtual void setRotationOption (DtRotationOption)
virtual DtRotationOption rotationOption () const
virtual void setRotationPointOffset (const QPoint &)
 Set custom rotation point relative to origin.
virtual const QPoint rotationCenter () const
 Returned value is calculated based on rotation option etc.
virtual const QFont * font () const
 Gets/sets font.
virtual void setFont (const QFont &font)
virtual void setFontname (const QString &name)
virtual const QString & fontname () const
virtual void setConstrainToSize (const QSize &size)
virtual void clearConstrainToSize ()
virtual bool constrainToSize () const
virtual const QSize & constrainedSize () const
virtual bool isScalable () const
 Return true/false if this is a scalable symbol. By default returns false.
bool operator== (const DtTTSSymbol &orig) const
bool operator!= (const DtTTSSymbol &orig) const
virtual bool transparentCacheChanged () const
virtual void setShadowText (bool)
virtual bool shadowText () const
virtual void setFontScalingFactor (double scale)
 Scale is between 0 and 1, and is multiplied against the current font size to get a new font size.
virtual double fontScalingFactor () const
virtual const QString & bitmapSymbolCacheKey () const
 Returns a cache key that can be used to lookup in a bitmap cache.
virtual void setHighlight (const bool highlight)
 Set/get the highlight flag (whether the symbol should be drawn highlighted).
- Public Member Functions inherited from DtColorizedSymbol
 DtColorizedSymbol (DtSymbolDrawer &d)
 Constructor.
virtual ~DtColorizedSymbol ()
 Destructor.
 DtColorizedSymbol (const DtColorizedSymbol &orig)
 Copy Constructor.
DtColorizedSymboloperator= (const DtColorizedSymbol &rhs)
 Assignment Operator.
virtual QColor * color () const
virtual void setColor (const QColor &col)
 Noop function to allow subclasses to override.
virtual void clearColor ()
 Noop function to allow subclasses to clear out any color information.
bool operator== (const DtColorizedSymbol &orig) const
bool operator!= (const DtColorizedSymbol &orig) const
virtual int lineWidth () const
 Width of line. Set to -1 to use drawer default.
virtual void setLineWidth (int i)
- Public Member Functions inherited from DtSymbol
virtual ~DtSymbol ()
 destructor
 DtSymbol (const DtSymbol &orig)
 copy constructor
DtSymboloperator= (const DtSymbol &orig)
 assignment operator Note that the copy constructor, by default, make the symbol non editable even if the source is editable
 DtSymbol (DtSymbolDrawer &drawer)
 Drawer is non-const since it does memory management.
virtual void copyDataFrom (const DtSymbol *symbol)
 Differs from the equal operator in that this method could copy a different set of data than the = operator.
virtual void setName (const QString &name)
 The specific name of this symbol.
virtual const QString & name () const
virtual bool highlight () const
virtual bool selected () const
virtual const DtDisplayPoint centerPoint () const
 The real visual center of the symbol in display coordinates.
virtual const DtDisplayPoint topLeftPoint () const
 The real visual top left corner of the symbol in display coordinates.
virtual bool setLocationData (const QPolygon *)
 This function is used so that multipoint symbols have the same interface as single point symbols In the single point case, it takes the first value and sets the origin from that.
virtual const QPolygon * getLocationData () const
 Provided for a simpler interface to subclasses.
virtual void setOrigin (const QPoint &center)
 Set the display coordinate that will become the 0,0 point for drawing this symbol.
virtual void setOrigin (int x, int y)
 Same as above.
virtual const QPoint origin () const
 returns the display origin for the symbol.
virtual void shift (QPoint p)
 Move the center of this object by p amount.
virtual void draw (QPainter &paint) const
virtual void drawHidden (QPainter &paint) const
virtual const DtSymbolDrawerdrawer () const
virtual QSize bbox () const
 the bounding box - this queries the drawer
virtual QRect brect () const
virtual QRect selBbox () const
 the selection box (area where you can select an item)
virtual void clearOffsetToParent ()
 Set/get the offset to the parent.
virtual void setOffsetToParent (const QPoint &offsetToParent)
virtual const QPoint * offsetToParent () const
 if the offsetToParent blit has been cleared, this returns null
virtual bool show (DtShowHideContext module)
 Shows/hides the symbol.
virtual bool hide (DtShowHideContext module)
virtual void show ()
 Use this method to show the symbol regardless of how many contexts have hidden it.
virtual void hide ()
 Use this method to hide a symbol without context. Same as hide(DtDefaultShowHideContext)
virtual void addIgnoreContext (DtShowHideContext)
 Add/remove contexts for hide() to ignore.
virtual void removeIgnoreContext (DtShowHideContext)
const QVector
< DtShowHideContext > & 
ignoreContexts () const
virtual void wasHidden (DtSymbol *)
 The following two methods are only called if the parent is hidden Called when a child symbol of this symbol is hidden.
virtual void wasShown (DtSymbol *)
 Called when a child symbol of this symbol is shown.
virtual bool isShown () const
virtual DtSymbolparent () const
virtual void setParent (DtSymbol *dad)
virtual bool isComposite ()
 -— Type information
virtual DtSymbolGeometry geometry () const
virtual void setGeometry (DtSymbolGeometry geom)
virtual void setCategoryTag (const QString &name)
 A tag is the name of this type of symbol such as velocity vector name or force or whatever.
virtual const QString & categoryTag () const
virtual bool select (const QPoint &aPoint)
 -— Mouse selecting options
virtual bool select (const QPoint &aPoint, const QSize &rectangleSize)
 Returns true if the rectangle intersects the symbol, if the symbol is selectable.
virtual void setSelectable (bool value)
 Set/get the ability to select with this symbol.
virtual bool isSelectable () const
virtual void setEditable (bool b)
 Accessors for whether or not this line can be edited.
virtual bool editable () const
virtual void setAllowEditOnSelection (bool b)
 Sets the fact that even if this symbol is not marked editable, it can become editable upon selection (myHighlight is true)
virtual bool allowEditOnSelection () const
virtual void setInternalSelectable (bool value)
 The following two functions are internal values kept in order to make sure that if an object has been filter modified and not shown, that it will not be selectable.
virtual bool isInternalSelectable () const
virtual void setAddToDrawOrder (bool b)
 Add this item to the draw order regardless of whether or not it is visible on the screen.
virtual bool addToDrawOrder () const
virtual bool overlapsSymbol (const DtSymbol &aSymbol, const DtSymbol_OverlapTest aTest=DtSymbol_BoxPieces, const float aTolerance=0) const
 Returns true if the two symbols overlap Different intersection tests are available.
virtual bool overlapsAreaSymbol (const DtSymbol &aSymbol, const DtSymbol_OverlapTest aTest=DtSymbol_BoxPieces, const float aTolerance=0) const
 handles the case when aSymbol spans an area, such as a bitmap or a text symbol.
virtual bool overlapsLineSymbol (DtSymbol &aSymbol, const float aTolerance=0) const
 handles the case when aSymbol is composed of line segments, such as a line, polygon, or route.
virtual bool isOriginal () const
 Returns true if this symbol is an original symbol, otherwise return false.
virtual DtStaticAnimDatastaticAnimData () const
virtual void setDrawOnComposite (DtSymbolCompositeDrawOptions opt)
 If true, will not draw this symbol if it is part of a composite symbol.
virtual bool drawOnComposite () const
virtual
DtSymbolCompositeDrawOptions 
drawOnCompositeValue () const
virtual bool drawFirst () const
 If true, this symbol will always be drawn first.
virtual void setDrawFirst (bool b)
virtual bool drawLast () const
 If true, this symbol will always be drawn last.
virtual void setDrawLast (bool b)
virtual bool selectAdditionalSymbols (QList< DtSymbol * > &additionalSymbols)
 This routine is called during symbol selection time to see if the selection of this symbol requires other symbols to be selected as well.
virtual bool forceUpdate () const
 Override this function and return true if this symbol wants to update every tick regardless of performance enhancements.
virtual bool adjustPoints (QPolygon &pnts, bool constrain)
 Opportunity to adjust the point array to some desired other points.
virtual void setDragClone (DtSymbol *clone)
 Contains the symbol that is being dragged that represents this symbol.
virtual DtSymboldragClone () const
virtual void setScaleBy (double factor)
 Scaling factors.
virtual double scaleBy () const
virtual void enableVisibilityChange (bool b)
virtual void scheduleDisplayComplete (int)
 Sets a QTimer for the specified amount of time to fire off and then call the displayComplete() slot.
virtual void setShouldSelect (bool)
virtual bool shouldSelect () const
virtual void setTransparencyLevel (int)
 Transparency information.
virtual int transparencyLevel () const
virtual bool needsTransparentRedraw () const
 Will return true if there is no cached image or internal variables have changed such that the cached image needs a redraw.
virtual QPixmap * transparentImage () const
virtual QPixmap * cacheTransparentImage (const QPixmap &pixmap)
virtual QPixmap * cacheTransparentImage (const QImage &image)
virtual void cacheTransparentVariables ()
virtual bool wantsTransparentDraw () const
 Will return true if transparent percent is not 0 or 100.
bool operator== (const DtSymbol &orig) const
bool operator!= (const DtSymbol &orig) const
virtual DtSymbolDrawersymbolDrawer ()
 Sets the new drawer to be the supplied drawer.
virtual DtSymbolDrawersetDrawer (const DtSymbolDrawer &)
virtual DtSymbolDrawerbackupDrawer () const
 Returns the drawer that was set as a backup.
virtual void setBackupDrawer (DtSymbolDrawer *)
virtual bool removeIfOffScreen () const
 Return true/false if this symbol should be removed if it is off screen By default is true.
void setRemoveIfOffScreen (bool b)
 Default is true.
virtual void setSymbolDisplayOptions (DtSymbolDisplayOptions *)
virtual const
DtSymbolDisplayOptions
symbolDisplayOptions () const
virtual DtSymbolDisplayOptionssymbolDisplayOptions ()
virtual int displayOptionsCache () const
void setAdjustPoints (bool)
bool adjustPoints () const
const QVector
< DtShowHideContext > & 
hiddenByModules () const
 Routines to access which modules this symbol is hidden by.
bool hiddenByModule (DtShowHideContext module) const
virtual void blockSignals (bool)
 Blocks signals from being emitted from this symbol.
virtual bool originIsCenterOfMass () const
 Returns true if the origin is the center of mass (center of all points) in the symbol.
virtual void setCacheSymbolAsBitmap (bool)
 Get/set whether or not the drawer should cache this symbol as a bitmap.
bool cacheSymbolAsBitmap () const
virtual void reset ()
 Resets any relevant information associated with this symbol.
virtual bool editMode ()
 Set/get the edit mode option to enable update properties when hidden because of edition.
virtual void setEditMode (bool onOff)

Static Public Member Functions

static void setDefaultPenColor (const QColor &c)
static const QColor & defaultPenColor ()
- Static Public Member Functions inherited from DtColorizedSymbol
static DtSymbolcreate (DtSymbolDrawer &drawer)
- Static Public Member Functions inherited from DtSymbol
static DtNullDrawernullDrawer ()

Protected Member Functions

virtual QString internalBitmapSymbolCacheKey () const

Protected Attributes

QString myString
 data members
QString myAltString
bool myUseAltString
Qt::PenStyle myPenStyle
unsigned myPointSize
DtTTSScaleToSizemyScaleToSize
double myDegreesRotated
QPoint myRotationPointOffset
DtRotationOption myRotationOption
QString myFontname
QFont * myFont
bool myConstrainToSize
QSize myConstrainedSize
bool myShadowText
double myFontScalingFactor
bool myRecreateSymbolCacheKey
- Protected Attributes inherited from DtColorizedSymbol
QColor * myColor
int myLineWidth
- Protected Attributes inherited from DtSymbol
DtSymbolDrawermySymbolDrawer
DtSymbolDrawermyBackupDrawer
QPoint myOrigin
bool myActiveOffsetToParent
QPoint myOffsetToParent
bool myHighlight
bool myIsShown
bool myIsSelectable
bool myEditable
bool myInternalSelectable
QString myName
QString myCategoryTag
DtSymbolGeometry myGeometry
DtSymbolmyParent
DtSymbolmyDragClone
 If this symbol is being dragged, then this will point to the symbol that was cloned for the drag.
bool myIsOriginal
bool myAllowEditOnSelection
bool myAddToDrawOrder
double myScaleFactor
DtStaticAnimDatamyStaticAnimData
bool myEmitVisibilityChange
DtSymbol_DrawOrder myDrawOrder
QTimer * myTimer
DtSymbolCompositeDrawOptions myDrawOnComposite
bool myShouldSelect
 Set to true if part of a composite and a user has selected a part of the composite that should be selected.
int myTransparencyLevel
 Information for symbol transparency and transparent drawing.
QPixmap * myTransparentImage
DtSymbolmyTransparentCachedSymbol
DtSymbolDisplayOptionsmySymbolDisplayOptions
bool myAdjustPoints
QVector< DtShowHideContextmyHiddenByModules
QVector< DtShowHideContextmyIgnoreContexts
bool myRemoveIfOffscreen
bool myCacheSymbolAsBitmap
bool myEditMode
QString mySymbolBitmapCacheKey

Static Protected Attributes

static QColor gDefaultPenColor

Private Member Functions

 DtTTSSymbol ()
 Not implemented. Private to ensure it is only constructed with a drawer.

Additional Inherited Members

- Public Slots inherited from DtSymbol
virtual void invalidateStaticAnimData ()
 This gets called when modified symbols exist and the original symbol has been destroyed.
virtual void displayComplete ()
 Call when the display of this symbol is complete.
virtual void clearDragClone (QObject *)
 Called when the drag clone is destroyed outside of this context, we will be notified in that case to clear out this symbols internal pointer.
- Signals inherited from DtSymbol
void originalSymbolDestroyed ()
 Sent when an original symbol has been destroyed - (so that the drawer can remove that cache)
void destroyed (const DtSymbol *)
 Called when we are destroyed, this will give our drawers a chance to update any cached information.
void originChanged (const DtSymbol *)
 Sent when setOrigin is called with a different origin.
void visibilityChanged (const DtSymbol *)
 Sent when visibility change sending is enabled and a symbol is shown or hidden when it wasn't before.
void displayComplete (const DtSymbol *)
 Called from displayComplete()

Detailed Description

This class contains the data to draw a string with a true type font.

An optional alternative string representation may be set. For example, labels might use the primary string as the long name, and the alternative as the short name. Similarly, military symbols might use the primary string as the ranked symbol, and the alternative as a rank-less symbol.

Member Enumeration Documentation

Enumerator:
DtOrigin 
DtBottomLeft 
DtCustom 

Constructor & Destructor Documentation

DtTTSSymbol::DtTTSSymbol ( DtSymbolDrawer drawer,
const QString &  string = QString(),
const QString &  altString = QString() 
)

Constructors / assignment operator / destructor.

DtTTSSymbol::DtTTSSymbol ( DtNullDrawer drawer,
const QString &  string = QString(),
const QString &  altString = QString() 
)
DtTTSSymbol::DtTTSSymbol ( const DtTTSSymbol orig)
virtual DtTTSSymbol::~DtTTSSymbol ( )
virtual
DtTTSSymbol::DtTTSSymbol ( )
private

Not implemented. Private to ensure it is only constructed with a drawer.

Member Function Documentation

DtTTSSymbol& DtTTSSymbol::operator= ( const DtTTSSymbol orig)
virtual DtSymbol* DtTTSSymbol::clone ( ) const
virtual

Returns an instance of a symbol which is a copy of this.

The caller is responsible for freeing the memory.

Reimplemented from DtColorizedSymbol.

Reimplemented in DtMMMSymbol, and DtTTFUnitSymbol.

virtual const QString& DtTTSSymbol::string ( ) const
virtual

member data i/o

Return the alt name if useAltString has been set AND the alt name is not null. Otherwise return the long name.

virtual void DtTTSSymbol::setString ( const QString &  string)
virtual
virtual const QString& DtTTSSymbol::altString ( ) const
virtual
virtual void DtTTSSymbol::setAltString ( const QString &  name)
virtual
virtual void DtTTSSymbol::setUseAltString ( bool  value)
virtual

Use the alt name if it exists.

virtual bool DtTTSSymbol::useAltString ( ) const
virtual
virtual Qt::PenStyle DtTTSSymbol::penStyle ( ) const
virtual
virtual void DtTTSSymbol::setPenStyle ( const Qt::PenStyle  style)
virtual
virtual const QColor& DtTTSSymbol::penColor ( ) const
virtual
virtual void DtTTSSymbol::setPenColor ( const QColor &  color)
virtual
virtual unsigned DtTTSSymbol::pointSize ( ) const
virtual

Size can be set by point size or a conversion scale.

virtual void DtTTSSymbol::setScale ( const unsigned  scale)
virtual
virtual void DtTTSSymbol::setPointSize ( const unsigned  ptSize)
virtual

Reimplemented in DtTTFUnitSymbol.

virtual void DtTTSSymbol::setScaleToSize ( DtTTSScaleToSize scale)
virtual

Set function that converts scale to point size.

virtual DtTTSScaleToSize* DtTTSSymbol::scaleToSize ( ) const
virtual
virtual void DtTTSSymbol::setDegreesRotated ( double  )
virtual
virtual double DtTTSSymbol::degreesRotated ( ) const
virtual
virtual void DtTTSSymbol::setRotationOption ( DtRotationOption  )
virtual
virtual DtRotationOption DtTTSSymbol::rotationOption ( ) const
virtual
virtual void DtTTSSymbol::setRotationPointOffset ( const QPoint &  )
virtual

Set custom rotation point relative to origin.

virtual const QPoint DtTTSSymbol::rotationCenter ( ) const
virtual

Returned value is calculated based on rotation option etc.

virtual const QFont* DtTTSSymbol::font ( ) const
virtual

Gets/sets font.

virtual void DtTTSSymbol::setFont ( const QFont &  font)
virtual

Reimplemented in DtTTFUnitSymbol.

virtual void DtTTSSymbol::setFontname ( const QString &  name)
virtual
virtual const QString& DtTTSSymbol::fontname ( ) const
virtual
virtual void DtTTSSymbol::setConstrainToSize ( const QSize &  size)
virtual
virtual void DtTTSSymbol::clearConstrainToSize ( )
virtual
virtual bool DtTTSSymbol::constrainToSize ( ) const
virtual
virtual const QSize& DtTTSSymbol::constrainedSize ( ) const
virtual
virtual bool DtTTSSymbol::isScalable ( ) const
virtual

Return true/false if this is a scalable symbol. By default returns false.

Reimplemented from DtSymbol.

bool DtTTSSymbol::operator== ( const DtTTSSymbol orig) const
bool DtTTSSymbol::operator!= ( const DtTTSSymbol orig) const
virtual bool DtTTSSymbol::transparentCacheChanged ( ) const
virtual

Reimplemented from DtColorizedSymbol.

virtual void DtTTSSymbol::setShadowText ( bool  )
virtual
virtual bool DtTTSSymbol::shadowText ( ) const
virtual
virtual void DtTTSSymbol::setFontScalingFactor ( double  scale)
virtual

Scale is between 0 and 1, and is multiplied against the current font size to get a new font size.

virtual double DtTTSSymbol::fontScalingFactor ( ) const
virtual
static void DtTTSSymbol::setDefaultPenColor ( const QColor &  c)
static
static const QColor& DtTTSSymbol::defaultPenColor ( )
static
virtual const QString& DtTTSSymbol::bitmapSymbolCacheKey ( ) const
virtual

Returns a cache key that can be used to lookup in a bitmap cache.

Default returns "Symbol". Might be recalculated when called

Reimplemented from DtSymbol.

virtual void DtTTSSymbol::setHighlight ( const bool  highlight)
virtual

Set/get the highlight flag (whether the symbol should be drawn highlighted).

Reimplemented from DtSymbol.

virtual QString DtTTSSymbol::internalBitmapSymbolCacheKey ( ) const
protectedvirtual

Reimplemented in DtTTFUnitSymbol, and DtMMMSymbol.

Member Data Documentation

QString DtTTSSymbol::myString
protected

data members

QString DtTTSSymbol::myAltString
protected
bool DtTTSSymbol::myUseAltString
protected
Qt::PenStyle DtTTSSymbol::myPenStyle
protected
unsigned DtTTSSymbol::myPointSize
protected
DtTTSScaleToSize* DtTTSSymbol::myScaleToSize
protected
double DtTTSSymbol::myDegreesRotated
protected
QPoint DtTTSSymbol::myRotationPointOffset
protected
DtRotationOption DtTTSSymbol::myRotationOption
protected
QString DtTTSSymbol::myFontname
protected
QFont* DtTTSSymbol::myFont
protected
bool DtTTSSymbol::myConstrainToSize
protected
QSize DtTTSSymbol::myConstrainedSize
protected
bool DtTTSSymbol::myShadowText
protected
double DtTTSSymbol::myFontScalingFactor
protected
QColor DtTTSSymbol::gDefaultPenColor
staticprotected
bool DtTTSSymbol::myRecreateSymbolCacheKey
mutableprotected

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)