vrecko
virtual reality framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
APMenu::MenuItem Class Referenceabstract

#include <DynamicMenu.h>

Inheritance diagram for APMenu::MenuItem:
DynTreeNode< MenuItem > vrecko::BaseClass APMenu::MenuItemNull APMenu::MenuItemText APMenu::MenuItemSlider

Public Member Functions

 MenuItem (DynamicMenu *_owner)
 
virtual MenuItemcreateNewItem (DynamicMenu *_owner)=0
 
virtual ~MenuItem ()
 
virtual void destroy ()
 
virtual bool loadParametersFromNode (XERCES_CPP_NAMESPACE_QUALIFIER DOMNode *node)
 
void setName (const char *newName)
 
const std::string & getName ()
 
bool setFlags (unsigned long dwNewFlags, bool bForceUpdate=false)
 
unsigned long getFlags ()
 
virtual bool invalidate (bool bIncludeSubItems=false)
 
bool isPointed (osg::Vec3 *projPointerPos)
 
virtual bool canBeClicked ()
 
bool isVisible ()
 
bool isGraphicsCreated ()
 
virtual bool show (unsigned long _dwItemIndex, unsigned long _dwNumItems, osg::Vec3 *_refPoint1, osg::Vec3 *_refPoint2, osg::Vec3 *_refPoint3)
 
virtual void hide (bool bIncludeSubItems=false)
 
virtual bool pointerButtonDown ()
 
virtual bool pointerButtonUp ()
 
virtual bool pointerMove (osg::Vec3 *projPointerPos)
 
virtual bool clicked ()
 
virtual void getClickedString (char *outClickedEventString, size_t bufferSize)
 
virtual bool setAndPlayConfirmationEffect ()
 
virtual bool resetConfirmationEffect ()
 
bool isExpanded ()
 
bool canBeExpanded ()
 
vrecko::EnvironmentObjectgetChildMenuObject ()
 
- Public Member Functions inherited from DynTreeNode< MenuItem >
unsigned long GetDepth ()
 
- Public Member Functions inherited from vrecko::BaseClass
 BaseClass (const char *startingSenderString)
 The main constructor. More...
 
 BaseClass (BaseClass &bc)
 Copy constructor. Probably not really used. More...
 
virtual ~BaseClass ()
 Destructor. More...
 
virtual bool initialize (XERCES_CPP_NAMESPACE_QUALIFIER DOMNode *parameters=NULL)
 Core initialization. More...
 
virtual bool initializeFromString (const char *xmlString)
 Helper method that allows to initialize ability from a XML-formatted string. More...
 
virtual void update (void)
 This method is called periodically in case this instance is registered in Scheduler. More...
 
virtual
XERCES_CPP_NAMESPACE_QUALIFIER
DOMNode
saveXMLParameters (XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument *)
 Save current setting into a XML node. More...
 
bool inputPresent (const std::string &name)
 Returns true if input pin (not request inputpin ) with given name is present. More...
 
bool outputPresent (const std::string &name)
 Returns true if output pin (not request output pin) with given name is present. More...
 
void addInputPin (InputPinBase *pin)
 Adds an input pin. More...
 
void removeInputPin (InputPinBase *pin)
 Removes an input pin. More...
 
void addOutputPin (OutputPinBase *pin)
 Adds an output pin. More...
 
void removeOutputPin (OutputPinBase *pin)
 Removes and output pin. More...
 
void addRequestInputPin (RequestInputPinBase *pin)
 Adds a request input pin. More...
 
void removeRequestInputPin (RequestInputPinBase *pin)
 Removes a request input pin. More...
 
void addRequestOutputPin (RequestOutputPinBase *pin)
 Adds a request output pin. More...
 
void removeRequestOutputPin (RequestOutputPinBase *pin)
 Removes a request output pin. More...
 
bool addNotification (BaseClass *receiver, unsigned long notificationTypes)
 Registers an observer that will be notified if a specific change occurs. More...
 
bool removeNotification (BaseClass *receiver, unsigned long notificationTypes=NOTIFICATION_ALL)
 Unregisters a previously registered observer. More...
 
