Aspose.Tasks for C++
OutlineValue.h
1 #pragma once
2 //-----------------------------------------------------------------------
3 // <copyright file="OutlineValue.cs" company="Aspose Pty Ltd">
4 // Copyright (c) 2002-2024 Aspose Pty Ltd. All Rights Reserved.
5 // </copyright>
6 //-----------------------------------------------------------------------
7 
8 #include <system/string.h>
9 #include <system/nullable.h>
10 #include <system/guid.h>
11 #include <system/decimal.h>
12 
13 #include "aspose.tasks.cpp/NullableBool.h"
14 #include "aspose.tasks.cpp/Duration.h"
15 #include "aspose.tasks.cpp/aspose_tasks_api_defs.h"
16 
17 namespace Aspose
18 {
19 namespace Tasks
20 {
21 namespace Filters
22 {
23 class OutlineValueGuidOrIdFilter;
24 } // namespace Filters
25 namespace IO
26 {
27 namespace MSProject
28 {
29 class CustomFieldTypeReader;
30 class MPP12OutlineCodeDefinitionReader;
31 class MPP12OutlineCodeDefinitionWriter;
32 class MPP14OutlineCodeDefinitionReader;
33 class MPP14OutlineCodeDefinitionWriter;
34 class MPP9OutlineCodeDefinitionReader;
35 class MPP9OutlineCodeDefinitionWriter;
36 class MPPOutlineCodeDefinitionWriter;
37 class OutlineValueConverter;
38 } // namespace MSProject
39 namespace Pwa
40 {
41 namespace InternalApi
42 {
43 namespace Mapping
44 {
45 class ExtendedAttributeDefinitionMapper;
46 class ExtendedAttributeDefinitionToRawValuesMapper;
47 template <typename> class ExtendedAttributeParentEntityToRawValuesMapper;
48 } // namespace Mapping
49 } // namespace InternalApi
50 } // namespace Pwa
51 namespace Xer
52 {
53 class PrimaveraExtendedAttributeLookupBuilder;
54 } // namespace Xer
55 namespace Xml
56 {
57 class ExtendedAttributeNodeReader;
58 class OutlineCodeDefinitionReader;
59 class OutlineValueXml;
60 } // namespace Xml
61 } // namespace IO
62 class OutlineCode;
63 class OutlineCodeDefinition;
64 class OutlineCodesSynchronizer;
65 class OutlineValueCollection;
66 enum class OutlineValueType;
67 class Value;
68 } // namespace Tasks
69 } // namespace Aspose
70 
71 namespace Aspose {
72 
73 namespace Tasks {
74 
75 /// <summary>
76 /// Represents an outline value.
77 /// </summary>
78 class ASPOSE_TASKS_SHARED_CLASS OutlineValue : public System::Object
79 {
80  typedef OutlineValue ThisType;
81  typedef System::Object BaseType;
82 
83  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
84  ASPOSE_TASKS_SHARED_RTTI_INFO_DECL();
85 
86  friend class Aspose::Tasks::IO::Xer::PrimaveraExtendedAttributeLookupBuilder;
87  friend class Aspose::Tasks::Filters::OutlineValueGuidOrIdFilter;
88  template<typename FT0> friend class Aspose::Tasks::IO::Pwa::InternalApi::Mapping::ExtendedAttributeParentEntityToRawValuesMapper;
89  friend class Aspose::Tasks::IO::Pwa::InternalApi::Mapping::ExtendedAttributeDefinitionToRawValuesMapper;
90  friend class Aspose::Tasks::IO::MSProject::CustomFieldTypeReader;
91  friend class Aspose::Tasks::IO::MSProject::MPP12OutlineCodeDefinitionReader;
92  friend class Aspose::Tasks::IO::MSProject::MPP14OutlineCodeDefinitionReader;
93  friend class Aspose::Tasks::IO::MSProject::MPP14OutlineCodeDefinitionWriter;
94  friend class Aspose::Tasks::IO::MSProject::MPP9OutlineCodeDefinitionReader;
95  friend class Aspose::Tasks::IO::MSProject::OutlineValueConverter;
96  friend class Aspose::Tasks::IO::MSProject::MPP12OutlineCodeDefinitionWriter;
97  friend class Aspose::Tasks::IO::MSProject::MPPOutlineCodeDefinitionWriter;
98  friend class Aspose::Tasks::IO::MSProject::MPP9OutlineCodeDefinitionWriter;
99  friend class Aspose::Tasks::IO::Pwa::InternalApi::Mapping::ExtendedAttributeDefinitionMapper;
100  friend class Aspose::Tasks::IO::Xml::ExtendedAttributeNodeReader;
101  friend class Aspose::Tasks::IO::Xml::OutlineCodeDefinitionReader;
102  friend class Aspose::Tasks::IO::Xml::OutlineValueXml;
103  friend class Aspose::Tasks::OutlineCode;
105  friend class Aspose::Tasks::OutlineCodesSynchronizer;
107  friend class Aspose::Tasks::Value;
108 
109 public:
110 
111  /// <summary>
112  /// Gets the unique Id of an outline code value within a project.
113  /// </summary>
114  ASPOSE_TASKS_SHARED_API int32_t get_ValueId() const;
115  /// <summary>
116  /// Sets the unique Id of an outline code value within a project.
117  /// </summary>
118  ASPOSE_TASKS_SHARED_API void set_ValueId(int32_t value);
119  /// <summary>
120  /// Gets a GUID which identifies this value among others in the entire project.
121  /// </summary>
122  ASPOSE_TASKS_SHARED_API System::Guid get_ValueGuid() const;
123  /// <summary>
124  /// Gets the outline code type.
125  /// </summary>
126  ASPOSE_TASKS_SHARED_API OutlineValueType get_Type() const;
127  /// <summary>
128  /// Sets the outline code type.
129  /// </summary>
130  ASPOSE_TASKS_SHARED_API void set_Type(OutlineValueType value);
131  /// <summary>
132  /// Gets the Id of a parent node of an outline code.
133  /// </summary>
134  ASPOSE_TASKS_SHARED_API int32_t get_ParentValueId() const;
135  /// <summary>
136  /// Sets the Id of a parent node of an outline code.
137  /// </summary>
138  ASPOSE_TASKS_SHARED_API void set_ParentValueId(int32_t value);
139  /// <summary>
140  /// Gets the actual value.
141  /// </summary>
142  ASPOSE_TASKS_SHARED_API System::String get_Value() const;
143  /// <summary>
144  /// Sets the actual value.
145  /// </summary>
146  ASPOSE_TASKS_SHARED_API void set_Value(const System::String& value);
147  /// <summary>
148  /// Gets the duration if Type is Duration.
149  /// </summary>
150  /// <remarks>
151  /// Prefer this property over the <see cref="Value"></see>, when you need to set the value for OutlineValues with Duration type .
152  /// </remarks>
153  ASPOSE_TASKS_SHARED_API System::Nullable<Duration> get_DurationValue() const;
154  /// <summary>
155  /// Sets the duration if Type is Duration.
156  /// </summary>
157  /// <remarks>
158  /// Prefer this property over the <see cref="Value"></see>, when you need to set the value for OutlineValues with Duration type .
159  /// </remarks>
160  ASPOSE_TASKS_SHARED_API void set_DurationValue(System::Nullable<Duration> value);
161  /// <summary>
162  /// Gets the description of an outline value.
163  /// </summary>
164  ASPOSE_TASKS_SHARED_API System::String get_Description() const;
165  /// <summary>
166  /// Sets the description of an outline value.
167  /// </summary>
168  ASPOSE_TASKS_SHARED_API void set_Description(const System::String& value);
169  /// <summary>
170  /// Gets a value indicating whether outline value is collapsed or not.
171  /// </summary>
172  /// <remarks>
173  /// This is new for MS Project 2010 property.
174  /// </remarks>
175  ASPOSE_TASKS_SHARED_API bool get_IsCollapsed();
176  /// <summary>
177  /// Sets a value indicating whether outline value is collapsed or not.
178  /// </summary>
179  /// <remarks>
180  /// This is new for MS Project 2010 property.
181  /// </remarks>
182  ASPOSE_TASKS_SHARED_API void set_IsCollapsed(bool value);
183 
184  ASPOSE_TASKS_SHARED_API OutlineValue();
185 
186 protected:
187 
188  /// <summary>
189  /// Gets a GUID which identifies this value among others in the entire project.
190  /// </summary>
191  ASPOSE_TASKS_SHARED_API void set_ValueGuid(System::Guid value);
192  ASPOSE_TASKS_SHARED_API System::Decimal get_NumericValue() const;
193  ASPOSE_TASKS_SHARED_API void set_NumericValue(System::Decimal value);
194  ASPOSE_TASKS_SHARED_API NullableBool get_NullableIsCollapsed() const;
195  ASPOSE_TASKS_SHARED_API void set_NullableIsCollapsed(NullableBool value);
196  ASPOSE_TASKS_SHARED_API int32_t get_Level() const;
197  ASPOSE_TASKS_SHARED_API void set_Level(int32_t value);
198  ASPOSE_TASKS_SHARED_API System::Nullable<double> get_SortOrder() const;
199  ASPOSE_TASKS_SHARED_API void set_SortOrder(System::Nullable<double> value);
200 
201  #ifdef ASPOSE_GET_SHARED_MEMBERS
202  ASPOSE_TASKS_SHARED_API void GetSharedMembers(System::Object::shared_members_type& result) const override;
203  #endif
204 
205 
206 private:
207 
208  System::Guid valueGuid;
209  NullableBool isCollapsed;
210  System::Nullable<Duration> durationValue;
211  System::Decimal numericValue;
212  System::String value;
213  int32_t pr_ValueId;
214  OutlineValueType pr_Type;
215  int32_t pr_ParentValueId;
216  System::String pr_Description;
217  int32_t pr_Level;
218  System::Nullable<double> pr_SortOrder;
219 
220  System::String get_DebuggerDisplay();
221 
222 };
223 
224 } // namespace Tasks
225 } // namespace Aspose
226 
227 
A class for boolean values with possibility to check whether the value was defined or not.
Definition: NullableBool.h:22
Represents an outline code definition.
Definition: OutlineCodeDefinition.h:84
Represents a value of an outline code.
Definition: OutlineCode.h:35
Represents a collection of OutlineValue objects.
Definition: OutlineValueCollection.h:67
Represents an outline value.
Definition: OutlineValue.h:79
void set_Type(OutlineValueType value)
Sets the outline code type.
System::String get_Description() const
Gets the description of an outline value.
void set_DurationValue(System::Nullable< Duration > value)
Sets the duration if Type is Duration.
int32_t get_ValueId() const
Gets the unique Id of an outline code value within a project.
void set_Description(const System::String &value)
Sets the description of an outline value.
System::Guid get_ValueGuid() const
Gets a GUID which identifies this value among others in the entire project.
void set_Value(const System::String &value)
Sets the actual value.
OutlineValueType get_Type() const
Gets the outline code type.
bool get_IsCollapsed()
Gets a value indicating whether outline value is collapsed or not.
System::String get_Value() const
Gets the actual value.
void set_ParentValueId(int32_t value)
Sets the Id of a parent node of an outline code.
void set_ValueId(int32_t value)
Sets the unique Id of an outline code value within a project.
int32_t get_ParentValueId() const
Gets the Id of a parent node of an outline code.
void set_IsCollapsed(bool value)
Sets a value indicating whether outline value is collapsed or not.
System::Nullable< Duration > get_DurationValue() const
Gets the duration if Type is Duration.
Represents a value in a value list.
Definition: Value.h:73
void set_NumericValue(System::Decimal value)
Sets the actual value which is used to represent number or cost value.
System::Decimal get_NumericValue()
Gets the actual value which is used to represent number or cost value.
Definition: Asn.h:13