OpenLexocad  27.0
PropertyTransform.h
Go to the documentation of this file.
1 #pragma once
2 #include <Core/Property.h>
3 #include <Core/Variant.h>
4 #include <Core/core_defines2.h>
5 #include <Geom/GTrsf.h>
6 #include <Geom/Trsf.h>
7 
8 #include <vector>
9 
10 namespace Core
11 {
13 {
15 
16 public:
17  PropertyTransform(void);
18  virtual ~PropertyTransform(void);
19 
20  void setValue(const Geom::Trsf& v);
21  bool setValueFromVariant(const Core::Variant& value);
22  void copyValue(Core::Property* p);
23 
24  void setIdentity();
25 
26  const Geom::Trsf& getValue() const;
27  Core::Variant getVariant(void) const;
28 
29  virtual void save(Base::AbstractWriter& writer, Base::PersistanceVersion& save_version);
30 
32  inline virtual void restore(Base::AbstractXMLReader& reader, Base::PersistanceVersion& version);
33  virtual bool isEqual(const Property*) const;
34  std::shared_ptr<Core::DbgInfo> getDbgInfo() const override;
35 
36 protected:
38 };
39 
40 
42 {
44 
45 public:
46  PropertyGTransform(void);
47  virtual ~PropertyGTransform(void);
48 
49  void setValue(const Geom::GTrsf& v);
50  bool setValueFromVariant(const Core::Variant& value);
51  void copyValue(Core::Property* p);
52 
53  void setIdentity();
54 
55  const Geom::GTrsf& getValue() const;
56  Core::Variant getVariant(void) const;
57 
58  virtual void save(Base::AbstractWriter& writer, Base::PersistanceVersion& save_version);
59 
61  virtual void restore(Base::AbstractXMLReader& reader, Base::PersistanceVersion& version);
62  virtual bool isEqual(const Property*) const;
63 
64 protected:
66 };
67 
68 DECLARE_PROPERTY_FACTORY(PropertyTransform_Factory, Core::PropertyTransform);
69 DECLARE_PROPERTY_FACTORY(PropertyGTransform_Factory, PropertyGTransform);
70 
71 } // namespace Core
#define CORE_EXPORT
Definition: core_defines2.h:10
Definition: Persistance.h:20
LX_CORE_EXPORT Version & version
Geom::GTrsf _trsf
Definition: PropertyTransform.h:65
Definition: Variant.h:90
Definition: AbstractXMLReader.h:10
Definition: Trsf.h:58
Definition: Base.h:19
Geom::Trsf _trsf
Definition: PropertyTransform.h:37
Definition: Writer.h:27
Definition: GTrsf.h:49
Definition: PropertyTransform.h:41
Definition: Property.h:81
TYPESYSTEM_HEADER()
Definition: PropertyTransform.h:12
DECLARE_PROPERTY_FACTORY(PropertyAxis1_Factory, Core::PropertyAxis1)