VR-Forces 4.1.1 Class Documentation
compositeSymbol.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2006 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: compositeSymbol.h,v $ $Revision: 1.52 $ $State: Exp $
7 *******************************************************************************/
8 
11 
12 #ifndef DtCompositeSymbol_H_
13 #define DtCompositeSymbol_H_
14 
15 #include "symbology/symbol.h"
17 
18 class DtLineSymbol;
19 
28 
33 
35 {
36  Q_OBJECT
37 
38 public:
42  virtual ~DtCompositeSymbol();
43 
47  const DtDisplayPoint & center);
48 
51  virtual DtSymbol* clone() const;
52 
53  virtual bool setLocationData(const QPolygon*);
54 
55  void shift(QPoint p);
56 
57  //Draw -> draws the children not itself...
58  virtual void draw(QPainter& paint) const;
59  virtual void drawHidden(QPainter& paint) const;
60 
63  virtual const DtDisplayPoint centerPoint() const;
64 
66  virtual bool select(const QPoint& point);
67 
70  virtual void addSymbol(DtSymbol* symbol, bool isALabel = false);
71 
74  virtual void removeSymbol(const DtSymbol* symbol, bool deleteSymbol = true, bool resetMainSymbol = false);
75  virtual void removeSymbol(int iIndex, bool deleteSymbol = true, bool resetMainSymbol = false);
76 
79  virtual void removeAllSymbols(const QVector<DtSymbol*>& except = QVector<DtSymbol*>());
80 
84  virtual DtSymbol* setMainSymbol(DtSymbol* symbol);
85  virtual DtSymbol* mainSymbol() const;
86 
89  virtual DtSymbol* getSymbolByName(const QString& name);
90 
93  virtual bool isComposite() {return true;}
94 
96  virtual QSize bbox() const;
97 
100  virtual QRect selBbox() const;
101 
102  virtual bool overlapsSymbol(const DtSymbol & aSymbol,
103  const DtSymbol_OverlapTest aTest = DtSymbol_BoxPieces,
104  const float aTolerance = 0) const;
105 
106  //This function JUST compares the labels of the object for
107  //overlap as opposed to the object itself
108  virtual bool labelsOverlapsSymbol(const DtSymbol & aSymbol,
109  const DtSymbol_OverlapTest aTest = DtSymbol_BoundingBox,
110  const float aTolerance = 0) const;
111 
112  virtual DtSymbolList* childrenList() const;
113  virtual DtSymbolList* labelList() const;
114 
116  virtual bool show(DtShowHideContext module);
117 
119  virtual bool hide(DtShowHideContext module);
120 
122  virtual void setDrawOrder();
123 
125  virtual DtSymbol* editableSymbol();
126 
130  virtual int labelOffset(const DtSymbol* s) const;
131  virtual void setLabelOffset(int i);
132 
134  virtual const QPoint& lowestLabelOffset() const;
135 
136  virtual void setTransparencyLevel(int i);
137 
139  virtual void hideAllChildren(DtShowHideContext iModule = DtDefaultShowHideContext);
140 
142  virtual void showAllChildren(DtShowHideContext iModule = DtDefaultShowHideContext);
143 
151  virtual void setShadowText(bool b);
152 
153  virtual void blockSignals(bool);
154 
156  virtual bool originIsCenterOfMass() const;
157 
158  static DtSymbol* create(DtSymbolDrawer& drawer);
159  virtual void setCacheSymbolAsBitmap(bool);
160 
161  virtual void setShowIndicatorOption(int);
162  int showIndicatorOption() const;
163 
164  virtual DtShowHideContext mapIndicatorOptionToContext(int) const;
165  virtual void setHighlight(const bool highlight);
166 
168  virtual bool editMode();
169  virtual void setEditMode(bool onOff);
170 
171  virtual void reset();
172 
173 protected:
174  virtual bool transparentCacheChanged() const;
175  virtual void cacheTransparentVariables();
176 
177 protected slots:
179  virtual void symbolDestroyed(const DtSymbol *s);
180 
182  virtual void symbolRemoved(const DtSymbol* s);
183 
184 protected:
186  virtual void setChildrenList(DtSymbolList* list);
187 
189  virtual bool forceUpdate() const;
190 
193  virtual void draw(DtSymbol* symbol, QPainter& paint) const;
194  virtual void drawHidden(DtSymbol* symbol, QPainter& paint) const;
195 
196  virtual void setScaleBy(double factor);
197  virtual bool isScalable() const;
198 
200  virtual void setupSelect();
201  virtual void selectSymbols();
202 
203  virtual void wasHidden(DtSymbol* sym);
204  virtual void wasShown(DtSymbol* sym);
205 
206 private:
209 
210 protected:
220 };
221 
223 {
224  return myShowIndicatorOption;
225 }
226 
227 #endif

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)