search/mag_sel search/close
FieldFileSize.h
1 // Copyright 2001-2021 Aspose Pty Ltd. All Rights Reserved.
3 //
4 // This file is part of Aspose.Words. The source code in this file
5 // is only intended as a supplement to the documentation, and is provided
6 // "as is", without warranty of any kind, either expressed or implied.
9 #pragma once
10 
11 #include <system/string.h>
12 
13 #include <Aspose.Words.Cpp/Fields/FieldSwitchType.h>
14 #include <Aspose.Words.Cpp/Fields/IFieldInfoResultProvider.h>
15 #include <Aspose.Words.Cpp/Fields/IFieldCodeTokenInfoProvider.h>
16 #include <Aspose.Words.Cpp/Fields/Field.h>
17 #include <Aspose.Words.Cpp/aspose_words_api_defs.h>
18 
19 namespace Aspose { namespace Words { namespace Fields { namespace Expressions { class Int32Constant; } } } }
20 namespace Aspose { namespace Words { namespace Fields { class FieldInfo; } } }
21 namespace Aspose { namespace Words { namespace Fields { class FieldUpdateAction; } } }
22 namespace Aspose { namespace Words { class Document; } }
23 namespace Aspose { namespace Words { namespace Fields { class IFieldCode; } } }
24 namespace Aspose { namespace Words { namespace Fields { namespace Expressions { class Constant; } } } }
25 
26 namespace Aspose {
27 
28 namespace Words {
29 
30 namespace Fields {
31 
82 class ASPOSE_WORDS_SHARED_CLASS FieldFileSize : public Aspose::Words::Fields::Field, public Aspose::Words::Fields::IFieldCodeTokenInfoProvider
83 {
84  typedef FieldFileSize ThisType;
86  typedef Aspose::Words::Fields::IFieldCodeTokenInfoProvider BaseType1;
87 
88  typedef ::System::BaseTypesInfo<BaseType, BaseType1> ThisTypeBaseTypesInfo;
89  ASPOSE_WORDS_SHARED_RTTI_INFO_DECL();
90 
92 
93 private:
94 
95  class FileSizeInfoResultProvider : public Aspose::Words::Fields::IFieldInfoResultProvider
96  {
97  typedef FileSizeInfoResultProvider ThisType;
98  typedef Aspose::Words::Fields::IFieldInfoResultProvider BaseType;
99 
100  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
101  RTTI_INFO_DECL();
102 
103  public:
104 
106 
107  };
108 
109 public:
110 
156  ASPOSE_WORDS_SHARED_API bool get_IsInKilobytes();
157 
159  ASPOSE_WORDS_SHARED_API void set_IsInKilobytes(bool value);
160 
206  ASPOSE_WORDS_SHARED_API bool get_IsInMegabytes();
207 
209  ASPOSE_WORDS_SHARED_API void set_IsInMegabytes(bool value);
210 
211  ASPOSE_WORDS_SHARED_API Aspose::Words::Fields::FieldSwitchType GetSwitchType(System::String switchName) override;
212 
213 protected:
214 
216  ASPOSE_WORDS_SHARED_API System::SharedPtr<Aspose::Words::Fields::FieldUpdateAction> UpdateCore() override;
217  static Aspose::Words::Fields::FieldSwitchType GetSwitchTypeInternal(System::String switchName);
218 
219  virtual ASPOSE_WORDS_SHARED_API ~FieldFileSize();
220 
221 private:
222 
223  static const System::String& IsInKilobytesSwitch();
224  static const System::String& IsInMegabytesSwitch();
226 
227 };
228 
229 }
230 }
231 }