AttrFillEffectRainbow Class Reference

Rainbow (HSV) fill effect Attribute class. More...

#include <fillattr2.h>

Inheritance diagram for AttrFillEffectRainbow:

AttrFillEffect NodeAttribute NodeRenderable Node CCObject SimpleCCObject List of all members.

Public Member Functions

 AttrFillEffectRainbow ()
 AttrFillEffectRainbow (Node *ContextNode, AttachNodeDirection Direction, BOOL Locked=FALSE, BOOL Mangled=FALSE, BOOL Marked=FALSE, BOOL Selected=FALSE)
void Render (RenderRegion *pRender)
 'Renders' a rainbow fill effect attribute.
NodeSimpleCopy ()
 This method returns a shallow copy of the node with all Node pointers NULL. The function is virtual, and must be defined for all derived classes.
virtual UINT32 GetAttrNameID (void)
 Returns a string resource ID describing the attribute.
virtual UINT32 GetNodeSize () const
 For finding the size of the node.
virtual AttributeValueGetAttributeValue ()
virtual BOOL WritePreChildrenWeb (BaseCamelotFilter *pFilter)
 Writes the rainbow fill effect record to the filter.
virtual BOOL WritePreChildrenNative (BaseCamelotFilter *pFilter)
virtual void PolyCopyNodeContents (NodeRenderable *pNodeCopy)
 Polymorphically copies the contents of this node to another.

Public Attributes

FillEffectRainbowAttribute Value

Private Member Functions

BOOL CopyNodeContents (AttrFillEffectRainbow *NodeCopy)
 This method copies the node's contents to the node pointed to by NodeCopy.

Detailed Description

Rainbow (HSV) fill effect Attribute class.

Author:
Tim_Browse (Xara Group Ltd) <camelotdev@xara.com>
Date:
18/07/94
See also:
FillEffectRainbowAttribute

Definition at line 2735 of file fillattr2.h.


Constructor & Destructor Documentation

AttrFillEffectRainbow::AttrFillEffectRainbow  )  [inline]
 

Definition at line 2740 of file fillattr2.h.

02740 {}

AttrFillEffectRainbow::AttrFillEffectRainbow Node ContextNode,
AttachNodeDirection  Direction,
BOOL  Locked = FALSE,
BOOL  Mangled = FALSE,
BOOL  Marked = FALSE,
BOOL  Selected = FALSE
[inline]
 

Definition at line 2741 of file fillattr2.h.

02746                                      : 
02747         AttrFillEffect(ContextNode, Direction, Locked, Mangled, Marked, Selected) {}


Member Function Documentation

BOOL AttrFillEffectRainbow::CopyNodeContents AttrFillEffectRainbow NodeCopy  )  [private]
 

This method copies the node's contents to the node pointed to by NodeCopy.

Author:
Will_Cowling (Xara Group Ltd) <camelotdev@xara.com>
Date:
23/8/94
Parameters:
NodeCopy - the node to copy. [INPUTS]
A copy of this node [OUTPUTS]
Returns:
Errors: An assertion failure will occur if NodeCopy is NULL Scope: protected

Definition at line 18920 of file fillattr.cpp.

18921 {
18922     ERROR2IF(NodeCopy == NULL, FALSE, "NULL pointer in AttrFillEffectRainbow::CopyNodeContents!");
18923 
18924     NodeAttribute::CopyNodeContents(NodeCopy);
18925 
18926     // Copy contents specific to derived class here
18927     NodeCopy->Value.SimpleCopy(&Value);
18928     return TRUE;
18929 } 

virtual AttributeValue* AttrFillEffectRainbow::GetAttributeValue  )  [inline, virtual]
 

Reimplemented from NodeAttribute.

Definition at line 2754 of file fillattr2.h.

02754 { return &Value; }

UINT32 AttrFillEffectRainbow::GetAttrNameID void   )  [virtual]
 

Returns a string resource ID describing the attribute.

Author:
Will_Cowling (Xara Group Ltd) <camelotdev@xara.com>
Date:
23/8/94
Returns:
Attribute description ID

Reimplemented from NodeAttribute.

Definition at line 18900 of file fillattr.cpp.

18901 {
18902     return (_R(IDS_FILLEFFECTRAINBOW)); 
18903 }                                  

UINT32 AttrFillEffectRainbow::GetNodeSize  )  const [virtual]
 

For finding the size of the node.

