InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
VOS_SavedData Class Reference

Public Types

enum  VSD_ExtraInfo { kTerminated, kNonterminated }
 

Public Member Functions

 VOS_SavedData (IStrand *whichStrand)
 
 VOS_SavedData (IDataBase *db, ClassID objectClass, ClassID strandClass)
 
 VOS_SavedData (const VOS_SavedData &)=delete
 
VOS_SavedDataoperator= (const VOS_SavedData &)=delete
 
virtual int32 GetDataLength () const
 
void ReadWrite (IPMStream *str)
 
void RemovePage (UID pageUID)
 
void AddPage (IVOSDiskPage *page)
 
void AddPage (ClassID clsid, IDataBase *db, UID pageUID, int32 pageLen)
 
void AddSuffix (VOS_Object *data, bool16 copy=kTrue)
 
void AddPrefix (VOS_Object *data, bool16 copy=kTrue)
 
void InsertPrefix (VOS_Object *data, bool16 copy=kTrue)
 
void SetExtraInformation (VSD_ExtraInfo info, VOS_Object *settings=nil)
 
VSD_ExtraInfo GetExtraInformation () const
 
VOS_ObjectTakeExtraSettings ()
 
IDataBaseGetDataBase () const
 
ClassID GetStrandClass () const
 
ClassID GetObjectClass () const
 
void Normalize ()
 
void UsedUpData ()
 
virtual void DeletePages ()
 
virtual void UndeletePages ()
 
virtual ErrorCode OnCopy ()
 
virtual ErrorCode OnPaste ()
 
virtual ErrorCode PreTransferTo (PasteDataXRefContext *)
 
virtual ErrorCode TransferTo (PasteDataXRefContext *xRefContext)
 
int32 PrefixLength () const
 
int32 SuffixLength () const
 
int32 PagesLength () const
 
VOS_ObjectPrefixObj (int32 n) const
 
VOS_ObjectSuffixObj (int32 n) const
 
UID PageUID (int32 n) const
 

Protected Member Functions

virtual void DuplicatePagesHelperUsingStreamCopy (PasteDataXRefContext *xRefContext)
 
virtual void DuplicatePagesHelperUsingTransferObject (PasteDataXRefContext *xRefContext)
 
virtual void TransferPagesHelperNoTransferObject (PasteDataXRefContext *xRefContext)
 
virtual void TransferPagesHelperUsingTransferObject (PasteDataXRefContext *xRefContext)
 
virtual void PageTransferred (IVOSDiskPage *)
 
virtual VOS_ObjectTransferObjectTo (PasteDataXRefContext *xRefC, VOS_Object *oldObj)
 
virtual void TransferPagesTo (PasteDataXRefContext *xRefContext)
 
virtual void TransferPagesByDuplicateTo (PasteDataXRefContext *xRefContext)
 

Protected Attributes

ClassID fObjectClassID
 
ClassID fStrandClassID
 
IDataBasefDB
 
int32 fDataLength
 
int32 fSubRange
 
K2Vector< VOS_Object * > fPrefixList
 
K2Vector< VOS_Object * > fSuffixList
 
K2Vector< UIDfPages
 
VOS_ObjectfExtraSettings
 
ClassID fClassOfPages
 
VSD_ExtraInfo fExtraInfo
 
bool16 fPagesDeleted
 
bool16 fPagesAreAliases
 

Member Function Documentation

virtual void VOS_SavedData::DuplicatePagesHelperUsingStreamCopy (PasteDataXRefContextxRefContext)
protectedvirtual

This method uses the StreamUtils::CreateDBStreamCopy() to duplicate the page.

Parameters
sourceStory
destStory
virtual void VOS_SavedData::DuplicatePagesHelperUsingTransferObject (PasteDataXRefContextxRefContext)
protectedvirtual

This method creates an empty VOSDiskPage and then uses TranferObjectTo() to create new VOSObjects for the new VOSDiskPage the page.

Parameters
xRefContext
virtual void VOS_SavedData::PageTransferred (IVOSDiskPage)
inlineprotectedvirtual

This method is called for each transfered Page from TransferPagesHelperNoTransferObject(), TransferPagesHelperUsingTransferObject(), DuplicatePagesHelperUsingStreamCopy(), and DuplicatePagesHelperUsingTransferObject() after processing is complete.

Parameters
page
virtual void VOS_SavedData::TransferPagesHelperNoTransferObject (PasteDataXRefContextxRefContext)
protectedvirtual

This method will transfer VOSDiskPages by merely updating the Strand. The internal VOSObjects are not touched.

Parameters
xRefContent
virtual void VOS_SavedData::TransferPagesHelperUsingTransferObject (PasteDataXRefContextxRefContext)
protectedvirtual

This method will transfer VOSDiskPages by calling TransferObjectTo() for each VOSObject.

Parameters
xRefContent