TabStops.h
1 #pragma once
2 // Copyright (c) 2001-2024 Aspose Pty Ltd. All Rights Reserved.
3 
4 #include <system/shared_ptr.h>
5 #include <system/icloneable.h>
6 #include <cstdint>
7 
8 #include "Aspose.PDF.Cpp/aspose_pdf_api_defs.h"
9 
10 namespace Aspose
11 {
12 namespace Pdf
13 {
14 namespace Text
15 {
16 enum class TabAlignmentType;
17 enum class TabLeaderType;
18 class TabStop;
19 class TextFragment;
20 class TextState;
21 } // namespace Text
22 } // namespace Pdf
23 } // namespace Aspose
24 namespace System
25 {
26 namespace Collections
27 {
28 namespace Generic
29 {
30 template <typename> class List;
31 } // namespace Generic
32 } // namespace Collections
33 namespace Xml
34 {
35 class XmlReader;
36 } // namespace Xml
37 } // namespace System
38 
39 namespace Aspose {
40 
41 namespace Pdf {
42 
43 namespace Text {
44 
48 class ASPOSE_PDF_SHARED_CLASS TabStops : public System::ICloneable
49 {
50  typedef TabStops ThisType;
52 
53  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
54  ASPOSE_PDF_SHARED_RTTI_INFO_DECL();
55 
58 
59 public:
60 
64  ASPOSE_PDF_SHARED_API bool get_IsReadOnly() const;
71  ASPOSE_PDF_SHARED_API int32_t get_Count();
72 
76  ASPOSE_PDF_SHARED_API TabStops();
77 
83  ASPOSE_PDF_SHARED_API System::SharedPtr<TabStop> Add();
90  ASPOSE_PDF_SHARED_API System::SharedPtr<TabStop> Add(float position);
95  ASPOSE_PDF_SHARED_API void Add(System::SharedPtr<TabStop> tabStop);
103  ASPOSE_PDF_SHARED_API System::SharedPtr<TabStop> Add(float position, TabLeaderType leaderType);
108  ASPOSE_PDF_SHARED_API System::SharedPtr<System::Object> Clone() override;
109 
115  ASPOSE_PDF_SHARED_API System::SharedPtr<TabStop> idx_get(int32_t index);
121  ASPOSE_PDF_SHARED_API void idx_set(int32_t index, System::SharedPtr<TabStop> value);
122 
123 protected:
124 
128  double get_lastPosition() const;
132  void set_lastPosition(double value);
136  double get_lastShift() const;
140  void set_lastShift(double value);
144  TabAlignmentType get_currentAlignment() const;
148  void set_currentAlignment(TabAlignmentType value);
152  TabLeaderType get_currentLeaderType() const;
156  void set_currentLeaderType(TabLeaderType value);
160  double get_currentLeaderLength() const;
164  void set_currentLeaderLength(double value);
168  ASPOSE_PDF_SHARED_API void set_IsReadOnly(bool value);
169 
171 
172 private:
173 
175  bool _attached;
176  double pr_lastPosition;
177  double pr_lastShift;
178  TabAlignmentType pr_currentAlignment;
179  TabLeaderType pr_currentLeaderType;
180  double pr_currentLeaderLength;
181 
186  void Remove(System::SharedPtr<TabStop> stop);
187 
188 };
189 
190 } // namespace Text
191 } // namespace Pdf
192 } // namespace Aspose
193 
194 
class ASPOSECPP_SHARED_CLASS List
Definition: ienumerable.h:17
TabLeaderType
Enumerates the tab leader types.
Definition: TabStop.h:55
Represents fragment of Pdf text.
Definition: TextFragment.h:173
Definition: Artifact.h:67
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: fwd.h:22
Represents a text type.
means saving in XML format
Definition: AFRelationship.h:4
void Deserialize(System::SharedPtr< System::Xml::XmlReader > reader)
Defies a method that enables object cloning - creating a copy of an object. Objects of this class sho...
Definition: icloneable.h:15
Represents a collection of TabStop objects.
Definition: TabStops.h:48
TabAlignmentType
Enumerates the tab alignment types.
Definition: TabStop.h:36
Represents a text state of a text
Definition: TextState.h:135
Whole PDF file will be submitted.