Author:
Will_Cowling (Xara Group Ltd) <camelotdev@xara.com>
Date:
23/8/94
Returns:
The size of the node in bytes
See also:
Node::GetSubtreeSize

Reimplemented from Node.

Definition at line 18967 of file fillattr.cpp.

18968 {     
18969     return (sizeof(AttrFillEffectRainbow)); 
18970 }  

void AttrFillEffectRainbow::PolyCopyNodeContents NodeRenderable pNodeCopy  )  [virtual]
 

Polymorphically copies the contents of this node to another.

Author:
Phil_Martin (Xara Group Ltd) <camelotdev@xara.com>
Date:
18/12/2003
Parameters:
- [OUTPUTS]
Returns:
Errors: An assertion failure will occur if NodeCopy is NULL Scope: protected

Reimplemented from NodeRenderable.

Definition at line 18944 of file fillattr.cpp.

18945 {
18946     ENSURE(pNodeCopy, "Trying to copy a node's contents into a NULL node");
18947     ENSURE(IS_A(pNodeCopy, AttrFillEffectRainbow), "PolyCopyNodeContents given wrong dest node type");
18948 
18949     if (IS_A(pNodeCopy, AttrFillEffectRainbow))
18950         CopyNodeContents((AttrFillEffectRainbow*)pNodeCopy);
18951 }

void AttrFillEffectRainbow::Render RenderRegion pRender  )  [virtual]
 

'Renders' a rainbow fill effect attribute.

Author:
Will_Cowling (Xara Group Ltd) <camelotdev@xara.com>
Date:
23/8/94

Reimplemented from NodeAttribute.

Definition at line 18858 of file fillattr.cpp.

18859 {
18860     pRender->SetFillEffect(&Value, FALSE);
18861 }

Node * AttrFillEffectRainbow::SimpleCopy void   )  [virtual]
 

This method returns a shallow copy of the node with all Node pointers NULL. The function is virtual, and must be defined for all derived classes.

Author:
Will_Cowling (Xara Group Ltd) <camelotdev@xara.com>
Date:
23/8/94
Returns:
A copy of the node, or NULL if memory runs out

Errors: If memory runs out when trying to copy, then ERROR is called with an out of memory error and the function returns NULL. Scope: protected

Reimplemented from NodeAttribute.

Definition at line 18878 of file fillattr.cpp.

18879 {
18880     AttrFillEffectRainbow* NodeCopy = new AttrFillEffectRainbow();
18881     if (NodeCopy == NULL)
18882         return NULL;
18883 
18884     CopyNodeContents(NodeCopy);
18885     
18886     return NodeCopy;
18887 }  

BOOL AttrFillEffectRainbow::WritePreChildrenNative BaseCamelotFilter pFilter  )  [virtual]
 

Reimplemented from Node.

Definition at line 19002 of file fillattr.cpp.

19003 {
19004 #ifdef DO_EXPORT
19005     return WritePreChildrenWeb(pFilter);
19006 #else
19007     return FALSE;
19008 #endif
19009 }

BOOL AttrFillEffectRainbow::WritePreChildrenWeb BaseCamelotFilter pFilter  )  [virtual]
 

Writes the rainbow fill effect record to the filter.

> virtual BOOL AttrFillEffectRainbow::WritePreChildrenWeb(BaseCamelotFilter* pFilter)

Author:
Mark_Neves (Xara Group Ltd) <camelotdev@xara.com>
Date:
30/5/96
Parameters:
pFilter = ptr to the filter [INPUTS]
Returns:
TRUE if record is written, FALSE if not
See also:
-

Reimplemented from Node.

Definition at line 18987 of file fillattr.cpp.

18988 {
18989 #ifdef DO_EXPORT
18990     ERROR2IF(pFilter == NULL,FALSE,"NULL filter param");
18991 
18992     CamelotFileRecord Rec(pFilter,TAG_FILLEFFECT_RAINBOW,TAG_FILLEFFECT_RAINBOW_SIZE);
18993     return pFilter->Write(&Rec);
18994 #else
18995     return FALSE;
18996 #endif
18997 }


Member Data Documentation

FillEffectRainbowAttribute AttrFillEffectRainbow::Value
 

Definition at line 2765 of file fillattr2.h.


The documentation for this class was generated from the following files:
Generated on Sat Nov 10 03:50:15 2007 for Camelot by  doxygen 1.4.4