SoXtSliderSetBase(3IV)() SoXtSliderSetBase(3IV)()
NAME
SoXtSliderSetBase -- abstract base class for Motif-only slider components
INHERITS FROM
SoXtComponent > SoXtSliderSetBase
SYNOPSIS
#include <Inventor/Xt/SoXtSliderSetBase.h>
Methods from class SoXtSliderSetBase:
virtual void setNode(SoNode *newNode)
SoNode * getNode() 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 as a base class for all editors which use Motif sliders to edit fields in an Inventor scene graph node. This class is
not meant to be instanced by programmers who want to use an editor in a program. It should only be used as a base class when designing new
editors.
SoXtSliderSetBase is derived from SoXtComponent, but adds three concepts. First, there is a node to edit. Second, there are subcomponents.
When an SoXtSliderSetBase is shown or hidden, so are its subcomponents. (As an example, an SoXtTransformSliderSet is composed of many sub-
components). Third, an SoXtSliderSetBase has a layout size, which is used to lay out the subcomponents.
METHODS
virtual void setNode(SoNode *newNode)
Sets a new node as the node to be modified by this editor component.
SoNode * getNode() const
Returns a pointer to the node currently being modified by this editor component.
SEE ALSO
SoXtComponent, SoXtSliderSet
SoXtSliderSetBase(3IV)()
Check Out this Related Man Page
SoXtMaterialEditor(3IV)() SoXtMaterialEditor(3IV)()
NAME
SoXtMaterialEditor -- Component which lets you edit a material interactively
INHERITS FROM
SoXtComponent > SoXtMaterialEditor
SYNOPSIS
#include <Inventor/Xt/SoXtMaterialEditor.h>
typedef void SoXtMaterialEditorCB(void *userData, const SoMaterial *mtl)
enum UpdateFrequency {
SoXtMaterialEditor::CONTINUOUS
send updates with every mouse motion
SoXtMaterialEditor::AFTER_ACCEPT
only send updates after user hits accept button
}
Methods from class SoXtMaterialEditor:
SoXtMaterialEditor(Widget parent = NULL, const char *name = NULL, SbBool buildInsideParent = TRUE)
~SoXtMaterialEditor()
void attach(SoMaterial *material, int index = 0)
void detach()
SbBool isAttached()
void addMaterialChangedCallback(SoXtMaterialEditorCB *f, void *userData = NULL)
void removeMaterialChangedCallback(SoXtMaterialEditorCB *f, void *userData = NULL)
void setUpdateFrequency(SoXtMaterialEditor::UpdateFrequency freq)
SoXtMaterialEditor::UpdateFrequency
getUpdateFrequency()
void setMaterial(const SoMaterial &mtl)
const SoMaterial & getMaterial() 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 the material properties of an SoMaterial node. The editor can also directly be used using callbacks instead of
attaching it to a node. The component consists of a render area displaying a test sphere, some sliders, a set of radio buttons, and a menu.
The sphere displays the current material being edited. There is one slider for each material coefficient. Those fields are ambient, dif-
fuse, specular, emissive (all of which are colors); and transparency and shininess (which are scalar values). A color editor can be opened
to edit the color slider base color. A material list displays palettes of predefined materials from which to choose.
The editor can currently be attached to only one material at a time. Attaching two different materials will automatically detach the first
one before attaching the second.
METHODS
SoXtMaterialEditor(Widget parent = NULL, const char *name = NULL, SbBool buildInsideParent = TRUE)
~SoXtMaterialEditor()
Constructor and destructor.
void attach(SoMaterial *material, int index = 0)
void detach()
Attach/detach the editor to a material node and edit the material of the given index.
SbBool isAttached()
Returns TRUE if the editor is attached.
void addMaterialChangedCallback(SoXtMaterialEditorCB *f, void *userData = NULL)
void removeMaterialChangedCallback(SoXtMaterialEditorCB *f, void *userData = NULL)
Additional way of using the material editor, by registering a callback which will be called whenever the material changes (check the
UpdateFrequency to find when the callbacks will be called).
void setUpdateFrequency(SoXtMaterialEditor::UpdateFrequency freq)
SoXtMaterialEditor::UpdateFrequency
getUpdateFrequency()
Sets/gets the update frequency. See the UpdateFrequency enum declaration.
void setMaterial(const SoMaterial &mtl)
const SoMaterial & getMaterial() const
Set a new material value, and get the current material value.
RESOURCES
*SoXtMaterialEditor.tile1Color: #4c4c4c (color name or hex value)
*SoXtMaterialEditor.tile2Color: #999999 (color name or hex value)
*SoXtMaterialEditor.light1Color: white (color name or hex value)
*SoXtMaterialEditor.light2Color: white (color name or hex value)
*SoXtMaterialEditor.updateFrequency: continuous (continuous | manual)
SEE ALSO
SoXtComponent, SoXtMaterialList, SoXtDirLightEditor, SoMaterial
SoXtMaterialEditor(3IV)()