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

A symbol representing a bitmap. More...

Inheritance diagram for DtBMPSymbol:
Inheritance graph
[legend]

Public Member Functions

 DtBMPSymbol (DtSymbolDrawer &drawer)
 Constructor.
 DtBMPSymbol (DtSymbolDrawer &drawer, const QString &filename)
 DtBMPSymbol (DtSymbolDrawer &drawer, const QPixmap &pm)
 DtBMPSymbol (DtNullDrawer &drawer, const QString &filename)
 Constructor.
 DtBMPSymbol (const DtBMPSymbol &orig)
 Copy Constructor.
DtBMPSymboloperator= (const DtBMPSymbol &orig)
 Assignment Operatior.
virtual ~DtBMPSymbol ()
 Destructor.
virtual DtSymbolclone () const
 Create a clone of this symbol.
virtual const QString & filename () const
 Get the name of the bitmap file including its path.
virtual void setFilename (const QString &)
virtual const QPixmap & pixmap () const
 Get the stashed pixmap.
virtual void setPixmap (const QPixmap &)
virtual void setGhosted (bool ghosted)
 Make the bitmap look ghosted.
virtual bool ghosted () const
 returns whether or not this bitmap should look ghosted
virtual bool isScalable () const
 Return true/false if this is a scalable symbol. By default returns false.
bool operator== (const DtBMPSymbol &orig) const
bool operator!= (const DtBMPSymbol &orig) const
virtual bool transparentCacheChanged () const
- 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 void setHighlight (const bool highlight)
 Set/get the highlight flag (whether the symbol should be drawn highlighted).
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 void setColor (const QColor &color)
 Noop function to allow subclasses to override.
virtual void clearColor ()
 Noop function to allow subclasses to clear out any color information.
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 const QString & bitmapSymbolCacheKey () const
 Returns a cache key that can be used to lookup in a bitmap cache.
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)

Protected Attributes

QString myFilename
 data members
QPixmap myPixmap
bool myGhosted
- 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

Private Member Functions

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

Additional Inherited Members

- Public Types inherited from DtSymbol
enum  DtSymbol_OverlapTest {
  DtSymbol_BoundingSphere = 0, DtSymbol_BoundingBox = 1, DtSymbol_SpherePieces = 2, DtSymbol_BoxPieces = 3,
  DtSymbol_Exact = 4
}
 Type of overlap test. More...
enum  DtSymbol_DrawOrder { DtSymbol_DrawAsEntered = 0, DtSymbol_DrawFirst = 1, DtSymbol_DrawLast = 2 }
enum  DtSymbolCompositeDrawOptions { DtSymbol_Always = 0, DtSymbol_Never = 1, DtSymbol_OnlyIfCloned = 2 }
- 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()
- Static Public Member Functions inherited from DtSymbol
static DtNullDrawernullDrawer ()
- Protected Member Functions inherited from DtSymbol
bool overlapsBoundingSphere (const DtSymbol &aSymbol, const float aTolerance) const
 Returns true if the bounding spheres of the symbols intersect and the symbols are intersectable.
bool overlapsBoundingBox (const DtSymbol &aSymbol, const float aTolerance) const
 Returns true if the bounding boxes of the symbols intersect and the symbols are intersectable.
- Static Protected Attributes inherited from DtSymbol
static DtNullDrawer theNullDrawer

Detailed Description

A symbol representing a bitmap.

A corresponding BMPDrawer is required if you want the bitmap to actually draw.

Constructor & Destructor Documentation

DtBMPSymbol::DtBMPSymbol ( DtSymbolDrawer drawer)

Constructor.

DtBMPSymbol::DtBMPSymbol ( DtSymbolDrawer drawer,
const QString &  filename 
)
DtBMPSymbol::DtBMPSymbol ( DtSymbolDrawer drawer,
const QPixmap &  pm 
)
DtBMPSymbol::DtBMPSymbol ( DtNullDrawer drawer,
const QString &  filename 
)

Constructor.

DtBMPSymbol::DtBMPSymbol ( const DtBMPSymbol orig)

Copy Constructor.

virtual DtBMPSymbol::~DtBMPSymbol ( )
virtual

Destructor.

DtBMPSymbol::DtBMPSymbol ( )
private

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

Member Function Documentation

DtBMPSymbol& DtBMPSymbol::operator= ( const DtBMPSymbol orig)

Assignment Operatior.

virtual DtSymbol* DtBMPSymbol::clone ( ) const
virtual

Create a clone of this symbol.

Reimplemented from DtSymbol.

virtual const QString& DtBMPSymbol::filename ( ) const
virtual

Get the name of the bitmap file including its path.

virtual void DtBMPSymbol::setFilename ( const QString &  )
virtual
virtual const QPixmap& DtBMPSymbol::pixmap ( ) const
virtual

Get the stashed pixmap.

virtual void DtBMPSymbol::setPixmap ( const QPixmap &  )
virtual
virtual void DtBMPSymbol::setGhosted ( bool  ghosted)
virtual

Make the bitmap look ghosted.

virtual bool DtBMPSymbol::ghosted ( ) const
virtual

returns whether or not this bitmap should look ghosted

virtual bool DtBMPSymbol::isScalable ( ) const
virtual

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

Reimplemented from DtSymbol.

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

Reimplemented from DtSymbol.

Member Data Documentation

QString DtBMPSymbol::myFilename
protected

data members

QPixmap DtBMPSymbol::myPixmap
protected
bool DtBMPSymbol::myGhosted
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)