Foxit PDF SDK
foxit::pdf::portfolio::Portfolio Class Reference
Inheritance diagram for foxit::pdf::portfolio::Portfolio:
foxit::Base

Public Types

enum  InitialViewMode { e_InitialViewUnknownMode = 0, e_InitialViewDetailMode = 1, e_InitialViewTileMode = 2, e_InitialViewHidden = 3 }
 Enumeration for initial view mode for a portfolio PDF document. More...
 

Public Member Functions

 Portfolio (const Portfolio &other)
 Constructor, with another PDF portfolio object. More...
 
 ~Portfolio ()
 Destructor.
 
WString GetInitialFileSpecKeyName () const
 Get the key name of an attachment (as file specification) which should be the initial document. More...
 
InitialViewMode GetInitialViewMode () const
 Get initial view mode. More...
 
PDFDoc GetPortfolioPDFDoc () const
 Get related portfolio PDF document object. More...
 
PortfolioNode GetRootNode () const
 Get root node which is always a folder node. More...
 
SchemaFieldArray GetSchemaFields () const
 Get schema fields. More...
 
String GetSortingFieldKeyName () const
 Get the key name of a schema field which is used for sorting. More...
 
bool IsEmpty () const
 Check whether current object is empty or not. More...
 
bool IsSortedInAscending () const
 Check whether nodes should be sorted in ascending order or not. More...
 
bool operator!= (const Portfolio &other) const
 Not equal operator. More...
 
Portfoliooperator= (const Portfolio &other)
 Assign operator. More...
 
bool operator== (const Portfolio &other) const
 Equal operator. More...
 
void SetInitialFileSpecKeyName (const wchar_t *name)
 Set the key name of an attachment (as file specification) which should be the initial document. More...
 
void SetInitialViewMode (InitialViewMode mode)
 Set initial view mode. More...
 
void SetSchemaFields (const SchemaFieldArray &field_array)
 Set schema fields. More...
 
void SetSortingFieldKeyName (const char *name)
 Set the key name of a schema field for sorting. More...
 
void SetSortingOrder (bool use_ascending_order)
 Set the boolean to decide whether nodes should be sorted in ascending order or not. More...
 
- Public Member Functions inherited from foxit::Base
FS_HANDLE Handle () const
 Get the handle of current object. More...
 

Static Public Member Functions

static Portfolio CreatePortfolio ()
 Create a PDF portfolio with a new and blank PDF document created automatically. More...
 
static Portfolio CreatePortfolio (const foxit::pdf::PDFDoc &portfolio_pdf_doc)
 Create a PDF portfolio with an existed portfolio PDF document. More...
 

Detailed Description

PDF portfolio is a combination of files with different formats. PDF portfolio itself is a PDF document, and then files with different formats can be embedded into this kind of PDF document.
Class Portfolio can be used to create a new blank PDF portfolio or access an existed portfolio PDF document, and then to get/set portfolio properties and to access root node in order to enumerate all nodes or add/remove node.

Member Enumeration Documentation

◆ InitialViewMode

Enumeration for initial view mode for a portfolio PDF document.

Values of this enumeration should be used alone.

Enumerator
e_InitialViewUnknownMode 

Unknown initial view mode.

e_InitialViewDetailMode 

Initial view mode: details mode, with all information (specified by schema fields) presented in a multicolumn format.

Note
This mode provides the most information to the user.
e_InitialViewTileMode 

Initial view mode: tile mode, with each file and folder node denoted by a small icon and a subset of information (specified by schema fields).

Note
This mode provides top-level information about embedded files to the user.
e_InitialViewHidden 

Initial view mode: hidden mode.

Constructor & Destructor Documentation

◆ Portfolio()

foxit::pdf::portfolio::Portfolio::Portfolio ( const Portfolio other)

Constructor, with another PDF portfolio object.

Parameters
[in]otherAnother bookmark object.

Member Function Documentation

◆ CreatePortfolio() [1/2]

static Portfolio foxit::pdf::portfolio::Portfolio::CreatePortfolio ( )
static

Create a PDF portfolio with a new and blank PDF document created automatically.

This function will create a new and blank PDF document as a portfolio PDF document automatically. Function Portfolio::GetPortfolioPDFDoc can be used to retrieve the related PDF document object. Function Portfolio::GetSchemaFields can be used to retrieve default schema fields.

Returns
A PDF portfolio object.

◆ CreatePortfolio() [2/2]

static Portfolio foxit::pdf::portfolio::Portfolio::CreatePortfolio ( const foxit::pdf::PDFDoc portfolio_pdf_doc)
static

Create a PDF portfolio with an existed portfolio PDF document.

This function is just to create a PDF portfolio object to be associated with an existed portfolio PDF document in order to access portfolio information.

Parameters
[in]portfolio_pdf_docA portfolio PDF document.
Returns
A PDF portfolio object.

◆ GetInitialFileSpecKeyName()

WString foxit::pdf::portfolio::Portfolio::GetInitialFileSpecKeyName ( ) const

