#include <attrval.h>
Inheritance diagram for EndArrowAttribute:
Public Member Functions | |
virtual void | Restore (RenderRegion *, BOOL) |
virtual void | Render (RenderRegion *, BOOL Temp=FALSE) |
virtual void | SimpleCopy (AttributeValue *) |
virtual NodeAttribute * | MakeNode () |
Makes the appropriate NodeAttribute-derivative from an end-arrow attribute. | |
BOOL | IsDifferent (AttributeValue *pAttr) |
Compare two AttributeValue objects. The base class version always returns TRUE - derived classes should override this function to provide functionality. | |
Static Public Member Functions | |
static BOOL | Init () |
Registers line width attribute, and provides a default attribute to give non-dotted lines. | |
Public Attributes | |
ArrowRec | EndArrow |
Definition at line 267 of file attrval.h.
|
Registers line width attribute, and provides a default attribute to give non-dotted lines.
Reimplemented from SimpleCCObject. Definition at line 1627 of file attr.cpp. 01628 { 01629 // Default to non-dotted lines 01630 EndArrowAttribute *pAttr = new EndArrowAttribute; 01631 if (pAttr == NULL) 01632 return FALSE; 01633 01634 /* 01635 SA_STRAIGHTARROW, 01636 SA_ANGLEDARROW, 01637 SA_ROUNDEDARROW, 01638 SA_SPOT, 01639 SA_DIAMOND, 01640 SA_ARROWFEATHER, 01641 SA_ARROWFEATHER2, 01642 SA_HOLLOWDIAMOND, 01643 */ 01644 01645 // pAttr->EndArrow.CreateStockArrow(SA_ANGLEDARROW); 01646 01647 UINT32 ID = AttributeManager::RegisterDefaultAttribute(CC_RUNTIME_CLASS(NodeRenderableInk), 01648 pAttr); 01649 if (ID == ATTR_BAD_ID) 01650 return FALSE; 01651 ENSURE(ID == ATTR_ENDARROW, "Incorrect ID for End Arrow attribute!"); 01652 return TRUE; 01653 }
|
|
Compare two AttributeValue objects. The base class version always returns TRUE - derived classes should override this function to provide functionality.
Reimplemented from AttributeValue. Definition at line 1585 of file attr.cpp. 01586 { 01587 ENSURE(GetRuntimeClass() == pAttr->GetRuntimeClass(), 01588 "Different attribute types in AttributeValue::IsDifferent()"); 01589 return !(((EndArrowAttribute *) pAttr)->EndArrow == EndArrow); 01590 }
|
|
Makes the appropriate NodeAttribute-derivative from an end-arrow attribute.
Reimplemented from AttributeValue. Definition at line 1606 of file attr.cpp. 01607 { 01608 AttrEndArrow* pAttr = new AttrEndArrow; 01609 pAttr->Value.SimpleCopy(this); 01610 return pAttr; 01611 }
|
|
Implements AttributeValue. Definition at line 1569 of file attr.cpp. 01570 { 01571 pRegion->SetEndArrow(this, Temp); 01572 }
|
|
Implements AttributeValue. Definition at line 1574 of file attr.cpp. 01575 { 01576 pRegion->RestoreEndArrow(this, Temp); 01577 }
|
|
Implements AttributeValue. Definition at line 1579 of file attr.cpp. 01580 { 01581 EndArrow = ((EndArrowAttribute *) pValue)->EndArrow; 01582 EndArrow.m_bExtendPath = ((EndArrowAttribute *) pValue)->EndArrow.m_bExtendPath; 01583 }
|
|
|