OpenCOVER
Public Member Functions | Protected Attributes | List of all members
vrui::coPanel Class Reference

#include <coPanel.h>

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

Public Member Functions

 coPanel (coPanelGeometry *geom)
 
virtual ~coPanel ()
 
virtual int hit (vruiHit *hit)
 
virtual void miss ()
 
void resize ()
 
virtual void addElement (coUIElement *element)
 Appends a child to this container. More...
 
void hide (coUIElement *element)
 
void show (coUIElement *element)
 
virtual void showElement (coUIElement *element)
 Adds the specified element to the scenegraph. More...
 
void setPos (float x, float y, float z=0.0f)
 
virtual float getWidth () const
 Returns element width. More...
 
virtual float getHeight () const
 Returns element height. More...
 
virtual float getXpos () const
 Returns element x position. More...
 
virtual float getYpos () const
 Returns element y position. More...
 
virtual float getZpos () const
 
virtual void setScale (float s)
 
virtual vruiTransformNodegetDCS ()
 
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...
 
- Public Member Functions inherited from vrui::coAction
 coAction ()
 Constructor. More...
 
virtual ~coAction ()
 Destructor. More...
 
virtual int hit (vruiHit *hit)=0
 
virtual void miss ()
 
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::coUIContainer
 coUIContainer ()
 
virtual ~coUIContainer ()
 
virtual void setEnabled (bool enabled)
 
virtual void setHighlighted (bool highlighted)
 
virtual void resizeToParent (float x, float y, float z, bool shrink=true)
 
virtual void shrinkToMin ()
 Set element location in space. More...
 
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 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...
 
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...
 
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 createGeometry ()
 
virtual void setParent (coUIContainer *)
 
virtual coUIContainergetParent ()
 
virtual void setEnabled (bool enabled)
 
virtual void setHighlighted (bool highlighted)
 
virtual void setVisible (bool visible)
 
virtual bool isEnabled () const
 
virtual bool isHighlighted () const
 
virtual bool isVisible () const
 
virtual float getWidth () const =0
 Returns element width. More...
 
virtual float getHeight () const =0
 Returns element height. More...
 
virtual float getDepth () const
 
virtual float getXpos () const =0
 Returns element x position. More...
 
virtual float getYpos () const =0
 Returns element y position. More...
 
virtual float getZpos () const
 
virtual void childResized (bool shrink=true)
 
virtual void resizeToParent (float, float, float, bool shrink=true)
 
virtual void shrinkToMin ()
 Set element location in space. More...
 
virtual void setPos (float, float, float)=0
 
virtual void setSize (float, float, float)
 
virtual void setSize (float)
 
virtual float getResizePref ()
 
virtual void setUserData (coUIUserData *)
 
virtual coUIUserDatagetUserData () const
 
virtual vruiTransformNodegetDCS ()
 
virtual vruiUIElementProvidergetUIElementProvider () const
 
virtual void setAttachment (int)
 sets the attachment border More...
 
virtual int getAttachment () const
 returns the attachment border More...
 
void setUniqueName (const char *)
 
const char * getUniqueName () const
 
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...
 

Protected Attributes

vruiTransformNodemyDCS
 
vruiTransformNodemyPosDCS
 Transformation of the panel geometry. More...
 
vruiTransformNodemyChildDCS
 Children origin. More...
 
float scale
 scale factor, scales all children More...
 
float myX
 Panel position X. More...
 
float myY
 Panel position Y. More...
 
float myZ
 Panel position Z. More...
 
float myWidth
 Panel width. More...
 
float myHeight
 Panel height. More...
 
float contentWidth
 Content width. More...
 
float contentHeight
 Content height. More...
 
coPanelGeometrymyGeometry
 Panel geometry. More...
 
- Protected Attributes inherited from vrui::coAction
std::string actionName
 
- 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
 

Additional Inherited Members

- Public Types inherited from vrui::coAction
enum  Result { ACTION_DONE = 0x00 , ACTION_CALL_ON_MISS = 0x01 , ACTION_UNDEF = 0x02 }
 
- 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 , BACKGROUND ,
  NUM_MATERIALS
}
 Color definitions, to be used whenever a material is needed. More...
 
enum  {
  LEFT = 0 , TOP , RIGHT , BOTTOM ,
  REPLACE
}
 
- Static Public Member Functions inherited from vrui::coUIElement
static vruiMatrixgetMatrixFromPositionHprScale (float x, float y, float z, float h, float p, float r, float scale)
 
