Aspose.Tasks for C++
CsvOptions.h
1 #pragma once
2 //-----------------------------------------------------------------------
3 // <copyright file="CsvOptions.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 
10 #include "aspose.tasks.cpp/Task.h"
11 #include "aspose.tasks.cpp/Saving/SimpleSaveOptions.h"
12 #include "aspose.tasks.cpp/Resource.h"
13 #include "aspose.tasks.cpp/aspose_tasks_api_defs.h"
14 
15 namespace Aspose
16 {
17 namespace Tasks
18 {
19 class IWriter;
20 namespace Saving
21 {
22 enum class CsvTextDelimiter;
23 class CsvWriter;
24 enum class DataCategory;
25 } // namespace Saving
26 class Task;
27 namespace Visualization
28 {
29 class GanttChartColumn;
30 class ProjectView;
31 } // namespace Visualization
32 } // namespace Tasks
33 } // namespace Aspose
34 namespace System
35 {
36 class DateTime;
37 namespace Text
38 {
39 class Encoding;
40 } // namespace Text
41 } // namespace System
42 
43 namespace Aspose {
44 
45 namespace Tasks {
46 
47 namespace Saving {
48 
49 /// <summary>
50 /// Allows to specify additional options when saving project to CSV.
51 /// </summary>
52 class ASPOSE_TASKS_SHARED_CLASS CsvOptions : public Aspose::Tasks::Saving::SimpleSaveOptions
53 {
54  typedef CsvOptions ThisType;
56 
57  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
58  ASPOSE_TASKS_SHARED_RTTI_INFO_DECL();
59 
60  friend class Aspose::Tasks::Saving::CsvWriter;
61 
62 public:
63 
64  /// <summary>
65  /// Gets a data category to be saved.
66  /// </summary>
67  ASPOSE_TASKS_SHARED_API Aspose::Tasks::Saving::DataCategory get_DataCategory() const;
68  /// <summary>
69  /// Sets a data category to be saved.
70  /// </summary>
71  ASPOSE_TASKS_SHARED_API void set_DataCategory(Aspose::Tasks::Saving::DataCategory value);
72  /// <summary>
73  /// Gets an encoding to save CSV with.
74  /// </summary>
75  ASPOSE_TASKS_SHARED_API const System::SharedPtr<System::Text::Encoding>& get_Encoding() const;
76  /// <summary>
77  /// Sets an encoding to save CSV with.
78  /// </summary>
79  ASPOSE_TASKS_SHARED_API void set_Encoding(const System::SharedPtr<System::Text::Encoding>& value);
80  /// <summary>
81  /// Gets a value indicating whether to include headers or not (default value is TRUE).
82  /// </summary>
83  ASPOSE_TASKS_SHARED_API bool get_IncludeHeaders() const;
84  /// <summary>
85  /// Sets a value indicating whether to include headers or not (default value is TRUE).
86  /// </summary>
87  ASPOSE_TASKS_SHARED_API void set_IncludeHeaders(bool value);
88  /// <summary>
89  /// Gets a text delimiter.
90  /// </summary>
91  ASPOSE_TASKS_SHARED_API CsvTextDelimiter get_TextDelimiter() const;
92  /// <summary>
93  /// Sets a text delimiter.
94  /// </summary>
95  ASPOSE_TASKS_SHARED_API void set_TextDelimiter(CsvTextDelimiter value);
96  /// <summary>
97  /// Gets a list of the view columns (<see cref="GanttChartColumn"></see>) to save to XLSX format.
98  /// If not set then default columns are saved.
99  /// </summary>
100  ASPOSE_TASKS_SHARED_API const System::SharedPtr<Aspose::Tasks::Visualization::ProjectView>& get_View() const;
101  /// <summary>
102  /// Sets a list of the view columns (<see cref="GanttChartColumn"></see>) to save to XLSX format.
103  /// If not set then default columns are saved.
104  /// </summary>
105  ASPOSE_TASKS_SHARED_API void set_View(const System::SharedPtr<Aspose::Tasks::Visualization::ProjectView>& value);
106 
107  /// <summary>
108  /// Initializes a new instance of the <see cref="CsvOptions"></see> class which can be used to save project in CSV format.
109  /// </summary>
110  ASPOSE_TASKS_SHARED_API CsvOptions();
111 
112  System::String _anonymous_method_0(System::SharedPtr<CsvOptions> self, System::SharedPtr<Task> task);
113  System::String _anonymous_method_1(System::SharedPtr<CsvOptions> self, System::SharedPtr<Task> task);
114  static System::String _anonymous_method_2(System::SharedPtr<Task> task);
115  System::String _anonymous_method_3(System::SharedPtr<CsvOptions> self, System::SharedPtr<Task> task);
116  static System::String _anonymous_method_4(System::SharedPtr<Task> task);
117  static System::String _anonymous_method_5(System::SharedPtr<Task> task);
118  static System::String _anonymous_method_6(System::SharedPtr<Resource> rsc);
119  static System::String _anonymous_method_7(System::SharedPtr<Resource> rsc);
120  static System::String _anonymous_method_8(System::SharedPtr<Resource> rsc);
121  System::String _anonymous_method_9(System::SharedPtr<CsvOptions> self, System::SharedPtr<Resource> rsc);
122  System::String _anonymous_method_10(System::SharedPtr<CsvOptions> self, System::SharedPtr<Resource> rsc);
123  System::String _anonymous_method_11(System::SharedPtr<CsvOptions> self, System::SharedPtr<Resource> rsc);
124  static System::String _anonymous_method_12(System::SharedPtr<Resource> rsc);
125 
126 protected:
127 
128  ASPOSE_TASKS_SHARED_API System::String get_CostFormatLabel() const;
129  ASPOSE_TASKS_SHARED_API void set_CostFormatLabel(const System::String& value);
130 
131  ASPOSE_TASKS_SHARED_API System::SharedPtr<IWriter> GetWriter() override;
132  ASPOSE_TASKS_SHARED_API void SetView();
133  ASPOSE_TASKS_SHARED_API System::SharedPtr<Aspose::Tasks::Visualization::ProjectView> GetTasksScheduleView();
134 
135  virtual ASPOSE_TASKS_SHARED_API ~CsvOptions();
136 
137  #ifdef ASPOSE_GET_SHARED_MEMBERS
138  ASPOSE_TASKS_SHARED_API void GetSharedMembers(System::Object::shared_members_type& result) const override;
139  #endif
140 
141 
142 private:
143 
144  Aspose::Tasks::Saving::DataCategory dataCategory;
145  System::String pr_CostFormatLabel;
146  System::SharedPtr<System::Text::Encoding> pr_Encoding;
147  bool pr_IncludeHeaders;
148  CsvTextDelimiter pr_TextDelimiter;
149  System::SharedPtr<Aspose::Tasks::Visualization::ProjectView> pr_View;
150 
151  System::SharedPtr<Aspose::Tasks::Visualization::GanttChartColumn> GetTaskIdColumn();
152  System::SharedPtr<Aspose::Tasks::Visualization::GanttChartColumn> GetTaskNameColumn();
153  System::SharedPtr<Aspose::Tasks::Visualization::GanttChartColumn> GetTaskDurationColumn();
154  System::SharedPtr<Aspose::Tasks::Visualization::GanttChartColumn> GetTaskStartColumn();
155  System::SharedPtr<Aspose::Tasks::Visualization::GanttChartColumn> GetTaskFinishColumn();
156  System::SharedPtr<Aspose::Tasks::Visualization::GanttChartColumn> GetTaskPercentCompleteColumn();
157  System::SharedPtr<Aspose::Tasks::Visualization::GanttChartColumn> GetTaskCostColumn();
158  System::SharedPtr<Aspose::Tasks::Visualization::GanttChartColumn> GetTaskWorkColumn();
159  System::SharedPtr<Aspose::Tasks::Visualization::GanttChartColumn> GetTaskOutlineLevelColumn();
160  System::String GetDateString(System::DateTime date);
161  System::SharedPtr<Aspose::Tasks::Visualization::ProjectView> GetRscView();
162 
163 };
164 
165 } // namespace Saving
166 } // namespace Tasks
167 } // namespace Aspose
168 
169 
Allows to specify additional options when saving project to CSV.
Definition: CsvOptions.h:53
void set_TextDelimiter(CsvTextDelimiter value)
Sets a text delimiter.
void set_View(const System::SharedPtr< Aspose::Tasks::Visualization::ProjectView > &value)
Sets a list of the view columns (GanttChartColumn) to save to XLSX format. If not set then default co...
bool get_IncludeHeaders() const
Gets a value indicating whether to include headers or not (default value is TRUE).
void set_IncludeHeaders(bool value)
Sets a value indicating whether to include headers or not (default value is TRUE).
CsvTextDelimiter get_TextDelimiter() const
Gets a text delimiter.
Aspose::Tasks::Saving::DataCategory get_DataCategory() const
Gets a data category to be saved.
const System::SharedPtr< System::Text::Encoding > & get_Encoding() const
Gets an encoding to save CSV with.
void set_Encoding(const System::SharedPtr< System::Text::Encoding > &value)
Sets an encoding to save CSV with.
CsvOptions()
Initializes a new instance of the CsvOptions class which can be used to save project in CSV format.
const System::SharedPtr< Aspose::Tasks::Visualization::ProjectView > & get_View() const
Gets a list of the view columns (GanttChartColumn) to save to XLSX format. If not set then default co...
void set_DataCategory(Aspose::Tasks::Saving::DataCategory value)
Sets a data category to be saved.
This is an abstract base class that allow the user to specify basic options when saving a project int...
Definition: SimpleSaveOptions.h:52
Definition: Asn.h:13