OpenCOVER
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vrui::coRowMenuHandle Class Reference

Handles 'normal' Menus. More...

#include <coRowMenuHandle.h>

Inheritance diagram for vrui::coRowMenuHandle:
Inheritance graph
[legend]
Collaboration diagram for vrui::coRowMenuHandle:
Collaboration graph
[legend]

Public Member Functions

 coRowMenuHandle (const std::string &title, coMenu *menu)
 
virtual ~coRowMenuHandle ()
 
virtual void setTransformMatrix (vruiMatrix *matrix)
 
virtual void setTransformMatrix (vruiMatrix *matrix, float scale)
 
virtual void setScale (float scale)
 
virtual float getScale () const
 
virtual bool update ()
 
virtual void resizeToParent (float, float, float, bool shrink=true)
 
virtual int hit (vruiHit *hit)
 
virtual void miss ()
 
virtual void highlight (bool highlight)
 
virtual void shrinkToMin ()
 Set element location in space. More...
 
virtual void createGeometry ()
 
virtual const char * getClassName () const
 get the Element's classname More...
 
virtual bool isOfClassName (const char *) const
 check if the Element or any ancestor is this classname More...
 
virtual void updateTitle (const char *newTitle)
 update the title More...
 
bool wasMoved () const
 
- Public Member Functions inherited from vrui::coRowContainer
 coRowContainer (Orientation orientation=HORIZONTAL)
 
virtual ~coRowContainer ()
 
virtual void addElement (coUIElement *element)
 Appends a child to this container. More...
 
virtual void removeElement (coUIElement *element)
 Removes a child from this container. More...
 
virtual void insertElement (coUIElement *element, int pos)
 
void hide (coUIElement *element)
 
void show (coUIElement *element)
 
void setPos (float x, float y, float z=0.0f)
 
void setOrientation (Orientation orientation)
 
int getOrientation () const
 
void setAlignment (int alignment)
 
void setHgap (float g)
 
void setVgap (float g)
 
void setDgap (float g)
 
vruiTransformNodegetDCS ()
 
virtual float getWidth () const
 Returns element width. More...
 
virtual float getHeight () const
 Returns element height. More...
 
virtual float getDepth () const
 
virtual float getXpos () const
 Returns element x position. More...
 
virtual float getYpos () const
 Returns element y position. More...
 
virtual float getZpos () const
 
virtual float getVgap () const
 
virtual float getHgap () const
 
virtual float getDgap () const
 
virtual void setAttachment (int attachment)
 sets the attachment border More...
 
virtual int getAttachment () const
 returns the attachment border More...
 
- Public Member Functions inherited from vrui::coUIContainer
 coUIContainer ()
 
virtual ~coUIContainer ()
 
virtual void setEnabled (bool enabled)
 
virtual void setHighlighted (bool highlighted)
 
virtual void removeLastElement ()
 Removes a child from this container. More...
 
virtual void showElement (coUIElement *element)
 Adds the specified element to the scenegraph. More...
 
void setXAlignment (int a)
 set the alignment in X direction of the children More...
 
void setYAlignment (int a)
 set the alignment in Y direction of the children More...
 
void setZAlignment (int a)
 set the alignment in Z direction of the children More...
 
float getMaxH () const
 maximum size in H direction More...
 
float getMaxW () const
 maximum size in W direction More...
 
float getMaxD () const
 maximum size in D direction More...
 
float getSumH () const
 sum of sizes in H direction More...
 
float getSumW () const
 sum of sizes in W direction More...
 
float getSumD () const
 sum of sizes in D direction More...
 
int getSize ()
 
- Public Member Functions inherited from vrui::coUIElement
 coUIElement ()
 
virtual ~coUIElement ()
 
virtual void setParent (coUIContainer *)
 
virtual coUIContainergetParent ()
 
virtual void setVisible (bool visible)
 
virtual bool isEnabled () const
 
virtual bool isHighlighted () const
 
virtual bool isVisible () const
 
virtual void childResized (bool shrink=true)
 
virtual void setSize (float, float, float)
 
virtual void setSize (float)
 
virtual float getResizePref ()
 
virtual void setUserData (coUIUserData *)
 
virtual coUIUserDatagetUserData () const
 
virtual vruiUIElementProvidergetUIElementProvider () const
 
void setUniqueName (const char *)
 
const char * getUniqueName () const
 
- Public Member Functions inherited from vrui::coAction
 coAction ()
 Constructor. More...
 
