GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  SONODEKITLISTPART (3)

NAME

SoNodeKitListPart — group node with restricted children

CONTENTS

Inherits From
Synopsis
Description
Methods
File Format/defaults
See Also

INHERITS FROM

SoBase > SoFieldContainer > SoNode > SoNodeKitListPart

SYNOPSIS

#include <Inventor/nodekits/SoNodeKitListPart.h>

Methods from class SoNodeKitListPart:

       
                    
                     SoNodeKitListPart()    
SoType    
                    
SoType               getContainerType() const    
void    
                    
void                 setContainerType(SoType newContainerType )    
const SoTypeList &    
                    
const SoTypeList &   getChildTypes() const    
void    
                    
void                 addChildType(SoType typeToAdd )    
SbBool    
                    
SbBool               isTypePermitted(SoType typeToCheck ) const    
SbBool    
                    
SbBool               isChildPermitted(const SoNode *child ) const    
void    
                    
void                 containerSet(const char *fieldDataString )    
void    
                    
void                 lockTypes()    
SbBool    
                    
SbBool               isTypeLocked() const    
void    
                    
void                 addChild(SoNode *child )    
void    
                    
void                 insertChild(SoNode *child, int childIndex )    
SoNode *    
                    
SoNode *             getChild(int index ) const    
int    
                    
int                  findChild(SoNode *child) const    
int    
                    
int                  getNumChildren() const    
void    
                    
void                 removeChild(int index)    
void    
                    
void                 removeChild(SoNode *child)    
void    
                    
void                 replaceChild(int index, SoNode *newChild)    
void    
                    
void                 replaceChild(SoNode *oldChild, SoNode *newChild)    
static SoType    
                    
static SoType        getClassTypeId()

Methods from class SoNode:

    void    
                    
void                 setOverride(SbBool state)    
SbBool    
                    
SbBool               isOverride() const    
SoNode *    
                    
SoNode *             copy(SbBool copyConnections = FALSE) const    
virtual SbBool    
                    
virtual SbBool       affectsState() const    
static SoNode *    
                    
static SoNode *      getByName(const SbName &name)    
static int    
                    
static int           getByName(const SbName &name, SoNodeList &list)

Methods from class SoFieldContainer:

    void    
                    
void                 setToDefaults()    
SbBool    
                    
SbBool               hasDefaultValues() const    
SbBool    
                    
SbBool               fieldsAreEqual(const SoFieldContainer *fc) const    
void    
                    
void                 copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE)    
SbBool    
                    
SbBool               set(const char *fieldDataString)    
void    
                    
void                 get(SbString &fieldDataString)    
virtual int    
                    
virtual int          getFields(SoFieldList &resultList) const    
virtual SoField *    
                    
virtual SoField *    getField(const SbName &fieldName) const    
SbBool    
                    
SbBool               getFieldName(const SoField *field, SbName &fieldName) const    
SbBool    
                    
SbBool               isNotifyEnabled() const    
SbBool    
                    
SbBool               enableNotify(SbBool flag)

Methods from class SoBase:

    void    
                    
void                 ref()    
void    
                    
void                 unref() const    
void    
                    
void                 unrefNoDelete() const    
void    
                    
void                 touch()    
virtual SoType    
                    
virtual SoType       getTypeId() const    
SbBool    
                    
SbBool               isOfType(SoType type) const    
virtual void    
                    
virtual void         setName(const SbName &name)    
virtual SbName    
                    
virtual SbName       getName() const

DESCRIPTION

This node class is very similar to SoGroup with the exception that it specifies restrictions on the type of children that it allows. It is used by nodekits to restrict child types within list parts (see the reference page for SoBaseKit).

By default, any kind of child may be added. Methods of this class allow you to restrict the type of allowable children, and to lock down the types so that this type list may no longer be altered.

Inside the SoNodeKitListPart is a container node, which in turn contains the children. The container node is a hidden child, and the type of node used may be set with setContainerType(). In this way, you can make the nodekitlist behave like a group, a separator, or any other subclass of group. The container is not accessible so that the nodekitlist may retain control over what kinds of children are added.

METHODS

       
                    
                     SoNodeKitListPart()
Constructor.

    SoType    
                    
SoType               getContainerType() const    
void    
                    
void                 setContainerType(SoType newContainerType )
Gets and sets the type of node used as the container.

    const SoTypeList &    
                    
const SoTypeList &   getChildTypes() const
Returns the permitted child node types. By default, any type of node is permitted, so the list contains one entry of type SoNode.

    void    
                    
void                 addChildType(SoType typeToAdd )
Permits the node type typeToAdd as a child. The first time the addChildType() method is called, the default of SoNode is overridden and only the new typeToAdd is permitted. In subsequent calls to addChildType(), the typeToAdd is added to the existing types.

    SbBool    
                    
SbBool               isTypePermitted(SoType typeToCheck ) const
Returns whether a node of type typeToCheck may be added as a child.

    SbBool    
                    
SbBool               isChildPermitted(const SoNode *child ) const
Returns whether the node child may be added to this list. This will return TRUE if the type of child is one of the permissible child types.

    void    
                    
void                 containerSet(const char *fieldDataString )
Sends a string to the set() method on the container node. This is how you can set the value of a switch node if the container node is an SoSwitch, for example.

    void    
                    
void                 lockTypes()
This function permanently locks the permitted child types and the container type permanently. Calls to setContainerType() and addChildType() will have no effect after this function is called.

    SbBool    
                    
SbBool               isTypeLocked() const
Returns whether the permitted child types and the container type are locked (i.e. cannot be changed). See lockTypes()

    void    
                    
void                 addChild(SoNode *child )    
void    
                    
void                 insertChild(SoNode *child, int childIndex )    
SoNode *    
                    
SoNode *             getChild(int index ) const    
int    
                    
int                  findChild(SoNode *child) const    
int    
                    
int                  getNumChildren() const    
void    
                    
void                 removeChild(int index)    
void    
                    
void                 removeChild(SoNode *child)    
void    
                    
void                 replaceChild(int index, SoNode *newChild)    
void    
                    
void                 replaceChild(SoNode *oldChild, SoNode *newChild)
These are the functions used to edit the children. They parallel those of SoGroup, except that they always check the child types against those which are permissible. See SoGroup for details.

    static SoType    
                    
static SoType        getClassTypeId()
Returns type identifier for this class.

FILE FORMAT/DEFAULTS

NodeKitListPart {



containerTypeName  "Group"
childTypeNames     ""
containerNode      NULL


}

SEE ALSO

SoBaseKit, SoNodeKit, SoNodeKitDetail, SoNodeKitPath, SoNodekitCatalog, SoSceneKit, SoSeparatorKit, SoShapeKit, SoWrapperKit

Search for    or go to Top of page |  Section 3 |  Main Index


SONODEKITLISTPART(3IV) (-->)

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.