virtual void processEvent (const std::string &input_name, VreckoMessage *pMessage)
 Internal method for processing the events. More...
 
virtual VreckoMessageprocessRequest (const std::string &request_input_name, VreckoMessage *pMessage)
 Internal method for processing the requests. More...
 
virtual const std::string & getSenderString (void)
 Returns the sender (or receiver) identification string. More...
 
void reportError (const std::string &error)
 Print error message. More...
 
void setPriority (long int pr)
 Sets the priority. (Possible problems - read the full description for more info) More...
 
long int getPriority (void) const
 Returns current object priority. More...
 
void setAttribute (const std::string &attr_name, int attr_value)
 Sets an attribute value. More...
 
int getAttribute (const std::string &attr_name)
 Returns attribute value. More...
 
int getAttribute (const char *attr_name)
 Returns attribute value. More...
 
void deleteAttribute (const std::string &attr_name)
 Delete an attribute. More...
 
void setSceneFile (const std::string &sceneFileName)
 Set the name of the file this component was in (and possibly will be saved to). More...
 
const std::string & getSceneFile () const
 Get the name of the file this component was in. More...
 
virtual void preInitialize (void)
 OBSOLETE METHOD, kept for backwards compatibility. More...
 
virtual void postInitialize (void)
 OBSOLETE METHOD, kept for backwards compatibility. More...
 
virtual bool loadXMLParameters (XERCES_CPP_NAMESPACE_QUALIFIER DOMNode *)
 OBSOLETE METHOD, kept for backwards compatibility. More...
 
virtual bool loadXMLParameters (const char *xmlString)
 OBSOLETE METHOD, kept for backwards compatibility. More...
 
InputPinBasegetInputPin (const char *strName)
 Returns pointer to an input pin with specified name. More...
 
OutputPinBasegetOutputPin (const char *strName)
 Returns pointer to an output pin with specified name. More...
 
RequestInputPinBasegetRequestInputPin (const char *strName)
 Returns pointer to an request input pin with specified name. More...
 
RequestOutputPinBasegetRequestOutputPin (const char *strName)
 Returns pointer to an input pin with specified name. More...
 

Protected Member Functions

bool createGraphics ()
 
bool destroyGraphics ()
 
float menuRadial_CalcItemAngle (int _iItemIndex)
 
unsigned long menuBoxes_CalcItemDisplayIndex ()
 
virtual bool createGraphicsCore ()
 
virtual bool destroyGraphicsCore ()
 
virtual bool showGraphicsAtPoint ()
 
virtual bool hideGraphics ()
 
virtual bool setFlagsCore (unsigned long dwOldFlags, unsigned long dwNewFlags)
 
virtual const osg::BoundingBox & getInnerBoundingBox ()=0
 
virtual bool addInputOutputs ()
 
virtual bool removeInputOutputs ()
 
virtual int processNotification (BaseClass *sender, unsigned long notificationType, void *notificationData)
 Process an incoming notification. More...
 
- Protected Member Functions inherited from vrecko::BaseClass
bool sendNotifications (unsigned long notificationType, void *notificationData)
 
IOPinBasefindPinInList (const char *strName, PinList *pinList)
 Internal method to find a given pin in a given list. More...
 

Protected Attributes

DynamicMenuowner
 
int pos
 
bool bIsVisible
 
bool bGraphicsCreated
 
unsigned long dwFlags
 
unsigned long dwItemIndex
 
unsigned long dwNumItems
 
osg::Vec3 refPoint1
 
osg::Vec3 refPoint2
 
osg::Vec3 refPoint3
 
float itemSize
 
float itemSize2
 
osg::Vec4 color
 
std::string name
 
osg::ref_ptr
< osg::MatrixTransform > 
mainTransform
 
osg::ref_ptr
< vrecko::EnvironmentObject
childMenuObject
 
osg::ref_ptr
< vrecko::EnvironmentObject
osgTransform
 
osg::ref_ptr< osg::Geode > osgGeode
 