virtual ~coAction ()
 Destructor. More...
 
void setFrame (unsigned int frame)
 INTERNAL set the framecounter (used to produce the miss call) More...
 
unsigned int getFrame () const
 INTERNAL get the framecounter (used to produce the miss call) More...
 
void setNode (vruiNode *)
 INTERNAL set the node this action belongs to. More...
 
void addChild (coAction *)
 INTERNAL add a child action. More...
 
virtual int hitAll (vruiHit *hit)
 INTERNAL same as miss/hit, but do it for all children as well. More...
 
virtual void missAll ()
 INTERNAL same as miss/hit, but do it for all children as well. More...
 
- Public Member Functions inherited from vrui::coUpdateable
 coUpdateable ()
 Constructor. More...
 
virtual ~coUpdateable ()
 Destructor. More...
 
- Public Member Functions inherited from vrui::coButtonActor
virtual ~coButtonActor ()
 

Protected Member Functions

virtual void buttonEvent (coButton *button)
 
- Protected Member Functions inherited from vrui::coRowContainer
float getExtW () const
 get my current extension in given direction More...
 
float getExtH () const
 
- Protected Member Functions inherited from vrui::coUIContainer
virtual void resizeGeometry ()
 
- Protected Member Functions inherited from vrui::coUIElement
virtual const vruiMatrixgetTransformMatrix ()
 

Protected Attributes

coMenumyMenu
 pointer to the menue it handles More...
 
coCombinedButtonInteractioninteractionA
 interaction for first button More...
 
coCombinedButtonInteractioninteractionB
 interaction for second button More...
 
coCombinedButtonInteractioninteractionC
 interaction for third button More...
 
bool unregister
 
vruiMatrixstartPosition
 transformation matrix at the beginning of an interaction More...
 
coVector localPickPosition
 point in local menu coordinates where the titlebar was picked More...
 
coVector pickPosition
 point in world coordinates where the titlebar was picked More...
 
vruiMatrixinvStartHandTrans
 inverse transformation of the pointer at the beginning of an interaction More...
 
float lastRoll
 roll angle during the last frame More...
 
float myScale
 the menu size More...
 
- Protected Attributes inherited from vrui::coRowContainer
vruiTransformNodemyDCS
 transformation node to position this container More...
 
float myX
 position and size More...
 
float myY
 
float myZ
 
float myHeight
 
float myWidth
 
float myDepth
 
Orientation orientation
 layout orientation More...
 
int alignment
 alignment of the children More...
 
float Hgap
 Horizontal-, vertical- and depth-gap, default is 5mm for H and Vgap, 0 for Dgap. More...
 
float Vgap
 
float Dgap
 
int attachment
 
- Protected Attributes inherited from vrui::coUIContainer
int xAlignment
 alignment on children in X direction More...
 
int yAlignment
 alignment on children in Y direction More...
 
int zAlignment
 alignment on children in Z direction More...
 
std::list< coUIElement * > elements
 List of children elements. More...
 
float prefWidth
 try to get That high/wide if possible More...
 
float prefHeight
 
- Protected Attributes inherited from vrui::coUIElement
float xScaleFactor
 UI element x axis scale factor. More...
 
float yScaleFactor
 UI element y axis scale factor. More...
 
float zScaleFactor
 UI element z axis scale factor. More...
 
bool enabled
 true if UI element is enabled, false if UI element cannot be used More...
 
bool highlighted
 true if highlighted More...
 
bool visible
 true if UI element is visible, false if not visible but still present in scene tree More...
 
vruiUIElementProvideruiElementProvider
 
- Protected Attributes inherited from vrui::coAction
std::string actionName
 

Additional Inherited Members

- Public Types inherited from vrui::coRowContainer
enum  Orientation { HORIZONTAL = 0, VERTICAL }
 orientation of this container More...
 
- Public Types inherited from vrui::coUIContainer
enum  { CENTER = 0, MIN, MAX, BOTH }
 Alignment specification for children. More...
 
- Public Types inherited from vrui::coUIElement
enum  Material {
  RED = 0, GREEN, BLUE, YELLOW,
  GREY, WHITE, BLACK, DARK_YELLOW,
  WHITE_NL, ITEM_BACKGROUND_NORMAL, ITEM_BACKGROUND_HIGHLIGHTED, ITEM_BACKGROUND_DISABLED,
  HANDLE_BACKGROUND_NORMAL, HANDLE_BACKGROUND_HIGHLIGHTED, HANDLE_BACKGROUND_DISABLED, NUM_MATERIALS
}
 Color definitions, to be used whenever a material is needed. More...
 