- 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
 
- Protected Member Functions inherited from vrui::coUIContainer
virtual void resizeGeometry ()
 
- Protected Member Functions inherited from vrui::coUIElement
virtual void resizeGeometry ()
 
virtual const vruiMatrixgetTransformMatrix ()
 

Detailed Description

This class provides background panel for GUI elements. It can contain mutiple GUI elements, it gows to accommodate all children but does not automatically shrink to fit, if a child is removed. This class does not provide any geometry, the actual geometry is defined in a another class,

See also
coPanelGeometry

Constructor & Destructor Documentation

◆ coPanel()

vrui::coPanel::coPanel ( coPanelGeometry geom)

◆ ~coPanel()

virtual vrui::coPanel::~coPanel ( )
virtual

Member Function Documentation

◆ addElement()

virtual void vrui::coPanel::addElement ( coUIElement element)
virtual

Appends a child to this container.

Reimplemented from vrui::coUIContainer.

◆ getClassName()

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

get the Element's classname

Reimplemented from vrui::coUIContainer.

Reimplemented in vrui::coProgressBar.

◆ getDCS()

virtual vruiTransformNode * vrui::coPanel::getDCS ( )
virtual

Reimplemented from vrui::coUIElement.

◆ getHeight()

virtual float vrui::coPanel::getHeight ( ) const
inlinevirtual

Returns element height.

Implements vrui::coUIElement.

◆ getWidth()

virtual float vrui::coPanel::getWidth ( ) const
inlinevirtual

Returns element width.

Implements vrui::coUIElement.

◆ getXpos()

virtual float vrui::coPanel::getXpos ( ) const
inlinevirtual

Returns element x position.

Implements vrui::coUIElement.

◆ getYpos()

virtual float vrui::coPanel::getYpos ( ) const
inlinevirtual

Returns element y position.

Implements vrui::coUIElement.

◆ getZpos()

virtual float vrui::coPanel::getZpos ( ) const
inlinevirtual

Reimplemented from vrui::coUIElement.

◆ hide()

void vrui::coPanel::hide ( coUIElement element)

◆ hit()

virtual int vrui::coPanel::hit ( vruiHit hit)
virtual

hit is called whenever the node, or any node underneath the node with this action is intersected return ACTION_CALL_ON_MISS if you want miss to be called otherwise return ACTION_DONE

Implements vrui::coAction.

◆ isOfClassName()

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

check if the Element or any ancestor is this classname

Reimplemented from vrui::coUIContainer.

Reimplemented in vrui::coProgressBar.

◆ miss()

virtual void vrui::coPanel::miss ( )
virtual

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

Reimplemented from vrui::coAction.

◆ resize()

void vrui::coPanel::resize ( )

◆ setPos()

void vrui::coPanel::setPos ( float  x,
float  y,
float  z = 0.0f 
)
virtual

Implements vrui::coUIElement.

◆ setScale()

virtual void vrui::coPanel::setScale ( float  s)
virtual

◆ show()

void vrui::coPanel::show ( coUIElement element)

◆ showElement()

virtual void vrui::coPanel::showElement ( coUIElement element)
virtual

Adds the specified element to the scenegraph.

Reimplemented from vrui::coUIContainer.

Member Data Documentation

◆ contentHeight

float vrui::coPanel::contentHeight
protected

Content height.

◆ contentWidth

float vrui::coPanel::contentWidth
protected

Content width.

◆ myChildDCS

vruiTransformNode* vrui::coPanel::myChildDCS
protected

Children origin.

◆ myDCS

vruiTransformNode* vrui::coPanel::myDCS
protected

◆ myGeometry

coPanelGeometry* vrui::coPanel::myGeometry
protected

Panel geometry.

◆ myHeight

float vrui::coPanel::myHeight
protected

Panel height.

◆ myPosDCS

vruiTransformNode* vrui::coPanel::myPosDCS
protected

Transformation of the panel geometry.

◆ myWidth

float vrui::coPanel::myWidth
protected

Panel width.

◆ myX

float vrui::coPanel::myX
protected

Panel position X.

◆ myY

float vrui::coPanel::myY
protected

Panel position Y.

◆ myZ

float vrui::coPanel::myZ
protected

Panel position Z.

◆ scale

float vrui::coPanel::scale
protected

scale factor, scales all children


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