Get the key name of an attachment (as file specification) which should be the initial document.

Class Attachments can be used to retrieve the file specification object by key name.

Returns
Key name of an attachment(as file specification). If an empty string is returned, that means the related portfolio PDF document should be the initial document.

◆ GetInitialViewMode()

InitialViewMode foxit::pdf::portfolio::Portfolio::GetInitialViewMode ( ) const

Get initial view mode.

Returns
Initial view mode. Please refer to values starting from Portfolio::e_InitialViewUnknownMode and it would be one of these values.

◆ GetPortfolioPDFDoc()

PDFDoc foxit::pdf::portfolio::Portfolio::GetPortfolioPDFDoc ( ) const

Get related portfolio PDF document object.

Returns
Related portfolio PDF document object.

◆ GetRootNode()

PortfolioNode foxit::pdf::portfolio::Portfolio::GetRootNode ( ) const

Get root node which is always a folder node.

PDF portfolio organizes files into a hierarchical structure – a tree with a single root folder (also known as root node) as the common ancestor for all other folders and files.

Returns
A portfolio node object that represents the root node.

◆ GetSchemaFields()

SchemaFieldArray foxit::pdf::portfolio::Portfolio::GetSchemaFields ( ) const

Get schema fields.

Schema fields are used to decide which properties of file node or folder node are to be shown in application.

Returns
Schema fields. Order of these fields are decided by their index order in returned array.

◆ GetSortingFieldKeyName()

String foxit::pdf::portfolio::Portfolio::GetSortingFieldKeyName ( ) const

Get the key name of a schema field which is used for sorting.

Returns
Key name of a schema field which is used for sorting.

◆ IsEmpty()

bool foxit::pdf::portfolio::Portfolio::IsEmpty ( ) const

Check whether current object is empty or not.

When the current object is empty, that means current object is useless.

Returns
true means current object is empty, while false means not.

◆ IsSortedInAscending()

bool foxit::pdf::portfolio::Portfolio::IsSortedInAscending ( ) const

Check whether nodes should be sorted in ascending order or not.

Returns
true means nodes should be sorted in ascending order with specified field, while false means nodes should sorted in descending order with specified field.

◆ operator!=()

bool foxit::pdf::portfolio::Portfolio::operator!= ( const Portfolio other) const

Not equal operator.

Parameters
[in]otherAnother PDF portfolio object. This function will check if current object is not equal to this one.
Returns
true means not equal, while false means equal.

◆ operator=()

Portfolio& foxit::pdf::portfolio::Portfolio::operator= ( const Portfolio other)

Assign operator.

Parameters
[in]otherAnother PDF portfolio object, whose value would be assigned to current object.
Returns
Reference to current object itself.

◆ operator==()

bool foxit::pdf::portfolio::Portfolio::operator== ( const Portfolio other) const

Equal operator.

Parameters
[in]otherAnother PDF portfolio object. This function will check if current object is equal to this one.
Returns
true means equal, while false means not equal.

◆ SetInitialFileSpecKeyName()

void foxit::pdf::portfolio::Portfolio::SetInitialFileSpecKeyName ( const wchar_t *  name)

Set the key name of an attachment (as file specification) which should be the initial document.

Function PortfolioFileNode::GetKeyName can be used to get the key name of a file specification associated with a file node. Or use class Attachments to retrieve a key name of a file specification.

Parameters
[in]nameKey name of an attachment(as file specification). If an empty string is returned, that means the related portfolio PDF document should be the initial document.
Returns
None.

◆ SetInitialViewMode()

void foxit::pdf::portfolio::Portfolio::SetInitialViewMode ( InitialViewMode  mode)

Set initial view mode.

Parameters
[in]modeInitial view mode. Please refer to values starting from Portfolio::e_InitialViewDetailMode and it should be one of these values except Portfolio::e_InitialViewUnknownMode.
Returns
None.

◆ SetSchemaFields()

void foxit::pdf::portfolio::Portfolio::SetSchemaFields ( const SchemaFieldArray field_array)

Set schema fields.

Schema fields are used to decide which properties of file node or folder node are to be shown in application.
When this function succeeds, all the old schema fields will be removed and input ones will be used instead.

Parameters
[in]field_arrayNew schema fields array. Order of these fields are decided by their index order in this array.
Returns
None.

◆ SetSortingFieldKeyName()

void foxit::pdf::portfolio::Portfolio::SetSortingFieldKeyName ( const char *  name)

Set the key name of a schema field for sorting.

Parameters
[in]nameKey name of a schema field for sorting.
Returns
None.

◆ SetSortingOrder()

void foxit::pdf::portfolio::Portfolio::SetSortingOrder ( bool  use_ascending_order)

Set the boolean to decide whether nodes should be sorted in ascending order or not.

Parameters
[in]use_ascending_orderA boolean to decide the sorted order: true means nodes should be sorted in ascending order with specified field, while false means nodes should sorted in descending order with specified field.
Returns
None.