Foxit PDF SDK

fs_portfolio.h
浏览该文件的文档.
1
16 #ifndef FS_PORTFOLIO_H_
17 #define FS_PORTFOLIO_H_
18
19 #include "common/fs_common.h"
20 #include "pdf/fs_pdfdoc.h"
21 #include "pdf/fs_filespec.h"
22
28 namespace foxit {
32 namespace pdf {
36 namespace portfolio {
40 class PortfolioNode : public Base {
41 public:
47 typedef enum _Type {
49 e_TypeUnknown = 0,
51 e_TypeFolder = 1,
53 e_TypeFile = 2
54 } Type;
55
61 PortfolioNode(const PortfolioNode& other);
63 ~PortfolioNode();
71 PortfolioNode& operator = (const PortfolioNode& other);
72
80 bool operator == (const PortfolioNode& other) const;
88 bool operator != (const PortfolioNode& other) const;
89
97 bool IsEmpty() const;
98
105 Type GetNodeType() const;
106
107 // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
108 explicit PortfolioNode(FS_HANDLE handle = NULL);
109
110 };
111
113 FSDK_DEFINE_ARRAY(PortfolioNodeArray, PortfolioNode)
114
115 class PortfolioFileNode;
116
123 class PortfolioFolderNode FS_FINAL : public PortfolioNode {
124 public:
130 explicit PortfolioFolderNode(const PortfolioNode& other);
131
133 ~PortfolioFolderNode() {}
134
141 bool IsRoot() const;
142
149 WString GetName() const;
150
162 PortfolioFileNode AddFile(const wchar_t* file_path);
176 PortfolioFileNode AddFile(foxit::common::file::StreamCallback* file_stream, const wchar_t* file_name);
190 PortfolioFileNode AddPDFDoc(const PDFDoc& pdf_doc, const wchar_t* file_name);
191
199 PortfolioFolderNode AddSubFolder(const wchar_t* folder_name);
200
208 void RemoveSubNode(const PortfolioNode& sub_node);
209
218 PortfolioNodeArray GetSortedSubNodes() const;
219
228 DateTime GetModifiedDateTime() const;
234 DateTime GetCreationDateTime() const;
235
241 WString GetDescription() const;
249 void SetDescription(const wchar_t* description);
250
251 // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
252 explicit PortfolioFolderNode(FS_HANDLE handle = NULL);
253
254 };
255
261 class PortfolioFileNode FS_FINAL : public PortfolioNode {
262 public:
268 explicit PortfolioFileNode(const PortfolioNode& other);
269
271 ~PortfolioFileNode() {}
272
278 FileSpec GetFileSpec() const;
279
288 WString GetKeyName() const;
289
290 // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
291 explicit PortfolioFileNode(FS_HANDLE handle = NULL);
292
293 };
294
298 class SchemaField FS_FINAL : public Base {
299 public:
303 SchemaField();
304
310 SchemaField(const SchemaField& other);
318 SchemaField& operator = (const SchemaField& other);
319
327 bool operator == (const SchemaField& other) const;
335 bool operator != (const SchemaField& other) const;
336
344 bool IsEmpty() const;
345
347 ~SchemaField();
348
361 String GetKeyName() const;
362
377 void SetKeyName(const char* key_name);
378
401 String GetSubtypeName() const;
427 void SetSubtypeName(const char* subtype_name);
428
436 WString GetDisplayName() const;
446 void SetDisplayName(const wchar_t* display_name);
447
454 bool IsVisible() const;
463 void SetVisibility(bool is_visible);
464
465 // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
466 explicit SchemaField(FS_HANDLE handle);
467
468 };
469
471 FSDK_DEFINE_ARRAY(SchemaFieldArray, SchemaField)
472
473
479 class Portfolio FS_FINAL : public Base {
480 public:
486 typedef enum _InitialViewMode {
488 e_InitialViewUnknownMode = 0,
492 e_InitialViewDetailMode = 1,
497 e_InitialViewTileMode = 2,
501 e_InitialViewHidden = 3
502 } InitialViewMode;
503
504
514 static Portfolio CreatePortfolio();
515
526 static Portfolio CreatePortfolio(const foxit::pdf::PDFDoc& portfolio_pdf_doc);
527
533 Portfolio(const Portfolio& other);
541 Portfolio& operator = (const Portfolio& other);
542
550 bool operator == (const Portfolio& other) const;
558 bool operator != (const Portfolio& other) const;
559
567 bool IsEmpty() const;
568
570 ~Portfolio();
571
577 PDFDoc GetPortfolioPDFDoc() const;
578
587 PortfolioNode GetRootNode() const;
588
594 InitialViewMode GetInitialViewMode() const;
603 void SetInitialViewMode(InitialViewMode mode);
604
611 bool IsSortedInAscending() const;
621 void SetSortingOrder(bool use_ascending_order);
627 String GetSortingFieldKeyName() const;
635 void SetSortingFieldKeyName(const char* name);
636
645 WString GetInitialFileSpecKeyName() const;
657 void SetInitialFileSpecKeyName(const wchar_t* name);
658
666 SchemaFieldArray GetSchemaFields() const;
677 void SetSchemaFields(const SchemaFieldArray& field_array);
678
679 // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
680 explicit Portfolio(FS_HANDLE handle = NULL);
681
682 };
683
684 } // namespace portfolio
685 } // namespace pdf
686 } // namespace foxit
687
688 #endif // FS_PORTFOLIO_H_
689
foxit::pdf::portfolio::PortfolioNode::operator!=
bool operator!=(const PortfolioNode &other) const
不相等操作符。
foxit::pdf::portfolio::SchemaField::IsVisible
bool IsVisible() const
检查当前字段在应用程序中是否初始可见。
foxit::pdf::portfolio::PortfolioFolderNode::GetName
WString GetName() const
获取当前文件夹节点的名称。
foxit::FS_HANDLE
void * FS_HANDLE
句柄类型。
Definition: fs_basictypes.h:214
foxit::pdf::FileSpec
Definition: fs_filespec.h:38
foxit::pdf::portfolio::PortfolioFolderNode::~PortfolioFolderNode
~PortfolioFolderNode()
析构函数。
Definition: fs_portfolio.h:133
foxit::pdf::portfolio::SchemaField::SetSubtypeName
void SetSubtypeName(const char *subtype_name)
设置子类型名称字符串。
foxit::DateTime
Definition: fs_basictypes.h:482
IFX_FileStream
文件流接口，用于读取和写入。
Definition: fx_stream.h:692
foxit::pdf::portfolio::PortfolioFolderNode::GetModifiedDateTime
DateTime GetModifiedDateTime() const
获取最后修改日期时间。
foxit::pdf::portfolio::SchemaField::SetDisplayName
void SetDisplayName(const wchar_t *display_name)
设置显示名称。
fs_common.h
通用定义和类的头文件。
foxit::pdf::portfolio::PortfolioNode::e_TypeFolder
作品集节点类型：文件夹。
Definition: fs_portfolio.h:51
foxit::pdf::portfolio::PortfolioNode::e_TypeUnknown
未知作品集节点类型。
Definition: fs_portfolio.h:49
foxit::pdf::portfolio::PortfolioFolderNode::GetSortedSubNodes
PortfolioNodeArray GetSortedSubNodes() const
获取已根据类 Portfolio 中定义的排序顺序和指定字段名称排序的子节点数组。
foxit::pdf::portfolio::SchemaField::GetDisplayName
WString GetDisplayName() const
获取显示名称。
foxit::pdf::portfolio::PortfolioNodeArray
Definition: fs_portfolio.h:113
foxit::pdf::portfolio::PortfolioFileNode
Definition: fs_portfolio.h:261
foxit::pdf::portfolio::PortfolioFolderNode::GetDescription
WString GetDescription() const
获取描述。
foxit::pdf::portfolio::PortfolioFolderNode::IsRoot
bool IsRoot() const
检查当前文件夹节点是否表示根节点。
foxit::pdf::portfolio::SchemaField::~SchemaField
~SchemaField()
析构函数。
foxit::pdf::portfolio::PortfolioFolderNode::AddSubFolder
PortfolioFolderNode AddSubFolder(const wchar_t *folder_name)
添加一个新的子文件夹。
foxit::pdf::portfolio::PortfolioFolderNode
Definition: fs_portfolio.h:123
foxit::pdf::portfolio::SchemaField::GetSubtypeName
String GetSubtypeName() const
获取子类型名称字符串。
foxit::pdf::portfolio::SchemaField::operator==
bool operator==(const SchemaField &other) const
相等操作符。
foxit::pdf::portfolio::PortfolioFileNode::GetFileSpec
FileSpec GetFileSpec() const
获取用于访问嵌入文件信息和数据的相关文件规范对象。
CFX_ByteString
字节字符串类
Definition: fx_string.h:317
foxit::pdf::portfolio::Portfolio
Definition: fs_portfolio.h:479
foxit::pdf::portfolio::PortfolioFolderNode::PortfolioFolderNode
PortfolioFolderNode(const PortfolioNode &other)
构造函数，使用父类对象。
foxit::pdf::portfolio::SchemaField::SetKeyName
void SetKeyName(const char *key_name)
设置键名字符串。
foxit::pdf::portfolio::SchemaField
Definition: fs_portfolio.h:298
foxit::pdf::portfolio::PortfolioFolderNode::RemoveSubNode
void RemoveSubNode(const PortfolioNode &sub_node)
移除一个子节点。
foxit::pdf::portfolio::SchemaFieldArray
Definition: fs_portfolio.h:471
operator==
bool operator==(const char *str1, const CFX_ByteString &str2)
检查两个字节字符串是否相等。
Definition: fs_basictypes.h:128
foxit::pdf::portfolio::PortfolioNode::operator=
PortfolioNode & operator=(const PortfolioNode &other)
赋值操作符。
foxit::pdf::portfolio::PortfolioFolderNode::SetDescription
void SetDescription(const wchar_t *description)
设置描述。
foxit::pdf::portfolio::SchemaField::SetVisibility
void SetVisibility(bool is_visible)
设置当前字段在应用程序中的初始可见性。
foxit
Foxit命名空间。
Definition: fs_taggedpdf.h:27
foxit::pdf::portfolio::PortfolioNode::Type
Type
作品集节点类型枚举。
Definition: fs_portfolio.h:47
fs_filespec.h
文件规范相关定义和类的头文件。
operator!=
bool operator!=(const char *str1, const CFX_ByteString &str2)
检查两个字节字符串是否不相等。
Definition: fs_basictypes.h:140
foxit::pdf::portfolio::PortfolioFolderNode::GetCreationDateTime
DateTime GetCreationDateTime() const
获取创建日期时间。
foxit::pdf::portfolio::PortfolioNode::~PortfolioNode
~PortfolioNode()
析构函数。
fs_pdfdoc.h
PDF文档相关定义和类的头文件。
foxit::pdf::portfolio::PortfolioFileNode::GetKeyName
WString GetKeyName() const
获取相关文件规范对象的键名。
foxit::pdf::portfolio::SchemaField::IsEmpty
bool IsEmpty() const
检查当前对象是否为空。
foxit::pdf::portfolio::PortfolioFolderNode::AddPDFDoc
PortfolioFileNode AddPDFDoc(const PDFDoc &pdf_doc, const wchar_t *file_name)
添加一个已加载的PDF文档作为子节点。
NULL
#define NULL
空指针值。
Definition: fx_system.h:792
foxit::pdf::portfolio::SchemaField::SchemaField
SchemaField()
构造函数。
foxit::pdf::portfolio::SchemaField::operator=
SchemaField & operator=(const SchemaField &other)
赋值操作符。
foxit::pdf::PDFDoc
Definition: fs_pdfdoc.h:771
foxit::pdf::portfolio::SchemaField::operator!=
bool operator!=(const SchemaField &other) const
不相等操作符。
foxit::pdf::portfolio::PortfolioFolderNode::AddFile
PortfolioFileNode AddFile(const wchar_t *file_path)
添加一个文件（通过文件路径指定）作为子节点。
foxit::pdf::portfolio::PortfolioNode::e_TypeFile
作品集节点类型：文件。
Definition: fs_portfolio.h:53
foxit::pdf::portfolio::PortfolioNode::operator==
bool operator==(const PortfolioNode &other) const
相等操作符。
foxit::pdf::portfolio::PortfolioNode::PortfolioNode
PortfolioNode(const PortfolioNode &other)
构造函数，使用另一个作品集节点对象。
foxit::pdf::portfolio::PortfolioNode::GetNodeType
Type GetNodeType() const
获取节点类型。
CFX_WideString
宽字符串类
Definition: fx_string.h:1457
foxit::pdf::portfolio::PortfolioFileNode::PortfolioFileNode
PortfolioFileNode(const PortfolioNode &other)
构造函数，使用父类对象。
foxit::pdf::portfolio::PortfolioNode
Definition: fs_portfolio.h:40
foxit::pdf::portfolio::PortfolioNode::IsEmpty
bool IsEmpty() const
检查当前对象是否为空。
foxit::Base
Definition: fs_basictypes.h:449
foxit::pdf::portfolio::PortfolioFileNode::~PortfolioFileNode
~PortfolioFileNode()
析构函数。
Definition: fs_portfolio.h:271
foxit::pdf::portfolio::SchemaField::GetKeyName
String GetKeyName() const
获取键名字符串。