man SoLocateHighlight () - special separator that performs locate highlighting

NAME

SoLocateHighlight - special separator that performs locate highlighting

INHERITS FROM

SoBase > SoFieldContainer > SoNode > SoGroup > SoSeparator > SoLocateHighlight

SYNOPSIS

#include <Inventor/nodes/SoLocateHighlight.h> enum Modes { c } c } highlight when mouse is over (default)

c } c } always highlight

c } c } never highlight

} enum Styles { c } c } changes emissive color only (default)

c } c } changes emissive and diffuse colors

} Fields from class SoLocateHighlight: c } c } color

c } c } style

c } c } mode Fields from class SoSeparator: c } c } renderCaching

c } c } boundingBoxCaching

c } c } renderCulling

c } c } pickCulling Methods from class SoLocateHighlight: c } c } SoLocateHighlight()

c } c } getClassTypeId() Methods from class SoSeparator: c } c } setNumRenderCaches(int howMany)

c } c } getNumRenderCaches() Methods from class SoGroup: c } c } addChild(SoNode *child)

c } c } insertChild(SoNode *child, int newChildIndex)

c } c } getChild(int index) const

c } c } findChild(const SoNode *child) const

c } c } getNumChildren() const

c } c } removeChild(int index)

c } c } removeChild(SoNode *child)

c } c } removeAllChildren()

c } c } replaceChild(int index, SoNode *newChild)

c } c } replaceChild(SoNode *oldChild, SoNode *newChild) Methods from class SoNode: c } c } setOverride(SbBool state)

c } c } isOverride() const

c } c } copy(SbBool copyConnections = FALSE) const

c } c } affectsState() const

c } c } getByName(const SbName &name)

c } c } getByName(const SbName &name, SoNodeList &list) Methods from class SoFieldContainer: c } c } setToDefaults()

c } c } hasDefaultValues() const

c } c } fieldsAreEqual(const SoFieldContainer *fc) const

c } c } copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE)

c } c } set(const char *fieldDataString)

c } c } get(SbString &fieldDataString)

c } c } getFields(SoFieldList &resultList) const

c } c } getField(const SbName &fieldName) const

c } c } getFieldName(const SoField *field, SbName &fieldName) const

c } c } isNotifyEnabled() const

c } c } enableNotify(SbBool flag) Methods from class SoBase: c } c } ref()

c } c } unref() const

c } c } unrefNoDelete() const

c } c } touch()

c } c } getTypeId() const

c } c } isOfType(SoType type) const

c } c } setName(const SbName &name)

c } c } getName() const

DESCRIPTION

This is a subclass of SoSeparator that redraws itself in a different color when the cursor is over the contents of the separator. The redraw happens for that separator only and not the entire window (redraw along the handle event pick path) and in the front buffer, to efficiently track the mouse motion. The highlighted redraw overrides the emissive and/or diffuse color of the subgraph based on the field values in this node. NOTE: when using SoLightModel::BASE_COLOR (to turn lighting off) only the diffuse color will be used to render objects, so EMISSIVE_DIFFUSE must be used for this node to have any effect.

FIELDS

c } c } color

highlighting color - default [.3, .3, .3] c } c } style

highlighting draw style - default EMISSIVE c } c } mode

Whether to highlight or not - default AUTO

METHODS

c } c } SoLocateHighlight()

Creates a LocateHighlight node with default settings. c } c } getClassTypeId()

Returns type identifier for this class.

ACTION BEHAVIOR

SoHandleEventAction

Checks to see if the cursor moves onto or off of the contents of the separator, and redraws appropriately (if mode is AUTO), otherwise traverses as a normal separator. SoGLRenderAction

Redraws either highlighted (if cursor is over the contents of the separator when mode == AUTO or always if mode == ON), otherwise traverses as a normal separator.

FILE FORMAT/DEFAULTS

LocateHighlight {
renderCaching	AUTO
boundingBoxCaching	AUTO
renderCulling	AUTO
pickCulling	AUTO
mode	AUTO
style	EMISSIVE
color	0.3 0.3 0.3
}

SEE ALSO

SoSeparator, SoSelection, SoMaterial