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

#include <coValuePoti.h>

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

Public Types

enum  { MAX_SLOPE = 1000 }
 
- Public Types inherited from vrui::coAction
enum  Result { ACTION_DONE = 0x00 , ACTION_CALL_ON_MISS = 0x01 , ACTION_UNDEF = 0x02 }
 
- 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
}
 
- Public Types inherited from vrui::vruiCollabInterface
enum  {
  NONE = 10 , VALUEPOTI = 11 , HSVWHEEL = 12 , PUSHBUTTON = 13 ,
  TOGGLEBUTTON = 14 , FunctionEditor = 15 , PinEditor = 16
}
 

Public Member Functions

 coValuePoti (const std::string &buttonText, coValuePotiActor *actor, const std::string &backgroundTexture, vruiCOIM *cInterfaceManager=0, const std::string &interfaceName="")
 
virtual ~coValuePoti ()
 
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 bool update ()
 
virtual void setValue (float value)
 
virtual void setMin (float min)
 
virtual void setMax (float max)
 
virtual float getValue () const
 
virtual int hit (vruiHit *hit)
 
virtual void miss ()
 
void joystickUp ()
 
void joystickDown ()
 
void setPos (float x, float y, float z=0.0f)
 
void setSize (float size)
 
void setSize (float width, float height, float depth)
 
void setInteger (bool on)
 
void setIncrement (float increment)
 
void setLogarithmic (bool on)
 
void setState (float min, float max, float value, bool isInt, float inc=0.0f)
 
virtual float getMin () const
 
virtual float getMax () const
 
virtual bool isInteger () const
 
virtual bool isDiscrete () const
 
virtual float getIncrement () const
 
virtual bool isLogarithmic () const
 
virtual float getXSize () const
 
virtual float getYSize () const
 
virtual float getZSize () const
 
virtual void setLabelVisible (bool)
 
virtual bool isLabelVisible ()
 
const std::string & getBackgroundTexture () const
 
const std::string & getButtonText () const
 
float discreteValue (float value) 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...
 
- 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::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...
 
- Public Member Functions inherited from vrui::vruiCollabInterface
 vruiCollabInterface (vruiCOIM *manager, const std::string &interfaceName, int iType=NONE)
 
virtual ~vruiCollabInterface ()
 
int getType () const
 
vruiCOIMgetManager ()
 
virtual void parseMessage (int type, unsigned int len, const char *message)
 
- Public Member Functions inherited from vrui::coUpdateable
 coUpdateable ()
 Constructor. More...
 
virtual ~coUpdateable ()
 Destructor. More...
 
virtual bool update ()=0
 

Protected Member Functions

virtual void remoteLock (const char *message)
 
virtual void remoteOngoing (const char *message)
 
virtual void releaseRemoteLock (const char *message)
 
virtual void setEnabled (bool on)
 
virtual void setText (const std::string &buttonText)
 
void displayValue (float value)
 
- Protected Member Functions inherited from vrui::coUIElement
virtual void resizeGeometry ()
 
virtual const vruiMatrixgetTransformMatrix ()
 
- Protected Member Functions inherited from vrui::vruiCollabInterface
void setType (int interfaceType)
 
void sendLockMessage (const char *message)
 
void sendOngoingMessage (const char *message)
 
void sendReleaseMessage (const char *message)
 
virtual void remoteLock (const char *message)
 
virtual void remoteOngoing (const char *message)
 
virtual void releaseRemoteLock (const char *message)
 

Protected Attributes

float myX
 poti x location More...
 
float myY
 poti y location More...
 
float minValue
 poti minimum value More...
 
float maxValue
 poti maximum value More...
 
float value
 current value represented by this poti More...
 
coCombinedButtonInteractioninteractionA
 interaction for first button More...
 
coCombinedButtonInteractioninteractionB
 interaction for second button (fine Tune) More...
 
coCombinedButtonInteractioninteractionW
 wheel interaction More...
 
bool unregister
 true if the interaction should be unregistered More...
 
float lastRoll
 previous mouse orientation More...
 