APObjectUtils::AnimatorchildMenuAnimator
 
bool bConfirmationEndedConnectionCreated
 
osg::ref_ptr< osg::Box > shapeBox
 
osg::ref_ptr< osg::ShapeDrawable > shapeDraw
 
osg::ref_ptr< osgQ::QSectionshapeSection
 
osg::ref_ptr
< osgQ::QShapeDrawable
qshapeDraw
 
- Protected Attributes inherited from vrecko::BaseClass
AttributeMap attribute
 
MTReadWriteLock attributeLock
 
std::string senderString
 
MTLock notificationsLock
 
std::vector
< NOTIFICATION_DESCRIPTION
notifications
 
long int priority
 
const std::string * sceneFile
 
PinList inputPinsList
 
PinList outputPinsList
 
PinList requestInputPinsList
 
PinList requestOutputPinsList
 

Additional Inherited Members

- Public Types inherited from vrecko::BaseClass
enum  NotificationTypes {
  NOTIFICATION_DELETE_CLASS = 1, NOTIFICATION_EO_REGISTERING = 2, NOTIFICATION_EO_UNREGISTERING = 4, NOTIFICATION_PROGRAM_TERMINATION = 8,
  NOTIFICATION_ALL = 0xFFFFFFFF
}
 
- Public Attributes inherited from DynTreeNode< MenuItem >
MenuItem * lpParent
 
MenuItem * lpChild
 
MenuItem * lpNext
 
MenuItem * lpPrev
 
DynamicTree< MenuItem > * tree
 
- Protected Types inherited from vrecko::BaseClass
typedef std::map< std::string,
int > 
AttributeMap
 Attributes. More...
 
typedef std::vector
< osg::ref_ptr< IOPinBase > > 
PinList
 

Constructor & Destructor Documentation

APMenu::MenuItem::MenuItem ( DynamicMenu _owner)
APMenu::MenuItem::~MenuItem ( )
virtual

Member Function Documentation

bool APMenu::MenuItem::addInputOutputs ( )
protectedvirtual
virtual bool APMenu::MenuItem::canBeClicked ( )
inlinevirtual
bool APMenu::MenuItem::canBeExpanded ( )
inline
virtual bool APMenu::MenuItem::clicked ( )
inlinevirtual
bool APMenu::MenuItem::createGraphics ( )
protected
bool APMenu::MenuItem::createGraphicsCore ( )
protectedvirtual
virtual MenuItem* APMenu::MenuItem::createNewItem ( DynamicMenu _owner)
pure virtual
void APMenu::MenuItem::destroy ( )
virtual
bool APMenu::MenuItem::destroyGraphics ( )
protected
bool APMenu::MenuItem::destroyGraphicsCore ( )
protectedvirtual
vrecko::EnvironmentObject* APMenu::MenuItem::getChildMenuObject ( )
inline
virtual void APMenu::MenuItem::getClickedString ( char *  outClickedEventString,
size_t  bufferSize 
)
inlinevirtual

Reimplemented in APMenu::MenuItemSlider.

unsigned long APMenu::MenuItem::getFlags ( )
inline
virtual const osg::BoundingBox& APMenu::MenuItem::getInnerBoundingBox ( )
protectedpure virtual
const std::string& APMenu::MenuItem::getName ( void  )
inline
void APMenu::MenuItem::hide ( bool  bIncludeSubItems = false)
virtual
bool APMenu::MenuItem::hideGraphics ( )
protectedvirtual

Reimplemented in APMenu::MenuItemNull.

bool APMenu::MenuItem::invalidate ( bool  bIncludeSubItems = false)
virtual
bool APMenu::MenuItem::isExpanded ( )
inline
bool APMenu::MenuItem::isGraphicsCreated ( )
inline
bool APMenu::MenuItem::isPointed ( osg::Vec3 *  projPointerPos)
bool APMenu::MenuItem::isVisible ( )
inline
bool APMenu::MenuItem::loadParametersFromNode ( XERCES_CPP_NAMESPACE_QUALIFIER DOMNode *  node)
virtual
unsigned long APMenu::MenuItem::menuBoxes_CalcItemDisplayIndex ( )
protected
float APMenu::MenuItem::menuRadial_CalcItemAngle ( int  _iItemIndex)
protected
virtual bool APMenu::MenuItem::pointerButtonDown ( )
inlinevirtual

