ACF $AcfVersion:0$
CPolylineComp.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ACF-Commercial
2#pragma once
3
4
5// ACF includes
7#include <i2d/CPolyline.h>
8
9
10namespace i2d
11{
12
13
18class CPolylineComp: public TObject2dCompWrap<CPolyline>
19{
20public:
22
23 I_BEGIN_COMPONENT(CPolylineComp);
24 I_REGISTER_INTERFACE(CPolyline);
25 I_REGISTER_INTERFACE(CPolygon);
26 I_REGISTER_INTERFACE(IObject2d);
27 I_REGISTER_INTERFACE(iser::ISerializable);
28 I_ASSIGN_MULTI_0(m_xAttrPtr, "X", "X-Positions of the poly-line points", true);
29 I_ASSIGN_MULTI_0(m_yAttrPtr, "Y", "Y-Positions of the poly-line points", true);
30 I_ASSIGN(m_isClosedAttrPtr, "IsClosed", "Indicate if poly-line should be initially closed", true, false);
31 I_END_COMPONENT;
32
33protected:
34 // reimplemented (icomp::CComponentBase)
35 virtual void OnComponentCreated() override;
36
37private:
38 I_MULTIATTR(double, m_xAttrPtr);
39 I_MULTIATTR(double, m_yAttrPtr);
40 I_ATTR(bool, m_isClosedAttrPtr);
41};
42
43
44} // namespace i2d
45
46
Definition of the data model for a polygon.
Definition CPolygon.h:20
Implementation of a poly-line as a component.
virtual void OnComponentCreated() override
TObject2dCompWrap< CPolyline > BaseClass
2D-object representing a polyline.
Definition CPolyline.h:19
Common interface for describing the 2D-objects.
Definition IObject2d.h:26
Base class for all components implementing 2D objects.
Common class for all classes which objects can be archived or restored from archive.
Contains the 2D objects.
Definition CAffine2d.h:11