QCAD
Open Source 2D CAD
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RDimOrdinateEntity.h
Go to the documentation of this file.
1 
20 #ifndef RDIMORDINATEENTITY_H
21 #define RDIMORDINATEENTITY_H
22 
23 #include "entity_global.h"
24 
25 #include "RDimensionEntity.h"
26 #include "RDimOrdinateData.h"
27 
28 class RDocument;
29 class RExporter;
30 
39 
40  Q_DECLARE_TR_FUNCTIONS(RDimOrdinateEntity)
41 
42 public:
52 
61 
65 
67 
71 
75 
76 public:
77  RDimOrdinateEntity(RDocument* document, const RDimOrdinateData& data,
78  RObject::Id objectId = RObject::INVALID_ID);
79  virtual ~RDimOrdinateEntity();
80 
81  static void init();
82 
83  static QSet<RPropertyTypeId> getStaticPropertyTypeIds() {
85  }
86 
87  virtual RDimOrdinateEntity* clone() const {
88  return new RDimOrdinateEntity(*this);
89  }
90 
91  virtual RS::EntityType getType() const {
92  return RS::EntityDimOrdinate;
93  }
94 
95  bool setProperty(RPropertyTypeId propertyTypeId, const QVariant& value,
96  RTransaction* transaction=NULL);
97  QPair<QVariant, RPropertyAttributes> getProperty(
98  RPropertyTypeId& propertyTypeId,
99  bool humanReadable = false, bool noAttributes = false);
100 
102  return data;
103  }
104 
106  data = d;
107  }
108 
109  virtual const RDimOrdinateData& getData() const {
110  return data;
111  }
112 
113  void setLeaderEndPoint(const RVector& p) {
114  data.setLeaderEndPoint(p);
115  }
116 
118  return data.getLeaderEndPoint();
119  }
120 
121  void setDefiningPoint(const RVector& p) {
122  data.setDefiningPoint(p);
123  }
124 
126  return data.getDefiningPoint();
127  }
128 
130  data.setMeasuringXAxis();
131  }
132 
134  data.setMeasuringYAxis();
135  }
136 
137  bool isMeasuringXAxis() const {
138  return data.isMeasuringXAxis();
139  }
140 
141 protected:
142  virtual void print(QDebug dbg) const;
143 
144 protected:
146 };
147 
149 Q_DECLARE_METATYPE(QSharedPointer<RDimOrdinateEntity>)
150 Q_DECLARE_METATYPE(QSharedPointer<RDimOrdinateEntity>*)
151 
152 #endif