Reimplemented in APMenu::MenuItemSlider.

virtual bool APMenu::MenuItem::pointerButtonUp ( )
inlinevirtual

Reimplemented in APMenu::MenuItemSlider.

virtual bool APMenu::MenuItem::pointerMove ( osg::Vec3 *  projPointerPos)
inlinevirtual

Reimplemented in APMenu::MenuItemSlider.

int APMenu::MenuItem::processNotification ( BaseClass sender,
unsigned long  notificationType,
void *  notificationData 
)
protectedvirtual

Process an incoming notification.

Override this method to react to a registered notification (see addNotification() method).

Parameters
sender(BaseClass *) The sender of the notification
notificationType(unsigned long) Type of the notification, only ONE bit will be set
notificationData(void *) Appropriate notification data, dependent on the notificationType.
Returns
(int) Should return 0, other values are reserved for future use.

Reimplemented from vrecko::BaseClass.

bool APMenu::MenuItem::removeInputOutputs ( )
protectedvirtual
bool APMenu::MenuItem::resetConfirmationEffect ( )
virtual
bool APMenu::MenuItem::setAndPlayConfirmationEffect ( )
virtual
bool APMenu::MenuItem::setFlags ( unsigned long  dwNewFlags,
bool  bForceUpdate = false 
)
bool APMenu::MenuItem::setFlagsCore ( unsigned long  dwOldFlags,
unsigned long  dwNewFlags 
)
protectedvirtual
void APMenu::MenuItem::setName ( const char *  newName)
inline
bool APMenu::MenuItem::show ( unsigned long  _dwItemIndex,
unsigned long  _dwNumItems,
osg::Vec3 *  _refPoint1,
osg::Vec3 *  _refPoint2,
osg::Vec3 *  _refPoint3 
)
virtual
bool APMenu::MenuItem::showGraphicsAtPoint ( )
protectedvirtual

Member Data Documentation

bool APMenu::MenuItem::bConfirmationEndedConnectionCreated
protected
bool APMenu::MenuItem::bGraphicsCreated
protected
bool APMenu::MenuItem::bIsVisible
protected
APObjectUtils::Animator* APMenu::MenuItem::childMenuAnimator
protected
osg::ref_ptr<vrecko::EnvironmentObject> APMenu::MenuItem::childMenuObject
protected
osg::Vec4 APMenu::MenuItem::color
protected
unsigned long APMenu::MenuItem::dwFlags
protected
unsigned long APMenu::MenuItem::dwItemIndex
protected
unsigned long APMenu::MenuItem::dwNumItems
protected
float APMenu::MenuItem::itemSize
protected
float APMenu::MenuItem::itemSize2
protected
osg::ref_ptr<osg::MatrixTransform> APMenu::MenuItem::mainTransform
protected
std::string APMenu::MenuItem::name
protected
osg::ref_ptr<osg::Geode> APMenu::MenuItem::osgGeode
protected
osg::ref_ptr<vrecko::EnvironmentObject> APMenu::MenuItem::osgTransform
protected
DynamicMenu* APMenu::MenuItem::owner
protected
int APMenu::MenuItem::pos
protected
osg::ref_ptr<osgQ::QShapeDrawable> APMenu::MenuItem::qshapeDraw
protected
osg::Vec3 APMenu::MenuItem::refPoint1
protected
osg::Vec3 APMenu::MenuItem::refPoint2
protected
osg::Vec3 APMenu::MenuItem::refPoint3
protected
osg::ref_ptr<osg::Box> APMenu::MenuItem::shapeBox
protected
osg::ref_ptr<osg::ShapeDrawable> APMenu::MenuItem::shapeDraw
protected
osg::ref_ptr<osgQ::QSection> APMenu::MenuItem::shapeSection
protected

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