![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /********************************************************************* 00002 ** Copyright (c) 2001 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: symbolLensArea.h,v $ $Revision: 1.26 $ $State: Exp $ 00007 *********************************************************************/ 00008 00011 00012 #ifndef SYMBOLLENSAREA_H 00013 #define SYMBOLLENSAREA_H 00014 00015 #include "filterLenses/filterLensesDefines.h" 00016 #include "filterLenses/lensArea.h" 00017 class DtSymbol; 00018 class DtSymbolList; 00019 00022 class DT_DLL_filterLenses DtSymbolLensArea : public DtLensArea 00023 { 00024 Q_OBJECT 00025 00026 public: 00027 00029 DtSymbolLensArea(QWidget * parent = 0, Qt::WindowFlags = 0, bool useGL = false); 00030 00032 virtual ~DtSymbolLensArea(); 00033 00034 virtual void setSymbolList(DtSymbolList* mySymbolList); 00035 00037 virtual DtSymbolList* symbolList(); 00038 00039 public: 00040 00042 static DtSymbolLensArea* create(QWidget * parent, const Qt::WindowFlags& flags, bool useGL = false); 00043 00048 virtual void drawOrderSymbols(DtSymbolList* list, bool addAll); 00049 00052 virtual void insertIntoDrawOrder(DtSymbol*); 00053 00055 virtual void drawOrderSymbols(); 00056 00058 virtual DtSymbolList* drawOrder(); 00059 00061 virtual void clearDrawOrder(); 00062 00064 virtual void setForceDrawOrderAdd(bool); 00065 virtual bool forceDrawOrderAdd() const; 00066 00068 void setBlockSymbolTick(bool); 00069 bool blockSymbolTick() const; 00070 00072 virtual void removeSymbol(DtSymbol*); 00073 00074 public slots: 00075 //redraw the background 00076 virtual void tick(); 00077 00078 protected slots: 00079 00080 virtual void symbolDestroyed(QObject*); 00081 00082 protected: 00083 00084 DtSymbol* filterModelData(DtSymbol* symbol); 00085 00086 //Tick the symbolList if it exists. 00087 virtual void tickSymbolList(); 00088 00089 virtual void addSymbolToDrawOrder(DtSymbol* s); 00090 00091 protected: 00092 //The following items are passed into this class 00093 //Thus they are not owned or deleted, but the class 00094 //should be destroyed before these items are 00095 00096 //Only one of these symbols is used at the same time 00097 DtSymbolList* mySymbolList; 00098 00099 DtSymbolList* myDrawOrder; 00100 00101 bool myForceDrawOrderAdd; 00102 bool myBlockSymbolTick; 00103 }; 00104 00105 inline void DtSymbolLensArea::setBlockSymbolTick(bool b) 00106 { 00107 myBlockSymbolTick = b; 00108 } 00109 00110 inline bool DtSymbolLensArea::blockSymbolTick() const 00111 { 00112 return myBlockSymbolTick; 00113 } 00114 00115 #endif //! SYMBOLLENSAREA_H