EditElementHandle residing in an ElementAgenda More...
#include <ElementAgenda.h>
Public Member Functions | |
ElemAgendaEntry () | |
Create an ElemAgendaEntry which is an EditElementHandle in an ElementAgenda. More... | |
ElemAgendaEntry (ElementRefP elRef, DgnModelRefP modelRef) | |
Create an ElemAgendaEntry which is an EditElementHandle in an ElementAgenda. See EditElementHandle(ElementRefP, DgnModelRefP) More... | |
ElemAgendaEntry (ElementHandleCR from, bool duplicateDescr) | |
Create an ElemAgendaEntry which is an EditElementHandle in an ElementAgenda. See EditElementHandle(ElementHandleCR, bool) More... | |
ElemAgendaEntry (ElemAgendaEntry const &from) | |
Create an ElemAgendaEntry from another ElemAgendaEntry. Any ElementDescriptors contained will not be copied but will have a reference count incremented. More... | |
ElemAgendaEntry & | operator= (ElemAgendaEntry const &from) |
Duplicate an element agenda. This will copy an ElemenAgendaEntry. Any ElementDescriptors contained will not be copied but will have a reference count incremented. More... | |
![]() | |
EditElementHandle () | |
construct a blank, invalid, EditElementHandle More... | |
EditElementHandle (MSElementDescrP descr, bool owned, bool isUnmodified, DgnModelRefP modelRef=0) | |
Construct an ElementHandle from an MSElementDescr. More... | |
EditElementHandle (ElementRefP elRef, DgnModelRefP modelRef=0) | |
Construct an ElementHandle from an ElementRefP and a DgnModelRefP. More... | |
EditElementHandle (MSElementCP el, DgnModelRefP modelRef) | |
Construct an ElementHandle from an MSElement and a DgnModelRef. More... | |
EditElementHandle (ElementId id, DgnModelRefP modelRef) | |
Construct an ElementHandle from an ElementId and a DgnModelRefP. More... | |
EditElementHandle (ElementHandleCR from, bool duplicateDescr) | |
Construct an ElementHandle from another element handle. More... | |
void | Duplicate (ElementHandleCR) |
Duplicate the element descriptor and its scheduled XAttribute changes. More... | |
void | SetModelRef (DgnModelRefP modelRef) |
Change the DgnModelRef for this EditElementHandle. More... | |
void | SetNonPersistent () |
Turn off the "IsUnmodified" flag for this EditElementHandle. More... | |
void | Invalidate () |
Mark this EditElementHandle as invalid. If there is an MSElementDescr associated with this EditElementHandle, it is freed. More... | |
void | SetIElementState (IElementStateP state) |
IElementStateP | GetIElementState () |
MSElementDescrP | GetElementDescrP () |
Get a writable MSElementDescr from this EditElementHandle. More... | |
MSElementP | GetElementP () |
Get a pointer to a writeable MSElement from this EditElementHandle. More... | |
StatusInt | ReplaceElement (MSElementCP el) |
Replace the element associated with this EditElementHandle with a new element. More... | |
StatusInt | ReplaceElementDescr (MSElementDescrP elDscr) |
Replace the MSElementDescr associated with the EditElementHandle with a new MSElementDescr. More... | |
MSElementDescrP | ExtractElementDescr () |
Extract and take ownership of the MSElementDescr associated with this EditElementHandle. More... | |
void | SetElementDescr (MSElementDescrP elDscr, bool owned, bool isUnmodified, DgnModelRefP modelRef=0) |
Assign a new MSElementDescr to this EditElementHandle. More... | |
void | SetElementRef (ElementRefP elRef, DgnModelRefP modelRef) |
Change the ElementRefP and DgnModelRef for this EditElementHandle. More... | |
StatusInt | ScheduleWriteXAttribute (XAttributeHandlerIdCR h, UInt32 xAttrId, size_t dataSize, void const *data) |
Schedule the specified XAttribute to be written to the MSElementDescr. More... | |
StatusInt | CancelWriteXAttribute (XAttributeHandlerIdCR h, UInt32 xAttrId) |
Cancel out the effects of a prior call to ScheduleWriteXAttribute. More... | |
StatusInt | ScheduleDeleteXAttribute (XAttributeHandlerIdCR h, UInt32 xAttrId) |
Schedule removal of the specified XAttribute from the MSElementDescr. More... | |
StatusInt | CancelDeleteXAttribute (XAttributeHandlerIdCR h, UInt32 xAttrId) |
Cancel out the effects of a prior call to ScheduleDeleteXAttribute. More... | |
StatusInt | FindByID (ElementId elemID, DgnModelP dgnCache, bool allowDeleted=false) |
StatusInt | FindByID (ElementId elemID, DgnModelRefP modelRef, bool allowDeleted=false) |
StatusInt | AddToModel () |
Add this EditElementHandle to the associated model. More... | |
StatusInt | DeleteFromModel () |
Delete this EditElementHandle from its model. More... | |
StatusInt | ReplaceInModel (ElementRefP oldRef) |
Replace the element referred to by the supplied ElementRefP with the modified MSElementDescr held by this EditElementHandle. More... | |
ElementLinkageIterator | BeginElementLinkages (UInt16 rl=0) |
Get an iterator over the element's user data linkages. More... | |
ElementLinkageIterator | EndElementLinkages () |
Get an iterator that marks the end of the element's user data linkages. More... | |
StatusInt | ReplaceElementLinkage (ElementLinkageIteratorR it, LinkageHeader const &newLinkageHeader, void const *newLinkageData) |
Replace an element data linkage on this element. More... | |
StatusInt | RemoveElementLinkage (ElementLinkageIteratorR it) |
Remove an element data linkage from this element. More... | |
StatusInt | InsertElementLinkage (ElementLinkageIterator *newLinkageIt, LinkageHeaderCR newLinkageHeader, void const *newLinkageData, ElementLinkageIterator &wh, UInt16 rl=0) |
Add a new element data linkage to this element. More... | |
StatusInt | AppendElementLinkage (ElementLinkageIterator *newLinkageIt, LinkageHeaderCR newLinkageHeader, void const *newLinkageData) |
Appends a new element data linkage to the end of this element. More... | |
![]() | |
ElementHandle () | |
construct a blank, invalid, ElementHandle More... | |
~ElementHandle () | |
ElementHandle (ElementRefP elRef, DgnModelRefP modelRef=0) | |
Construct an ElementHandle from an ElementRefP and a DgnModelRefP. More... | |
ElementHandle (ElementId id, DgnModelRefP modelRef) | |
Construct an ElementHandle from an ElementId and a DgnModelRefP. More... | |
ElementHandle (MSElementDescrCP elDscr, bool owned, bool isUnmodified=false, DgnModelRefP modelRef=0) | |
Construct an ElementHandle from an MSElementDescr. More... | |
ElementHandle (MSElementCP el, DgnModelRefP modelRef) | |
Construct an ElementHandle from an MSElement and a DgnModelRef. More... | |
ElementHandle (ElementHandleCR from) | |
Copy an ElementHandle. More... | |
ElementId | GetElementId () const |
Get the element ID of the element contained in the ElementHandle. More... | |
void | ResetHandler () const |
Handler & | GetHandler (MissingHandlerPermissions perm=MISSING_HANDLER_PERMISSION_None) const |
Get the Handler for this ElementHandle. More... | |
DisplayHandlerP | GetDisplayHandler () const |
A shortcut method to get a DisplayHandler pointer for the Handler of this ElementHandle, or NULL if the element's Handler does not derive from DisplayHandler. More... | |
IDependencyHandlerP | GetIDependencyHandler () const |
A shortcut method to get the IDependencyHandler interface on the Handler for this ElementHandle, or NULL if the element's Handler does not implement that interface. More... | |
ITransactionHandlerP | GetITransactionHandler () const |
A shortcut method to get the ITransactionHandler interface on the Handler for this ElementHandle, or NULL if the element's Handler does not implement that interface. More... | |
ITextQueryCP | GetITextQuery () const |
A shortcut method to get the ITextQuery interface on the Handler for this ElementHandle, or NULL if the element's Handler does not implement that interface. More... | |
ITextEditP | GetITextEdit () const |
A shortcut method to get the ITextEdit interface on the Handler for this ElementHandle, or NULL if the element's Handler does not implement that interface. More... | |
ElementRefP | GetElementRef () const |
Get the ElementRefP for this ElementHandle. More... | |
DgnModelP | GetDgnModelP () const |
Get a DgnModelP for this ElementHandle. More... | |
DgnFileP | GetDgnFileP () const |
Get the DgnFile of the DgnModel for this ElementHandle. More... | |
DgnModelRefP | GetModelRef () const |
Get the DgnModelRef for this ElementHandle. More... | |
MSElementCP | GetElementCP () const |
Get a const pointer to the MSElement associated with this ElementHandle. More... | |
bool | IsValid () const |
Determine whether this ElementHandle is currently valid. More... | |
bool | IsPersistent () const |
Determine whether this ElementHandle references an unmodified element in the cache. More... | |
int | GetElementType () const |
Get the element type of the element referenced by this ElementHandle. More... | |
void | GetElementHeader (Elm_hdr &hdr) const |
Get a copy of the Elm_hdr of the element referenced by this ElementHandle. More... | |
MSElementDescrCP | PeekElementDescrCP () const |
Peek to see whether this ElementHandle currently has an MSElementDescr. More... | |
MSElementDescrCP | GetElementDescrCP () const |
Get an MSElementDescrCP from this ElementHandle. More... | |
ConstElementLinkageIterator | BeginElementLinkages (UInt16 rl=0) const |
Get an iterator over the element's user data linkages. More... | |
ConstElementLinkageIterator | EndElementLinkages () const |
Get an iterator that marks the end of the element's user data linkages. More... | |
Static Public Member Functions | |
static intptr_t | GetIndexFromHandleDifference (ElementHandleCP pToolElem, const ElemAgendaEntry *first) |
Return the index of a given ElementHandle in the Agenda. More... | |
EditElementHandle residing in an ElementAgenda
ElemAgendaEntry | ( | ) |
Create an ElemAgendaEntry which is an EditElementHandle in an ElementAgenda.
ElemAgendaEntry | ( | ElementRefP | elRef, |
DgnModelRefP | modelRef | ||
) |
Create an ElemAgendaEntry which is an EditElementHandle in an ElementAgenda. See EditElementHandle(ElementRefP, DgnModelRefP)
ElemAgendaEntry | ( | ElementHandleCR | from, |
bool | duplicateDescr | ||
) |
Create an ElemAgendaEntry which is an EditElementHandle in an ElementAgenda. See EditElementHandle(ElementHandleCR, bool)
ElemAgendaEntry | ( | ElemAgendaEntry const & | from | ) |
Create an ElemAgendaEntry from another ElemAgendaEntry. Any ElementDescriptors contained will not be copied but will have a reference count incremented.
|
static |
Return the index of a given ElementHandle in the Agenda.
ElemAgendaEntry& operator= | ( | ElemAgendaEntry const & | from | ) |
Duplicate an element agenda. This will copy an ElemenAgendaEntry. Any ElementDescriptors contained will not be copied but will have a reference count incremented.