std::string buttonText
 value display text More...
 
std::string baseButtonText
 
std::string backgroundTexture
 
coValuePotiActormyActor
 action listener More...
 
bool integer
 true if adjustable value is an integer More...
 
float increment
 step size this poti, 0.0 if continuous More...
 
bool discrete
 
bool logarithmic = false
 true if scale is logarithmic More...
 
bool labelVisible
 true if label is visible More...
 
- Protected Attributes inherited from vrui::coAction
std::string actionName
 
- 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::vruiCollabInterface
int remoteContext
 a remote context (if this UI element is used in several contexts) More...
 

Additional Inherited Members

- 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::coUIElement
enum vrui::coUIElement:: { ... }  Attachments
 

Detailed Description

This class offers a poti GUI element which can be used to set integer or floating point values. To change the value, the user clicks on the poti and twists the hand to turn the poti. Action events are processed by coValuePotiActor and coAction.

See also
coUIElement
vruiCollabInterface
coUpdateable

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
MAX_SLOPE 

Constructor & Destructor Documentation

◆ coValuePoti()

vrui::coValuePoti::coValuePoti ( const std::string &  buttonText,
coValuePotiActor actor,
const std::string &  backgroundTexture,
vruiCOIM cInterfaceManager = 0,
const std::string &  interfaceName = "" 
)

◆ ~coValuePoti()

virtual vrui::coValuePoti::~coValuePoti ( )
virtual

Member Function Documentation

◆ discreteValue()

float vrui::coValuePoti::discreteValue ( float  value) const

◆ displayValue()

void vrui::coValuePoti::displayValue ( float  value)
protected

◆ getBackgroundTexture()

const std::string & vrui::coValuePoti::getBackgroundTexture ( ) const
inline

◆ getButtonText()

const std::string & vrui::coValuePoti::getButtonText ( ) const
inline

◆ getClassName()

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

get the Element's classname

Reimplemented from vrui::coUIElement.

Reimplemented in vrui::coSlopePoti.

◆ getHeight()

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

Returns element height.

Implements vrui::coUIElement.

◆ getIncrement()

virtual float vrui::coValuePoti::getIncrement ( ) const
virtual

◆ getMax()

virtual float vrui::coValuePoti::getMax ( ) const
virtual

◆ getMin()

virtual float vrui::coValuePoti::getMin ( ) const
virtual

◆ getValue()

virtual float vrui::coValuePoti::getValue ( ) const
virtual

Reimplemented in vrui::coSlopePoti.

◆ getWidth()

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

Returns element width.

Implements vrui::coUIElement.

◆ getXpos()

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

Returns element x position.

Implements vrui::coUIElement.

◆ getXSize()

virtual float vrui::coValuePoti::getXSize ( ) const
virtual

◆ getYpos()

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

Returns element y position.

Implements vrui::coUIElement.

◆ getYSize()

virtual float vrui::coValuePoti::getYSize ( ) const
virtual

◆ getZSize()

virtual float vrui::coValuePoti::getZSize ( ) const
virtual

◆ hit()

virtual int vrui::coValuePoti::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.

◆ isDiscrete()

virtual bool vrui::coValuePoti::isDiscrete ( ) const
virtual

◆ isInteger()

virtual bool vrui::coValuePoti::isInteger ( ) const
virtual

◆ isLabelVisible()

virtual bool vrui::coValuePoti::isLabelVisible ( )
virtual

◆ isLogarithmic()

virtual bool vrui::coValuePoti::isLogarithmic ( ) const
virtual

◆ isOfClassName()

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

check if the Element or any ancestor is this classname

Reimplemented from vrui::coUIElement.

Reimplemented in vrui::coSlopePoti.

◆ joystickDown()

void vrui::coValuePoti::joystickDown ( )

◆ joystickUp()

void vrui::coValuePoti::joystickUp ( )

◆ miss()

virtual void vrui::coValuePoti::miss ( )
virtual

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

Reimplemented from vrui::coAction.

◆ releaseRemoteLock()

