Aspose.Tasks for C++
SimpleSaveOptions.h
1 #pragma once
2 //-----------------------------------------------------------------------
3 // <copyright file="SimpleSaveOptions.cs" company="Aspose Pty Ltd">
4 // Copyright (c) 2002-2025 Aspose Pty Ltd. All Rights Reserved.
5 // </copyright>
6 //-----------------------------------------------------------------------
7 
8 #include <system/object.h>
9 
10 #include "aspose.tasks.cpp/aspose_tasks_api_defs.h"
11 
12 namespace Aspose
13 {
14 namespace Tasks
15 {
16 class IWriter;
17 class Project;
18 namespace Saving
19 {
20 class MPPSaveOptions;
21 enum class SaveFileFormat;
22 class SaveManager;
23 } // namespace Saving
24 class Task;
25 namespace Util
26 {
27 template <typename> class ICondition;
28 } // namespace Util
29 } // namespace Tasks
30 } // namespace Aspose
31 namespace System
32 {
33 namespace Collections
34 {
35 namespace Generic
36 {
37 template <typename> class IComparer;
38 } // namespace Generic
39 } // namespace Collections
40 } // namespace System
41 
42 namespace Aspose {
43 
44 namespace Tasks {
45 
46 namespace Saving {
47 
48 /// <summary>
49 /// This is an abstract base class that allow the user to specify basic options when saving a project into a particular format.
50 /// </summary>
51 class ASPOSE_TASKS_SHARED_CLASS SimpleSaveOptions : public virtual System::Object
52 {
54  typedef System::Object BaseType;
55 
56  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
57  ASPOSE_TASKS_SHARED_RTTI_INFO_DECL();
58 
60  friend class Aspose::Tasks::Saving::SaveManager;
61 
62 public:
63 
64  /// <summary>
65  /// Gets the format in which the document will be saved if this save options object is used.
66  /// </summary>
67  ASPOSE_TASKS_SHARED_API SaveFileFormat get_SaveFormat() const;
68  /// <summary>
69  /// Gets the comparer to sort tasks on Gantt chart and Task Sheet chart.
70  /// </summary>
71  ASPOSE_TASKS_SHARED_API const System::SharedPtr<System::Collections::Generic::IComparer<System::SharedPtr<Task>>>& get_TasksComparer() const;
72  /// <summary>
73  /// Sets the comparer to sort tasks on Gantt chart and Task Sheet chart.
74  /// </summary>
75  ASPOSE_TASKS_SHARED_API void set_TasksComparer(const System::SharedPtr<System::Collections::Generic::IComparer<System::SharedPtr<Task>>>& value);
76  /// <summary>
77  /// Gets the condition which is used to filter tasks rendered on Gantt, Task Sheet and Task Usage charts.
78  /// </summary>
79  /// <remarks>
80  /// If value is not specified the default filter is used which removes non-visible tasks -- i.e. descendant tasks of collapsed tasks.
81  /// </remarks>
82  ASPOSE_TASKS_SHARED_API const System::SharedPtr<Aspose::Tasks::Util::ICondition<System::SharedPtr<Task>>>& get_TasksFilter() const;
83  /// <summary>
84  /// Sets the condition which is used to filter tasks rendered on Gantt, Task Sheet and Task Usage charts.
85  /// </summary>
86  /// <remarks>
87  /// If value is not specified the default filter is used which removes non-visible tasks -- i.e. descendant tasks of collapsed tasks.
88  /// </remarks>
89  ASPOSE_TASKS_SHARED_API void set_TasksFilter(const System::SharedPtr<Aspose::Tasks::Util::ICondition<System::SharedPtr<Task>>>& value);
90 
91  ASPOSE_TASKS_SHARED_API SimpleSaveOptions();
92 
93 protected:
94 
95  /// <summary>
96  /// Gets or sets the project to save.
97  /// </summary>
98  System::WeakPtr<Aspose::Tasks::Project> project;
99 
100  /// <summary>
101  /// Sets the format in which the document will be saved if this save options object is used.
102  /// </summary>
103  ASPOSE_TASKS_SHARED_API void set_SaveFormat(SaveFileFormat value);
104  virtual ASPOSE_TASKS_SHARED_API System::SharedPtr<Aspose::Tasks::Project> get_Project();
105  virtual ASPOSE_TASKS_SHARED_API void set_Project(System::SharedPtr<Aspose::Tasks::Project> value);
106 
107  virtual ASPOSE_TASKS_SHARED_API System::SharedPtr<IWriter> GetWriter() = 0;
108  #ifdef ASPOSE_GET_SHARED_MEMBERS
109  ASPOSE_TASKS_SHARED_API void GetSharedMembers(System::Object::shared_members_type& result) const override;
110  #endif
111 
112 
113 private:
114 
115  SaveFileFormat pr_SaveFormat;
116  System::SharedPtr<System::Collections::Generic::IComparer<System::SharedPtr<Task>>> pr_TasksComparer;
117  System::SharedPtr<Aspose::Tasks::Util::ICondition<System::SharedPtr<Task>>> pr_TasksFilter;
118 
119 };
120 
121 } // namespace Saving
122 } // namespace Tasks
123 } // namespace Aspose
124 
125 
This is an abstract base class that allow the user to specify basic options when saving a project int...
Definition: SimpleSaveOptions.h:51
Represents a condition which can be used by filters or search methods.
Definition: SimpleSaveOptions.h:27
Definition: Asn.h:12
Allows to specify additional options when saving project data to MPP.
Definition: MPPSaveOptions.h:31