ImagingTools Core SDK
CTextLabel.h
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ImtCore-Commercial
2#pragma once
3
4
5// ACF includes
6#include <i2d/CLabel.h>
7#include <i2d/CRectangle.h>
8
9// ImtCore
10#include <imtreport/CFont.h>
11
12
13namespace imtreport
14{
15
16
17class CTextLabel: public i2d::CLabel
18{
19public:
20 typedef i2d::CLabel BaseClass;
21
22 CTextLabel();
23
27 virtual const CFont& GetFont() const;
28
32 virtual void SetFont(const CFont& font);
33
37 virtual const i2d::CRectangle& GetRectangle() const;
38
42 virtual void SetRectangle(const i2d::CRectangle& rectangle);
43
47 virtual Qt::Alignment GetAlignment() const;
48
52 virtual void SetAlignment(const Qt::Alignment alignment);
53
54 // reimplemented (iser::ISerializable)
55 virtual bool Serialize(iser::IArchive& archive) override;
56
57 // reimplemented istd::IChangeable
58 virtual int GetSupportedOperations() const override;
59 virtual bool CopyFrom(const IChangeable& object, CompatibilityMode mode = CM_WITHOUT_REFS) override;
60 virtual bool IsEqual(const IChangeable& object) const override;
61 virtual istd::IChangeableUniquePtr CloneMe(CompatibilityMode mode = CM_WITHOUT_REFS) const override;
62 virtual bool ResetData(CompatibilityMode mode = CM_WITHOUT_REFS) override;
63
64private:
65 CFont m_font;
66 i2d::CRectangle m_rectangle;
67 Qt::Alignment m_alignment;
68};
69
70
71} // namespace imtreport
72
73