226 virtual void doAction(
SoAction *action );
238 static void initClass();
239 static void exitClass();
242 virtual bool isGroup() {
return true; }
245 virtual void internalRemoveChild(
int index );
246 virtual void internalRemoveChild(
SoNode *child) { internalRemoveChild(internalFindChild(child)); }
247 virtual void internalRemoveAllChildren();
248 virtual void internalAddChild( SoNode *child );
249 virtual int internalFindChild(
const SoNode *child )
const;
250 virtual void internalInsertChild( SoNode *child,
int newChildIndex );
251 virtual SoNode *internalGetChild(
int index)
const {
return (*children)[index]; }
252 virtual void internalReplaceChild(
int index, SoNode *newChild);
253 virtual void internalReplaceChild( SoNode *oldChild, SoNode *newChild) { internalReplaceChild(internalFindChild(oldChild),newChild); }
256 virtual void copyContents(
const SoFieldContainer *fromFC,
261 static void transferFieldValues(
const SoSpotLight *from,
264 SoFieldSensor *locationFieldSensor;
265 SoFieldSensor *directionFieldSensor;
266 SoFieldSensor *angleFieldSensor;
267 SoFieldSensor *colorFieldSensor;
268 static void fieldSensorCB(
void *, SoSensor *);
269 static void valueChangedCB(
void *,SoDragger *);
271 void setDragger( SoDragger *newDragger );
274 virtual SbBool readInstance(SoInput *in,
unsigned short flags);
275 virtual SbBool readChildren(SoInput *in);
280 int getNumChildren()
const {
return (children->getLength()); }
SbBool replaceManip(SoPath *p, SoSpotLight *newOne) const
Replaces the tail of the path, which must be this manipulator, with the given SoSpotLight node.