enum  {
  LEFT = 0, TOP, RIGHT, BOTTOM,
  REPLACE
}
 
- Public Types inherited from vrui::coAction
enum  Result { ACTION_DONE = 0x00, ACTION_CALL_ON_MISS = 0x01, ACTION_UNDEF = 0x02 }
 
- Public Attributes inherited from vrui::coUIContainer
enum vrui::coUIContainer:: { ... }  alignments
 Alignment specification for children. More...
 
- Public Attributes inherited from vrui::coUIElement
enum vrui::coUIElement:: { ... }  Attachments
 

Detailed Description

Handles 'normal' Menus.

Constructor & Destructor Documentation

vrui::coRowMenuHandle::coRowMenuHandle ( const std::string &  title,
coMenu menu 
)
virtual vrui::coRowMenuHandle::~coRowMenuHandle ( )
virtual

Member Function Documentation

virtual void vrui::coRowMenuHandle::buttonEvent ( coButton button)
protectedvirtual

Implements vrui::coButtonActor.

virtual void vrui::coRowMenuHandle::createGeometry ( )
inlinevirtual

Reimplemented from vrui::coUIElement.

virtual const char* vrui::coRowMenuHandle::getClassName ( ) const
virtual

get the Element's classname

Reimplemented from vrui::coRowContainer.

virtual float vrui::coRowMenuHandle::getScale ( ) const
virtual
virtual void vrui::coRowMenuHandle::highlight ( bool  highlight)
virtual
virtual int vrui::coRowMenuHandle::hit ( vruiHit hit)
virtual

hit is called whenever the button with this action is intersected return ACTION_CALL_ON_MISS if you want miss to be called otherwise return ACTION_DONE

Implements vrui::coAction.

virtual bool vrui::coRowMenuHandle::isOfClassName ( const char *  ) const
virtual

check if the Element or any ancestor is this classname

Reimplemented from vrui::coRowContainer.

virtual void vrui::coRowMenuHandle::miss ( )
virtual

miss is called once after a hit, if the node is not intersected anymore

Reimplemented from vrui::coAction.

virtual void vrui::coRowMenuHandle::resizeToParent ( float  ,
float  ,
float  ,
bool  shrink = true 
)
virtual

Reimplemented from vrui::coRowContainer.

virtual void vrui::coRowMenuHandle::setScale ( float  scale)
virtual
virtual void vrui::coRowMenuHandle::setTransformMatrix ( vruiMatrix matrix)
virtual
virtual void vrui::coRowMenuHandle::setTransformMatrix ( vruiMatrix matrix,
float  scale 
)
virtual
virtual void vrui::coRowMenuHandle::shrinkToMin ( )
virtual

Set element location in space.

Reimplemented from vrui::coRowContainer.

virtual bool vrui::coRowMenuHandle::update ( )
virtual

this method is called once per frame as long as it returns true. as soon as it returns false, it is removed from the update manager and not called again. the update method is called prior to preFrame();

Implements vrui::coUpdateable.

virtual void vrui::coRowMenuHandle::updateTitle ( const char *  newTitle)
virtual

update the title

bool vrui::coRowMenuHandle::wasMoved ( ) const

Member Data Documentation

coCombinedButtonInteraction* vrui::coRowMenuHandle::interactionA
protected

interaction for first button

coCombinedButtonInteraction* vrui::coRowMenuHandle::interactionB
protected

interaction for second button

coCombinedButtonInteraction* vrui::coRowMenuHandle::interactionC
protected

interaction for third button

vruiMatrix* vrui::coRowMenuHandle::invStartHandTrans
protected

inverse transformation of the pointer at the beginning of an interaction

float vrui::coRowMenuHandle::lastRoll
protected

roll angle during the last frame

coVector vrui::coRowMenuHandle::localPickPosition
protected

point in local menu coordinates where the titlebar was picked

coMenu* vrui::coRowMenuHandle::myMenu
protected

pointer to the menue it handles

float vrui::coRowMenuHandle::myScale
protected

the menu size

coVector vrui::coRowMenuHandle::pickPosition
protected

point in world coordinates where the titlebar was picked

vruiMatrix* vrui::coRowMenuHandle::startPosition
protected

transformation matrix at the beginning of an interaction

bool vrui::coRowMenuHandle::unregister
protected

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