virtual void vrui::coValuePoti::releaseRemoteLock ( const char *  message)
protectedvirtual

Reimplemented from vrui::vruiCollabInterface.

◆ remoteLock()

virtual void vrui::coValuePoti::remoteLock ( const char *  message)
protectedvirtual

Reimplemented from vrui::vruiCollabInterface.

◆ remoteOngoing()

virtual void vrui::coValuePoti::remoteOngoing ( const char *  message)
protectedvirtual

Reimplemented from vrui::vruiCollabInterface.

Reimplemented in vrui::coSlopePoti.

◆ setEnabled()

virtual void vrui::coValuePoti::setEnabled ( bool  on)
protectedvirtual

Reimplemented from vrui::coUIElement.

◆ setIncrement()

void vrui::coValuePoti::setIncrement ( float  increment)

◆ setInteger()

void vrui::coValuePoti::setInteger ( bool  on)

◆ setLabelVisible()

virtual void vrui::coValuePoti::setLabelVisible ( bool  )
virtual

◆ setLogarithmic()

void vrui::coValuePoti::setLogarithmic ( bool  on)

◆ setMax()

virtual void vrui::coValuePoti::setMax ( float  max)
virtual

◆ setMin()

virtual void vrui::coValuePoti::setMin ( float  min)
virtual

◆ setPos()

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

Implements vrui::coUIElement.

◆ setSize() [1/2]

void vrui::coValuePoti::setSize ( float  size)
virtual

Reimplemented from vrui::coUIElement.

◆ setSize() [2/2]

void vrui::coValuePoti::setSize ( float  width,
float  height,
float  depth 
)
virtual

Reimplemented from vrui::coUIElement.

◆ setState()

void vrui::coValuePoti::setState ( float  min,
float  max,
float  value,
bool  isInt,
float  inc = 0.0f 
)

◆ setText()

virtual void vrui::coValuePoti::setText ( const std::string &  buttonText)
protectedvirtual

◆ setValue()

virtual void vrui::coValuePoti::setValue ( float  value)
virtual

Reimplemented in vrui::coSlopePoti.

◆ update()

virtual bool vrui::coValuePoti::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.

Reimplemented in vrui::coSlopePoti.

Member Data Documentation

◆ backgroundTexture

std::string vrui::coValuePoti::backgroundTexture
protected

◆ baseButtonText

std::string vrui::coValuePoti::baseButtonText
protected

◆ buttonText

std::string vrui::coValuePoti::buttonText
protected

value display text

◆ discrete

bool vrui::coValuePoti::discrete
protected

◆ increment

float vrui::coValuePoti::increment
protected

step size this poti, 0.0 if continuous

◆ integer

bool vrui::coValuePoti::integer
protected

true if adjustable value is an integer

◆ interactionA

coCombinedButtonInteraction* vrui::coValuePoti::interactionA
protected

interaction for first button

◆ interactionB

coCombinedButtonInteraction* vrui::coValuePoti::interactionB
protected

interaction for second button (fine Tune)

◆ interactionW

coCombinedButtonInteraction* vrui::coValuePoti::interactionW
protected

wheel interaction

◆ labelVisible

bool vrui::coValuePoti::labelVisible
protected

true if label is visible

◆ lastRoll

float vrui::coValuePoti::lastRoll
protected

previous mouse orientation

◆ logarithmic

bool vrui::coValuePoti::logarithmic = false
protected

true if scale is logarithmic

◆ maxValue

float vrui::coValuePoti::maxValue
protected

poti maximum value

◆ minValue

float vrui::coValuePoti::minValue
protected

poti minimum value

◆ myActor

coValuePotiActor* vrui::coValuePoti::myActor
protected

action listener

◆ myX

float vrui::coValuePoti::myX
protected

poti x location

◆ myY

float vrui::coValuePoti::myY
protected

poti y location

◆ unregister

bool vrui::coValuePoti::unregister
protected

true if the interaction should be unregistered

◆ value

float vrui::coValuePoti::value
protected

current value represented by this poti


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