1 #ifndef COIN_SOSELECTION_H 2 #define COIN_SOSELECTION_H 36 #include <Inventor/nodes/SoSubNode.h> 37 #include <Inventor/nodes/SoSeparator.h> 38 #include <Inventor/fields/SoSFEnum.h> 39 #include <Inventor/lists/SoPathList.h> 46 typedef void SoSelectionPathCB(
void * data,
SoPath * path);
47 typedef void SoSelectionClassCB(
void * data,
SoSelection * sel);
56 static void initClass(
void);
67 void select(
const SoPath * path);
69 void deselect(
const SoPath * path);
70 void deselect(
const int which);
71 void deselect(
SoNode * node);
72 void toggle(
const SoPath * path);
73 void toggle(
SoNode * node);
74 SbBool isSelected(
const SoPath * path)
const;
75 SbBool isSelected(
SoNode * node)
const;
76 void deselectAll(
void);
77 int getNumSelected(
void)
const;
79 SoPath * getPath(
const int index)
const;
80 SoPath * operator[](
const int i)
const;
81 void addSelectionCallback(SoSelectionPathCB * f,
void * userData = NULL);
82 void removeSelectionCallback(SoSelectionPathCB * f,
void * userData = NULL);
83 void addDeselectionCallback(SoSelectionPathCB * f,
void * userData = NULL);
84 void removeDeselectionCallback(SoSelectionPathCB * f,
85 void * userData = NULL);
86 void addStartCallback(SoSelectionClassCB * f,
void * userData = NULL);
87 void removeStartCallback(SoSelectionClassCB * f,
void * userData = NULL);
88 void addFinishCallback(SoSelectionClassCB * f,
void * userData = NULL);
89 void removeFinishCallback(SoSelectionClassCB * f,
void * userData = NULL);
91 const SbBool callOnlyIfSelectable = TRUE);
92 void setPickMatching(
const SbBool pickMatching);
93 SbBool isPickMatching(
void)
const;
94 SbBool getPickMatching(
void)
const;
95 void addChangeCallback(SoSelectionClassCB * f,
void * userData = NULL);
96 void removeChangeCallback(SoSelectionClassCB * f,
void * userData = NULL);
101 void invokeSelectionPolicy(
SoPath *path, SbBool shiftDown);
102 void performSingleSelection(
SoPath *path);
103 void performToggleSelection(
SoPath *path);
105 void addPath(
SoPath *path);
106 void removePath(
const int which);
107 int findPath(
const SoPath *path)
const;
133 SbBool &ignorepick, SbBool &haltaction);
136 #endif // !COIN_SOSELECTION_H The SoBase class is the top-level superclass for a number of class-hierarchies.
Definition: SoBase.h:45
SoPathList selectionList
Definition: SoSelection.h:113
#define SO_NODE_HEADER(classname)
SbBool callPickCBOnlyIfSelectable
Definition: SoSelection.h:122
SoCallbackList * finishCBList
Definition: SoSelection.h:118
SoCallbackList * selCBList
Definition: SoSelection.h:115
SoPath * SoSelectionPickCB(void *data, const SoPickedPoint *pick)
Definition: SoSelection.h:48
SbBool pickMatching
Definition: SoSelection.h:127
SoSelectionPickCB * pickCBFunc
Definition: SoSelection.h:120
The SoPathList class is a container for pointers to SoPath objects.
Definition: SoPathList.h:40
SoCallbackList * changeCBList
Definition: SoSelection.h:124
SoPath * mouseDownPickPath
Definition: SoSelection.h:126
The SoNode class is the base class for nodes used in scene graphs.
Definition: SoNode.h:56
The SoSFEnum class is a container for an enum value.
Definition: SoSFEnum.h:40
virtual void handleEvent(SoHandleEventAction *action)
Definition: SoSeparator.cpp:814
The SoCallbackList is a container for callback function pointers.
Definition: lists/SoCallbackList.h:44
SoCallbackList * deselCBList
Definition: SoSelection.h:116
Policy
Definition: SoSelection.h:59
The SoPath class is a container class for traversal path descriptions.
Definition: SoPath.h:52
SoSFEnum policy
Definition: SoSelection.h:63
void * pickCBData
Definition: SoSelection.h:121
SoCallbackList * startCBList
Definition: SoSelection.h:117
The SoHandleEventAction class distributes user events to the scene.
Definition: SoHandleEventAction.h:46
Definition: SoSelection.h:60
The SoPickedPoint class is used for specifying picked points.
Definition: SoPickedPoint.h:48
The SoSelection class manages a list of selected nodes.
Definition: SoSelection.h:50
The SoSeparator class is a state-preserving group node.
Definition: SoSeparator.h:44