227 virtual void doAction(
SoAction *action );
239 static void initClass();
240 static void exitClass();
243 virtual bool isGroup() {
return true; }
246 virtual void internalRemoveChild(
int index );
247 virtual void internalRemoveChild(
SoNode *child) { internalRemoveChild(internalFindChild(child)); }
248 virtual void internalRemoveAllChildren();
249 virtual void internalAddChild( SoNode *child );
250 virtual int internalFindChild(
const SoNode *child )
const;
251 virtual void internalInsertChild( SoNode *child,
int newChildIndex );
252 virtual SoNode *internalGetChild(
int index)
const {
return (*children)[index]; }
253 virtual void internalReplaceChild(
int index, SoNode *newChild);
254 virtual void internalReplaceChild( SoNode *oldChild, SoNode *newChild) { internalReplaceChild(internalFindChild(oldChild),newChild); }
257 virtual void copyContents(
const SoFieldContainer *fromFC,
262 static void transferFieldValues(
const SoSpotLight *from,
265 SoFieldSensor *locationFieldSensor;
266 SoFieldSensor *directionFieldSensor;
267 SoFieldSensor *angleFieldSensor;
268 SoFieldSensor *colorFieldSensor;
269 static void fieldSensorCB(
void *, SoSensor *);
270 static void valueChangedCB(
void *,SoDragger *);
272 void setDragger( SoDragger *newDragger );
275 virtual SbBool readInstance(SoInput *in,
unsigned short flags);
276 virtual SbBool readChildren(SoInput *in);
281 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.