Open CASCADE Technology 6.6.0
|
This tool class is used to copy the content of
source label under target label. Only child
labels and attributes of source are copied.
attributes located out of source scope are not
copied by this algorithm.
Depending of the called method an external
reference is set in the the target document to
registred the externallink.
Warning1: Nothing is provided in this class about the
opportunity to copy, set a link or update it.
Such decisions must be under application control.
Warning2: If the document manages shapes, use after copy
TNaming::ChangeShapes(target,M) to make copy of
shapes.
#include <TDocStd_XLinkTool.hxx>
Public Member Functions | |
TDocStd_XLinkTool () | |
void | CopyWithLink (const TDF_Label &intarget, const TDF_Label &fromsource) |
Copies the content of the label <fromsource> to the label <intarget>. The link is registred with an XLink attribute by <intarget> label. if the content of <fromsource> is not self-contained, and/or <intarget> has already an XLink attribute, an exception is raised. | |
void | UpdateLink (const TDF_Label &L) |
Update the external reference set at <L>. Example Handle(TDocStd_Document) aDoc; if (!OCAFTest::GetDocument(1,aDoc)) return 1; Handle(TDataStd_Reference) aRef; TDocStd_XLinkTool xlinktool; if (!OCAFTest::Find(aDoc,2),TDataStd_Reference::GetID(),aRef) return 1; xlinktool.UpdateLink(aRef->Label()); Exceptions Standard_DomainError if <L> has no XLink attribute. | |
virtual void | Copy (const TDF_Label &intarget, const TDF_Label &fromsource) |
Copy the content of <fromsource> under <intarget>. Noone link is registred. noone check is done. Example Handle(TDocStd_Document) DOC, XDOC; TDF_Label L, XL; TDocStd_XLinkTool xlinktool; xlinktool.Copy(L,XL); Exceptions: Standard_DomainError if the contents of fromsource are not entirely in the scope of this label, in other words, are not self-contained. !!! ==> Warning: If the document manages shapes use the next way: TDocStd_XLinkTool xlinktool; xlinktool.Copy(L,XL); TopTools_DataMapOfShapeShape M; TNaming::ChangeShapes(target,M); | |
Standard_Boolean | IsDone () const |
Handle_TDF_DataSet | DataSet () const |
Handle_TDF_RelocationTable | RelocationTable () const |
Protected Attributes | |
Standard_Boolean | isDone |
TDocStd_XLinkTool::TDocStd_XLinkTool | ( | ) |
virtual void TDocStd_XLinkTool::Copy | ( | const TDF_Label & | intarget, |
const TDF_Label & | fromsource | ||
) | [virtual] |
Handle_TDF_DataSet TDocStd_XLinkTool::DataSet | ( | ) | const |
Standard_Boolean TDocStd_XLinkTool::IsDone | ( | ) | const |
Handle_TDF_RelocationTable TDocStd_XLinkTool::RelocationTable | ( | ) | const |
void TDocStd_XLinkTool::UpdateLink | ( | const TDF_Label & | L | ) |
Standard_Boolean TDocStd_XLinkTool::isDone [protected] |