Free Electron
Public Member Functions | Private Member Functions | Private Attributes | List of all members
fe::ext::PickPoint Class Reference

Interactive specification of a 3D point. More...

#include <PickPoint.h>

Inheritance diagram for fe::ext::PickPoint:
Inheritance graph
[legend]

Public Member Functions

virtual void handle (Record &record)
 
virtual SpatialVectorpoint (const WindowEvent::Mask &mask)
 Get the point matching a window mask. More...
 
virtual const SpatialVectorpoint (const WindowEvent::Mask &mask) const
 
virtual U32 flags (void) const
 
virtual void setView (sp< ViewI > spViewI)
 Associate with a ViewI for anything screen-based. More...
 
virtual void drawFeedback (sp< DrawI > spDrawI) const
 Render the point in some fashion. More...
 
- Public Member Functions inherited from fe::ext::HandlerI
virtual void handleBind (sp< SignalerI > spSignalerI, sp< Layout > spLayout)
 
virtual void handleSignal (Record &signal, sp< SignalerI > spSignalerI)
 
- Public Member Functions inherited from fe::Component
const Stringname (void) const
 Return the components chosen name. More...
 
const String verboseName (void) const
 Return the annotated chosen name. More...
 
void setName (const String &name)
 Rename the component to anything you want. More...
 
hp< Registryregistry (void) const
 Get the Registry that created this component. More...
 
void adjoin (sp< Component > spComponent)
 Tie this component's lifetime to another. More...
 
sp< Componentcreate (const String &implementation, BWORD quiet=FALSE) const
 Convienience function to registry()->create() More...
 
void disjoin (void)
 Untie component from Hub, if connected. More...
 
String factoryName (void)
 
void setLibrary (sp< Library > spLibrary)
 Store a reference to the library used to instantiate this component. More...
 
sp< Librarylibrary (void)
 Get the library that created the component. More...
 
void setFactoryIndex (I32 a_factoryIndex)
 Set the library's factory index. More...
 
I32 factoryIndex (void)
 Get the library's factory index. More...
 
void setSingleton (BWORD set)
 Specify whether component is a singleton. More...
 
BWORD isSingleton (void)
 Return whether component is a singleton. More...
 
virtual void acquire (void)
 Specialized reference increment. More...
 
virtual void release (void)
 Specialized reference decrement. More...
 
- Public Member Functions inherited from fe::Handled< Component >
const hp< Component > & getHandle (void) const
 Get a safe handle to this object. More...
 
- Public Member Functions inherited from fe::Protectable
virtual I32 protection (void) const
 
virtual void protect (void)
 
virtual void unprotect (void)
 
virtual Protectableclone (Protectable *pInstance=NULL)
 
- Public Member Functions inherited from fe::Counted
virtual void acquire (int &rCount)
 Increment the reference count (and get the count) More...
 
virtual void abandon (void)
 Decrement the reference count. More...
 
int count (void) const
 Return the count of references. More...
 
void setName (const String &)
 
void trackReference (void *pReference, String what)
 
void untrackReference (void *pReference)
 
void registerRegion (void *pT, U32 bytes)
 
- Public Member Functions inherited from fe::Initialized
void initializeAll (void)
 
void setActive (bool a_active)
 

Private Member Functions

U32 itemIndex (const WindowEvent::Mask &mask) const
 

Private Attributes

WindowEvent m_event
 
sp< ViewIm_spViewI
 
I32 m_mouseState [2]
 
U32 m_flags
 
Real m_zValue
 
SpatialVector m_feedback
 
SpatialVector m_point [3][2]
 
sp< DrawModem_spHalo
 

Additional Inherited Members

- Public Types inherited from fe::ext::PointI
enum  Flags {
  e_flagNull = 0x00,
  e_flagHold = 0x01,
  e_flagHold2 = 0x02,
  e_flagHold3 = 0x04
}
 
- Static Public Member Functions inherited from fe::Counted
static String reportTracker (void)
 
static U32 trackerCount (void)
 
- Protected Types inherited from fe::Initialized
typedef void(* InitializeFunction) (Initialized *)
 
- Protected Member Functions inherited from fe::Handled< Component >
void abandonHandle (void)
 
- Protected Member Functions inherited from fe::Counted
int releaseInternal (void)
 Decrement the reference count. More...
 
void suppressReport (void)
 
- Protected Member Functions inherited from fe::Initialized
void addInitializer (InitializeFunction function)
 

Detailed Description

Interactive specification of a 3D point.

PickPoint expects WindowEvent, but it checks safely.

The fourth element is non-zero when the point is valid.

Member Function Documentation

◆ drawFeedback()

void fe::ext::PickPoint::drawFeedback ( sp< DrawI spDrawI) const
virtual

Render the point in some fashion.

Implements fe::ext::PointI.

◆ point()

SpatialVector & fe::ext::PickPoint::point ( const WindowEvent::Mask &  mask)
virtual

Get the point matching a window mask.

The implementation may distinguish different points based on the mask with its own criteria. The only restriction is that every mask is associated for some point.

An example would be six available points: three mouse buttons, each with a press and release point.

Implements fe::ext::PointI.

References fe::ext::PerspectiveViewer::render().

◆ setView()

virtual void fe::ext::PickPoint::setView ( sp< ViewI spViewI)
inlinevirtual

Associate with a ViewI for anything screen-based.

Note that there is no assumption related to the ViewI used by the DrawI in draw(), which can be different.

Implements fe::ext::PointI.


The documentation for this class was generated from the following files: