Classes |
| struct | MousePickRecord |
Public Types |
| enum | MousePickType {
NO_EVENT = 0,
LEFT_MOUSE_PRESS,
LEFT_MOUSE_RELEASE,
LEFT_MOUSE_DOUBLECLICK,
MIDDLE_MOUSE_PRESS,
MIDDLE_MOUSE_RELEASE,
MIDDLE_MOUSE_DOUBLECLICK,
RIGHT_MOUSE_PRESS,
RIGHT_MOUSE_RELEASE,
RIGHT_MOUSE_DOUBLECLICK,
MOUSE_MOVE,
MOUSE_WHEEL
} |
Public Member Functions |
| | DtWidgetPicker (DtOverlayResourceProvider &provider) |
| | ~DtWidgetPicker () |
| unsigned int | numberOfWidgets () const |
| | Get the number of widgets.
|
| void | releaseResources () |
| | Deallocate any resources.
|
| DtPickableQuad * | allocatePickableQuad () |
| | Allocate a widget quad, delete when done.
|
| DtPickableTriangle * | allocatePickableTriangle () |
| | Allocate a widget quad, delete when done.
|
| DtPickableLine * | allocatePickableLine () |
| | Allocate a widget quad, delete when done.
|
| void | pick (const MousePickRecord &rec, int w, int h, bool geocentric, double cameraPosition[3]=0, double cameraMatrix[16]=0) |
| | Pick at (int x, int y); As picking can be slow, start your pick, after updates but before rendering.
|
| const DtPickableWidget * | findWidgetFromLastPick () const |
| | Attempt to get the widget from the last pick.
|
| bool | signalEvents () |
| | Done during the update phase.
|
| void | clearEvents () |
| | Clear any pending events.
|
Protected Types |
typedef boost::unordered_map
< unsigned int,
DtPickableWidget * > | WidgetIdMap |
Protected Member Functions |
| DtPickableWidget * | calculateWidgetFromLastPick () |
| | Get the widget at last pick.
|
| void | debugRender () |
| DtQuad * | allocateQuad () |
| | Allocate a widget quad, delete when done.
|
| DtLineSegment * | allocateLine () |
| | Allocate a widget quad, delete when done.
|
| DtTriangleProxy * | allocateTriangle () |
| | Allocate a triangle.
|
| unsigned int | widgetCreated (DtPickableWidget *) |
| | Called when a widget is created.
|
| void | widgetToBeDeleted (DtPickableWidget *) |
| | Called when a widget is to be deleted.
|
| bool | allocateResources () |
Protected Attributes |
| DtOverlayResourceProvider & | myProvider |
| DtFrameBufferObject * | myFrameBuffer |
| DtPixelBufferObject * | myPixelBuffer |
| DtTextureObject * | mySampleTexture |
| DtQuadRenderer * | myQuadRenderer |
| DtLineRenderer * | myLineRenderer |
| DtTriangleRenderer * | myTriangleRenderer |
| int | myDesiredWidth |
| int | myDesiredHeight |
| bool | myPendingEventFlag |
| MousePickRecord | myPendingEvent |
| DtPickableWidget * | myMouseFocusWidget |
| WidgetIdMap | myWidgetIds |
| unsigned int | myFreeId |
Friends |
| class | DtPickableWidget |
| class | DtPickableQuad |
| class | DtPickableLine |
| class | DtPickableTriangle |
The picker class which allocates and does picking operatings on widgets.