Scroll to navigation

SoXtDirectionalLightEditor(3IV)() SoXtDirectionalLightEditor(3IV)()

NAME

SoXtDirectionalLightEditor — component for editing directional lights

INHERITS FROM

SoXtComponent > SoXtDirectionalLightEditor

SYNOPSIS

#include <Inventor/Xt/SoXtDirectionalLightEditor.h>


typedef void SoXtDirectionalLightEditorCB(void *userData, const SoDirectionalLight *light)


Methods from class SoXtDirectionalLightEditor:


SoXtDirectionalLightEditor(Widget parent = NULL, const char *name = NULL, SbBool buildInsideParent = TRUE)

~SoXtDirectionalLightEditor()

void attach(SoPath *pathToLight)

void detach()

SbBool isAttached()

void addLightChangedCallback(SoXtDirectionalLightEditorCB *f, void *userData = NULL)

void removeLightChangedCallback(SoXtDirectionalLightEditorCB *f, void *userData = NULL)

void setLight(const SoDirectionalLight &newLight)

const SoDirectionalLight & getLight() const


Methods from class SoXtComponent:


virtual void show()

virtual void hide()

SbBool isVisible()

Widget getWidget() const

SbBool isTopLevelShell() const

Widget getShellWidget() const

Widget getParentWidget() const

void setSize(const SbVec2s &size)

SbVec2s getSize()

Display * getDisplay()

void setTitle(const char *newTitle)

const char * getTitle() const

void setIconTitle(const char *newIconTitle)

const char * getIconTitle() const

void setWindowCloseCallback(SoXtComponentCB *func, void *data = NULL)

static SoXtComponent * getComponent(Widget w)

const char * getWidgetName() const

const char * getClassName() const

DESCRIPTION

This class is used to edit an SoDirectionalLight node (color, intensity, and direction are changed). In addition to directly editing directional light nodes, the editor can also be used with callbacks which will be called whenever the light is changed. The component consists of a render area and a value slider in the main window, with controls to display a color picker. In the render area there appears a sphere representing the world, and a directional light manipulator representing the direction of the light. Picking on the manipulator and moving the mouse provides direct manipulation of the light direction. The color picker is used to edit the color, and the value slider edits the intensity.

The editor can currently be attached to only one light at a time. Attaching to two different lights will automatically detach the first one before attaching the second.

METHODS


SoXtDirectionalLightEditor(Widget parent = NULL, const char *name = NULL, SbBool buildInsideParent = TRUE)

~SoXtDirectionalLightEditor()

Constructor and destructor.



void attach(SoPath *pathToLight)

void detach()

Attach/detach the editor to/from a directional light. When attached, changes made in the editor directly affect the attached light.



SbBool isAttached()

Returns TRUE if the editor is attached.



void addLightChangedCallback(SoXtDirectionalLightEditorCB *f, void *userData = NULL)

void removeLightChangedCallback(SoXtDirectionalLightEditorCB *f, void *userData = NULL)

Additional way of using the directional light editor, by registering a callback and setting the light.



void setLight(const SoDirectionalLight &newLight)

const SoDirectionalLight & getLight() const

Set new light values, and get the current light values.


SEE ALSO

SoXtComponent, SoDirectionalLight