FieldAddressBlock.h
1 // Copyright 2001-2022 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/array.h>
12 #include <mutex>
13 #include <memory>
14 
15 #include <Aspose.Words.Cpp/Fields/IFormattableMergeField.h>
16 #include <Aspose.Words.Cpp/Fields/IFieldCodeTokenInfoProvider.h>
17 #include <Aspose.Words.Cpp/Fields/Field.h>
18 #include <Aspose.Words.Cpp/aspose_words_api_defs.h>
19 
20 namespace Aspose
21 {
22 namespace Collections
23 {
24 template <typename> class StringToObjDictionary;
25 }
26 namespace Words
27 {
28 class Document;
29 namespace Fields
30 {
31 enum class FieldSwitchType;
32 class FieldUpdateAction;
33 class IMergeFormatContext;
34 class MergeFormatPlaceholder;
35 }
36 }
37 }
38 
39 namespace Aspose {
40 
41 namespace Words {
42 
43 namespace Fields {
44 
59 class ASPOSE_WORDS_SHARED_CLASS FieldAddressBlock : public Aspose::Words::Fields::Field, public Aspose::Words::Fields::IFieldCodeTokenInfoProvider, public Aspose::Words::Fields::IFormattableMergeField
60 {
63  typedef Aspose::Words::Fields::IFieldCodeTokenInfoProvider BaseType1;
64  typedef Aspose::Words::Fields::IFormattableMergeField BaseType2;
65 
66  typedef ::System::BaseTypesInfo<BaseType, BaseType1, BaseType2> ThisTypeBaseTypesInfo;
67  ASPOSE_WORDS_SHARED_RTTI_INFO_DECL();
68 
69 public:
70 
100  ASPOSE_WORDS_SHARED_API bool get_FormatAddressOnCountryOrRegion();
101 
103  ASPOSE_WORDS_SHARED_API void set_FormatAddressOnCountryOrRegion(bool value);
104 
134 
136  ASPOSE_WORDS_SHARED_API void set_IncludeCountryOrRegionName(const System::String& value);
137 
167 
169  ASPOSE_WORDS_SHARED_API void set_ExcludedCountryOrRegionName(const System::String& value);
170 
199  ASPOSE_WORDS_SHARED_API System::String get_NameAndAddressFormat();
200 
202  ASPOSE_WORDS_SHARED_API void set_NameAndAddressFormat(const System::String& value);
203 
232  ASPOSE_WORDS_SHARED_API System::String get_LanguageId();
233 
235  ASPOSE_WORDS_SHARED_API void set_LanguageId(const System::String& value);
236 
251  ASPOSE_WORDS_SHARED_API System::ArrayPtr<System::String> GetFieldNames() override;
252 
253  ASPOSE_WORDS_SHARED_API FieldAddressBlock();
254 
255 protected:
256 
257  ASPOSE_WORDS_SHARED_API System::SharedPtr<Aspose::Words::Fields::FieldUpdateAction> UpdateCore() override;
258 
259  virtual ASPOSE_WORDS_SHARED_API ~FieldAddressBlock();
260 
261 private:
262 
263  System::String get_MergeFormat() override;
265 
266  Aspose::Words::Fields::FieldSwitchType GetSwitchType(System::String ) override;
267  System::SharedPtr<Aspose::Words::Document> IFormattableMergeField_FetchDocument() override;
269 
270 };
271 
272 }
273 }
274 }