node.h File Reference

(r1785/r1708)

#include <assert.h>
#include "release.h"

Go to the source code of this file.

Classes

struct  ClippedInkFlags
class  AttrTypeItem
 AttrTypeItem's are held in AttrTypeSets. More...
class  AttrTypeSet
 A set of AttrTypeitems. More...
class  Node
 This abstract class describes the fundamental type of object which can be linked into a camelot tree. All other objects which are linked into the tree are derived from this class. More...
struct  Node::NodeFlags
class  NodeRenderable
 This abstract class describes a node which is renderable. See the Node class for an important note about producing derived classes of Node. More...
class  NodeRenderableBounded
 As NodeRenderable, but with a bounding box describing the area this object occupies. This class also includes functions for use with attribute optimisation. More...
class  NodeHidden
 Nodes are generally never deleted from the tree, instead they are hidden. To hide a node a NodeHidden is inserted into the tree at the old position of the hidden node, the HiddenNode holds a pointer to the hidden node. The static ShowNode function of NodeHidden will delete the NodeHidden and relink the hidden node into the tree. More...

Defines

#define DEBUG_TREE   0

Enumerations

enum  AttachNodeDirection { PREV, NEXT, FIRSTCHILD, LASTCHILD }
enum  ChangeCode { CC_OK, CC_NORECORD, CC_FAIL }
 Define type of change results which can be returned by OnChildChange and WarnParentOfChange. More...
enum  SubtreeRenderState {
  SUBTREE_NORENDER = 0, SUBTREE_ROOTONLY, SUBTREE_ROOTANDCHILDREN, SUBTREE_JUMPTO,
  SUBTREE_RUNTO
}
 Enumerates the different actions that RenderTree can take when given the root node of a subtree to be rendered (Return values for the RenderSubtree function and stored in SubRenderContext). More...
enum  OpPermissionState { PERMISSION_UNDEFINED, PERMISSION_DENIED, PERMISSION_ALLOWED }
enum  CopyType { SIMPLECOPY, COMPLEXCOPY }
 Define the copy type a node supports. the Node class defaults to SIMPLECOPY which means its SimpleCopy() function will be used during object copy. This gives the default action of making a straight copy of the node. COMPLEXCOPY is used by nodes which cannot exist on their own. It may be necessary for them to return a tree of nodes when one node is asked to be copied. This type is specifically used for complex group objects. More...
enum  CopyStage { COPYOBJECT, COPYFINISHED }
enum  CopyControlFlags {
  ccALL, ccLOCKED, ccMANGLED, ccMARKED,
  ccSELECTED, ccRENDERABLE
}

Variables

CCAPI NodeRenderablePaper
CCAPI Chapter
CCAPI Layer


Define Documentation

#define DEBUG_TREE   0
 

Definition at line 147 of file node.h.


Enumeration Type Documentation

enum AttachNodeDirection
 

Enumerator:
PREV 
NEXT 
FIRSTCHILD 
LASTCHILD 

Definition at line 160 of file node.h.

00160 { PREV, NEXT, FIRSTCHILD, LASTCHILD }; 

enum ChangeCode
 

Define type of change results which can be returned by OnChildChange and WarnParentOfChange.

Author:
Mike_Kenny (Xara Group Ltd) <camelotdev@xara.com> Date: 13/01/95
Enumerator:
CC_OK 
CC_NORECORD 
CC_FAIL 

Definition at line 184 of file node.h.

00185 {
00186     CC_OK,
00187     CC_NORECORD,
00188     CC_FAIL
00189 };

enum CopyControlFlags
 

Enumerator:
ccALL 
ccLOCKED 
ccMANGLED 
ccMARKED 
ccSELECTED 
ccRENDERABLE 

Definition at line 264 of file node.h.

00265 {
00266     ccALL,
00267     ccLOCKED,
00268     ccMANGLED,
00269     ccMARKED,
00270     ccSELECTED,
00271     ccRENDERABLE
00272 };

enum CopyStage
 

Enumerator:
COPYOBJECT 
COPYFINISHED 

Definition at line 258 of file node.h.

00259 { 
00260     COPYOBJECT, 
00261     COPYFINISHED 
00262 };

enum CopyType
 

Define the copy type a node supports. the Node class defaults to SIMPLECOPY which means its SimpleCopy() function will be used during object copy. This gives the default action of making a straight copy of the node. COMPLEXCOPY is used by nodes which cannot exist on their own. It may be necessary for them to return a tree of nodes when one node is asked to be copied. This type is specifically used for complex group objects.

Author:
Mike_Kenny (Xara Group Ltd) <camelotdev@xara.com> Date: 3/5/95
Enumerator:
SIMPLECOPY 
COMPLEXCOPY 

Definition at line 252 of file node.h.

00253 { 
00254     SIMPLECOPY, 
00255     COMPLEXCOPY
00256 };

enum OpPermissionState
 

Enumerator:
PERMISSION_UNDEFINED 
PERMISSION_DENIED 
PERMISSION_ALLOWED 

Definition at line 231 of file node.h.

enum SubtreeRenderState
 

Enumerates the different actions that RenderTree can take when given the root node of a subtree to be rendered (Return values for the RenderSubtree function and stored in SubRenderContext).

Author:
Phil_Martin (Xara Group Ltd) <camelotdev@xara.com> Date: 22/06/2004
Enumerator:
SUBTREE_NORENDER 
SUBTREE_ROOTONLY 
SUBTREE_ROOTANDCHILDREN 
SUBTREE_JUMPTO 
SUBTREE_RUNTO 

Definition at line 203 of file node.h.

00204 {
00205     SUBTREE_NORENDER = 0,
00206     SUBTREE_ROOTONLY,
00207     SUBTREE_ROOTANDCHILDREN,
00208     SUBTREE_JUMPTO,
00209     SUBTREE_RUNTO
00210 };


Variable Documentation

class CCAPI Chapter
 

Definition at line 126 of file node.h.

class CCAPI Layer
 

Definition at line 127 of file node.h.

class CCAPI NodeRenderablePaper
 

Definition at line 124 of file node.h.


Generated on Sat Nov 10 03:49:16 2007 for Camelot by  doxygen 1.4.4