SelObjPathListItem Class Reference

This class encapsulates all the data needed for each path generated by the objects that are being combined. A list of all the paths that each of the selected object generates is made, and each path generated creates an instance of this class. More...

#include <combshps.h>

Inheritance diagram for SelObjPathListItem:

ListItem CCObject SimpleCCObject List of all members.

Public Member Functions

 SelObjPathListItem ()
 SelObjPathListItem (NodePath *pThisNodePath, NodeRenderableInk *pThisCreatedByNode, CCAttrMap *pThisAttrMap, BOOL createdByStroke=FALSE)
 Main constructor. Sets up the item correctly.
 ~SelObjPathListItem ()
 Destructor that deletes the member path pointer, and any attrs supplied.
PathGetPath ()
 Get that Path ptr boy!
NodePathGetNodePath ()
NodeRenderableInkGetCreatedByNode ()
CCAttrMapGetAttrMap ()
ListRangeGetEffectStack ()
BOOL GetStrokeCreatedPassbackPath ()

Private Attributes

NodePathpNodePath
NodeRenderableInkpCreatedByNode
CCAttrMappAttrMap
ListRangepEffectStack
BOOL strokeCreatedPassbackPath

Detailed Description

This class encapsulates all the data needed for each path generated by the objects that are being combined. A list of all the paths that each of the selected object generates is made, and each path generated creates an instance of this class.

Author:
Mark_Neves (Xara Group Ltd) <camelotdev@xara.com>
Date:
12/1/95

Definition at line 145 of file combshps.h.


Constructor & Destructor Documentation

SelObjPathListItem::SelObjPathListItem  )  [inline]
 

Definition at line 150 of file combshps.h.

00150 : pNodePath(NULL), pCreatedByNode(NULL), pAttrMap(NULL), strokeCreatedPassbackPath(FALSE) {}    // For CC_IMPLEMENT_...

SelObjPathListItem::SelObjPathListItem NodePath pThisNodePath,
NodeRenderableInk pThisCreatedByNode,
CCAttrMap pThisAttrMap,
BOOL  createdByStroke = FALSE
 

Main constructor. Sets up the item correctly.

Author:
Mark_Neves (Xara Group Ltd) <camelotdev@xara.com>
Date:
12/1/95
Parameters:
pThisNodePath = the NodePath this item refers to [INPUTS] pThisCreatedByNode = the node that created pThisNodePath pThisAttrMap = ptr to attr map (NULL means get applied attrs from pThisCreatedByNode) createdByStroke = was the item created by a stroke?
- [OUTPUTS]
Returns:
-

Errors: -

See also:

Definition at line 2672 of file combshps.cpp.

02673 {
02674     pNodePath       = pThisNodePath;
02675     pCreatedByNode  = pThisCreatedByNode;
02676     pAttrMap        = pThisAttrMap;
02677     strokeCreatedPassbackPath = createdByStroke;
02678     pEffectStack    = NULL;
02679 }

SelObjPathListItem::~SelObjPathListItem  ) 
 

Destructor that deletes the member path pointer, and any attrs supplied.

Author:
Mark_Neves (Xara Group Ltd) <camelotdev@xara.com>
Date:
12/1/95
Parameters:
- [INPUTS]
- [OUTPUTS]
Returns:
-

Errors: -

See also:

Definition at line 2696 of file combshps.cpp.

02697 {
02698     // Must delete the NodePaths generated via the DoBecomeA() mechanism
02699     // Only delete if this node is not in the tree!
02700     if (pNodePath != NULL && pNodePath!=pCreatedByNode && pNodePath->FindParent()==NULL && pNodePath->GetHiddenCnt()==0)
02701     {
02702         pNodePath->CascadeDelete();
02703         delete pNodePath;
02704     }
02705 
02706     if (pAttrMap  != NULL)
02707     {
02708         // Delete all the attrs in the map
02709         CCRuntimeClass * pType;
02710         void* pVal;
02711 
02712         // iterating all (key, value) pairs
02713         for (CCAttrMap::iterator Pos = pAttrMap->GetStartPosition(); Pos != pAttrMap->GetEndPosition();)
02714         {
02715             // Get attr at position Pos
02716             pAttrMap->GetNextAssoc(Pos,pType,pVal);
02717 
02718             if (pVal != NULL)
02719             {
02720                 pAttrMap->RemoveKey(pType);
02721                 delete (NodeAttribute*)pVal;
02722             }
02723         }
02724 
02725         // delete the actual map
02726         delete pAttrMap;
02727     }
02728 
02729     if (pEffectStack)
02730     {
02731         delete pEffectStack;
02732         pEffectStack = NULL;
02733     }
02734 }


Member Function Documentation

CCAttrMap* SelObjPathListItem::GetAttrMap  )  [inline]
 

Definition at line 158 of file combshps.h.

00158 { return pAttrMap; }

NodeRenderableInk* SelObjPathListItem::GetCreatedByNode  )  [inline]
 

Definition at line 157 of file combshps.h.

00157 { return pCreatedByNode; }

ListRange* SelObjPathListItem::GetEffectStack  )  [inline]
 

Definition at line 160 of file combshps.h.

NodePath* SelObjPathListItem::GetNodePath  )  [inline]
 

Definition at line 156 of file combshps.h.

00156 { return pNodePath; }

Path * SelObjPathListItem::GetPath  ) 
 

Get that Path ptr boy!

Author:
Mark_Neves (Xara Group Ltd) <camelotdev@xara.com>
Date:
26/1/95
Parameters:
- [INPUTS]
- [OUTPUTS]
Returns:
Ptr to the path, or NULL
See also:
-

Definition at line 2750 of file combshps.cpp.

02751 {
02752     if (pNodePath != NULL) 
02753         return &(pNodePath->InkPath); 
02754     else 
02755         return NULL; 
02756 }

BOOL SelObjPathListItem::GetStrokeCreatedPassbackPath  )  [inline]
 

Definition at line 169 of file combshps.h.

00169 { return (strokeCreatedPassbackPath); }


Member Data Documentation

CCAttrMap* SelObjPathListItem::pAttrMap [private]
 

Definition at line 174 of file combshps.h.

NodeRenderableInk* SelObjPathListItem::pCreatedByNode [private]
 

Definition at line 173 of file combshps.h.

ListRange* SelObjPathListItem::pEffectStack [private]
 

Definition at line 175 of file combshps.h.

NodePath* SelObjPathListItem::pNodePath [private]
 

Definition at line 172 of file combshps.h.

BOOL SelObjPathListItem::strokeCreatedPassbackPath [private]
 

Definition at line 177 of file combshps.h.


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