CompoundNodeBlendBecomeA Class Reference

Gets the compound node to wrap up any nodes passed to the passback in a copy of its tree structure. More...

#include <blndhelp.h>

Inheritance diagram for CompoundNodeBlendBecomeA:

BecomeA List of all members.

Public Member Functions

 CompoundNodeBlendBecomeA (BecomeAReason Reason, CCRuntimeClass *pClass, UndoableOperation *pOp, BOOL Sel, NodeCompound *pCompound, BecomeA *pBecomeA)
BOOL IsCompoundBlendBecomeA ()
BOOL PassBack (NodeRenderableInk *pNewNode, NodeRenderableInk *pCreatedByNode, CCAttrMap *pAttrMap=NULL)
 Constructor.
void SetNumPathNodes (UINT32 NumPaths)

Private Attributes

NodeCompoundm_pCompound
BecomeAm_pBecomeA
UINT32 m_NumPathNodes

Detailed Description

Gets the compound node to wrap up any nodes passed to the passback in a copy of its tree structure.

Author:
David_McClarnon (Xara Group Ltd) <camelotdev@xara.com> Mc
Date:
23/2/2000
See also:
NodeRenderableInk::Blend

Definition at line 175 of file blndhelp.h.


Constructor & Destructor Documentation

CompoundNodeBlendBecomeA::CompoundNodeBlendBecomeA BecomeAReason  Reason,
CCRuntimeClass pClass,
UndoableOperation pOp,
BOOL  Sel,
NodeCompound pCompound,
BecomeA pBecomeA
[inline]
 

Definition at line 181 of file blndhelp.h.

00186                                         : BecomeA(Reason, pClass, pOp, Sel)
00187     {
00188         m_pCompound  = pCompound;
00189         m_pBecomeA   = pBecomeA;
00190 //      m_Count = 0;
00191         m_NumPathNodes = 0;
00192     }                   


Member Function Documentation

BOOL CompoundNodeBlendBecomeA::IsCompoundBlendBecomeA  )  [inline, virtual]
 

Reimplemented from BecomeA.

Definition at line 194 of file blndhelp.h.

00194 { return TRUE; }

BOOL CompoundNodeBlendBecomeA::PassBack NodeRenderableInk pNewNode,
NodeRenderableInk pCreatedByNode,
CCAttrMap pAttrMap = NULL
[virtual]
 

Constructor.

Author:
David_McClarnon (Xara Group Ltd) <camelotdev@xara.com>
Date:
21/2/2000
Parameters:
See base class, plus the compound node we're using [INPUTS]
[OUTPUTS] 
Returns:
See also:
-

Reimplemented from BecomeA.

Definition at line 721 of file blndhelp.cpp.

00725 {
00726     ERROR2IF(pCreatedByNode == NULL, FALSE, "CompoundNodeBlendBecomeA - no created by node");
00727 
00728     NodeRenderableInk * pNewCompound = NULL;
00729 
00730     if (pAttrMap == NULL)
00731     {
00732         CCAttrMap * pAppliedAttrMap = CCAttrMap::MakeAppliedAttrMap(pCreatedByNode);
00733 //      pAppliedAttrMap->RemoveIndirectlyAppliedLayeredAttributes(pCreatedByNode,FALSE);
00734         pAttrMap = pAppliedAttrMap->Copy();
00735         delete pAppliedAttrMap;
00736     }
00737 
00738     pNewCompound = m_pCompound->CreateTreeFromNodeToBlend(pNewNode, pAttrMap);
00739     
00740     if (pNewCompound && pNewCompound->IsCompound())
00741     {
00742         ((NodeCompound *)pNewCompound)->SetBlendCreatedByNode(m_pCompound);
00743 
00744         TRACEUSER( "DavidM", _T("Count %d Num path nodes %d\n"),
00745             m_Count, m_NumPathNodes);
00746 
00747         if (m_Count == 0)
00748         {
00749             ((NodeCompound*)pNewCompound)->SetStartBlendGroupNode();
00750         }
00751         
00752         if (m_Count == m_NumPathNodes-1)
00753         {
00754             ((NodeCompound*)pNewCompound)->SetEndBlendGroupNode();
00755         }
00756     }
00757 
00758     m_Count++;
00759 
00760     return m_pBecomeA->PassBack(pNewCompound, pCreatedByNode, pAttrMap);
00761 }

void CompoundNodeBlendBecomeA::SetNumPathNodes UINT32  NumPaths  )  [inline]
 

Definition at line 201 of file blndhelp.h.

00201 { m_NumPathNodes = NumPaths; }


Member Data Documentation

UINT32 CompoundNodeBlendBecomeA::m_NumPathNodes [private]
 

Definition at line 208 of file blndhelp.h.

BecomeA* CompoundNodeBlendBecomeA::m_pBecomeA [private]
 

Definition at line 206 of file blndhelp.h.

NodeCompound* CompoundNodeBlendBecomeA::m_pCompound [private]
 

Definition at line 205 of file blndhelp.h.


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