vrecko
virtual reality framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
APGUI::Icon Class Reference

Icon. More...

#include <Icon.h>

Inheritance diagram for APGUI::Icon:
APGUI::GUI_Item vrecko::Ability vrecko::BaseClass APGUI::IconColour

Public Member Functions

 Icon ()
 
 ~Icon ()
 
bool initialize (XERCES_CPP_NAMESPACE_QUALIFIER DOMNode *parametersNode)
 
bool initialize (string name, string receiver, string label, string tooltip, string group, osg::Vec3 position=osg::Vec3())
 
bool processAction (const int sensorNumber, const GUI_ACTION action, const bool pressed)
 Called when user presses defined button. More...
 
void pointed (bool pointed)
 Called when user point with cursor (hand, usually) to this GUI element. More...
 
void setState (GUI_ITEM_STATE newState)
 Set state (active / inactive) of switch icon. More...
 
void setPartColour (string partName, osg::Vec4 newColour)
 
- Public Member Functions inherited from APGUI::GUI_Item
 GUI_Item (const char *abName)
 
 ~GUI_Item ()
 
string getGUIItemName ()
 
bool isDefaultStateActive ()
 returns if initial state of this item is active (false in most cases) More...
 
void show ()
 
void hide ()
 
void hideTooltip ()
 
void showTooltip ()
 
virtual void setColours (osg::Vec4 colourActive, osg::Vec4 colourDefault, osg::Vec4 colourHovered, osg::Vec4 colourPressed, osg::Vec4 colourDisabled)
 Called, when visual models have to be switched (user pointed or clicked on some GUI item) More...
 
- Public Member Functions inherited from vrecko::Ability
virtual ~Ability ()
 copy constructor More...
 
const std::string & getName () const
 Returns the ability name. More...
 
void setPluginName (const char *pName)
 Sets the plugin name. More...
 
const std::string & getPluginName (void) const
 Returns the plugin name. More...
 
const std::string & getID (void) const
 Returns ability the identification string. More...
 
void setID (const char *pID)
 (Internal usage, most people should not need to use it.) Sets the ability ID. More...
 
virtual void clean (void)
 
void setOwner (BaseClass *owner)
 (Internal usage, most people should not need to use it.) Sets ability owner. *l This method is called automatically in World::createAbility(), so one would (almost?) never want to use it directly. More...
 
BaseClassgetOwner (void)
 Returns the ability owner. More...
 
virtual ParameterVectorgetParameterVector (void)
 Return vector of the parameter description. More...
 
bool isUpdated (void)
 Set update flag. More...
 
virtual const std::string & getSenderString (void)
 Returns the identification string of sender. More...
 
- 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 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...
 
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 createModels (string basicModelString, string hullModelString)
 
bool postInitialize (string name, string receiver, string label, string tooltip, string group, osg::Vec3 position)
 last part of initialization process - common for both initialize() methods More...
 
void switchVisuals ()
 Called, when visual models have to be switched (user pointed or clicked on some GUI item) More...
 
 DECLARE_OUTPUT (GUIItemClicked, MessageString)
 
 DECLARE_OUTPUT (ExternalDeactivation, MessageObjectID)
 
- Protected Member Functions inherited from APGUI::GUI_Item
osgText::Text * GUI_Item::createLabel ()
 
bool initialize (bool pointable=true, int sensor=-1)
 basic initialization - common for all GUI Item types More...
 
- Protected Member Functions inherited from vrecko::Ability
 Ability (const char *theAbilityName)
 
- Protected Member Functions inherited from vrecko::BaseClass
bool sendNotifications (unsigned long notificationType, void *notificationData)
 
virtual int processNotification (BaseClass *sender, unsigned long notificationType, void *notificationData)
 Process an incoming notification. More...
 
IOPinBasefindPinInList (const char *strName, PinList *pinList)
 Internal method to find a given pin in a given list. More...
 

Protected Attributes

IconType _type
 Type of this icon. More...
 
bool _switchActive_CoreChange
 Current state of icon. More...
 
bool _externalDeactivation
 
osg::Switch * _models
 pointer to OGS Switch group, containing all models (loaded, or constructed) of GUI item More...
 
ItemsGroup_group
 
osg::Vec3 _initialScale
 
- Protected Attributes inherited from APGUI::GUI_Item
string _name
 Identification of this GUI item. More...
 
string _receiver
 name of target object or ability More...
 
GUI_ITEM_STATE _state
 state of item - default, active, disabled, ... More...
 
GUI_Controller_controller
 pointer to GUI controller More...
 
osg::Group * _texts
 
osg::ref_ptr< GUI_Text_label
 Label - just a static label of Item. More...
 
osg::ref_ptr< GUI_Text_toolTip
 Tooltip - appears, when user hover with pointer over item for some time. Controller controls showing and hiding of tooltip. More...
 
EnvironmentObject_parent
 Pointer to parent object. More...
 
int _sensorNumber
 index of input device, that currently pressed GUI item More...
 
osg::ref_ptr
< osg::MatrixTransform > 
_itemTransform
 transformation node of GUI item - mainly for setting position of GUI Item relatively to the parent Environment Object More...
 
int _pointedCounter
 How many sensors is pointing to this GUI Item. More...
 
bool _pressed
 True, when user holds GUI-interaction button pressed, pointing on this GUI item. More...
 
bool _defaultStateActive
 flag, if this item should be in 'active' state after startup / reset More...
 
osg::Vec4 _colourActive
 
osg::Vec4 _colourDefault
 
osg::Vec4 _colourHovered
 
osg::Vec4 _colourPressed
 
osg::Vec4 _colourDisabled
 
std::vector< Interconnection * > _interconnections
 list of all created interconnections, More...
 
- Protected Attributes inherited from vrecko::Ability
BaseClasspOwner
 Pointer to the owner of this ability. (Almost?) always an EnvironmentObject class. More...
 
std::vector< std::string > parameterString
 
bool updated
 Update flag. It is used for save. More...
 
- 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::Ability
typedef std::vector
< ParameterStruct
ParameterVector
 Vector of the description of parameters. More...
 
- Protected Types inherited from vrecko::BaseClass
typedef std::map< std::string,
int > 
AttributeMap
 Attributes. More...
 
typedef std::vector
< osg::ref_ptr< IOPinBase > > 
PinList
 

Detailed Description

Icon.

Ability for simple adding button or switches to scene. Handle situations, when user point to Icon and click on Icon.

Author
Jiri Chmelik
Date
2011

Constructor & Destructor Documentation

Icon::Icon ( )
Icon::~Icon ( )

Member Function Documentation

bool Icon::createModels ( string  basicModelString,
string  hullModelString 
)
protected
APGUI::Icon::DECLARE_OUTPUT ( GUIItemClicked  ,
MessageString   
)
protected
APGUI::Icon::DECLARE_OUTPUT ( ExternalDeactivation  ,
MessageObjectID   
)
protected
bool APGUI::Icon::initialize ( XERCES_CPP_NAMESPACE_QUALIFIER DOMNode *  parametersNode)
virtual

Initialization of GUI item Called when Icon is defined in XML scene description

Warning
do NOT call this method, if you are creating GUI Items from code - use other initialization method (the one with more parameters)
Returns
successfulness of operation

Reimplemented from vrecko::BaseClass.

Reimplemented in APGUI::IconColour.

bool Icon::initialize ( string  name,
string  receiver,
string  label,
string  tooltip,
string  group,
osg::Vec3  position = osg::Vec3() 
)

Initialization of GUI item Called when Icon is defined from source code (not from XML)

Parameters
name- unique identifier of GUI Item, required
receiver- identifier of receiver (target) of this icon, required
label- text shown somewhere near icon, optional
tooltip- textual tooltip, shown after some hover time, optional
position- relative position of icon to its parent environment object
Returns
successfulness of operation
void Icon::pointed ( bool  pointed)
virtual

Called when user point with cursor (hand, usually) to this GUI element.

When pointed, GUI item can change its geometry (e.g. change color, switch to different model) as visual feedback to user

Parameters
pointedis true when user points on this item and false when user "unpoint" it.

Implements APGUI::GUI_Item.

bool Icon::postInitialize ( string  name,
string  receiver,
string  label,
string  tooltip,
string  group,
osg::Vec3  position 
)
protected

last part of initialization process - common for both initialize() methods

bool Icon::processAction ( const int  sensorNumber,
const GUI_ACTION  action,
const bool  pressed 
)
virtual

Called when user presses defined button.

Implements APGUI::GUI_Item.

Reimplemented in APGUI::IconColour.

void Icon::setPartColour ( string  partName,
osg::Vec4  newColour 
)
void Icon::setState ( GUI_ITEM_STATE  newState)
virtual

Set state (active / inactive) of switch icon.

Parameters
activenew state

Implements APGUI::GUI_Item.

void Icon::switchVisuals ( )
protected

Called, when visual models have to be switched (user pointed or clicked on some GUI item)

Member Data Documentation

bool APGUI::Icon::_externalDeactivation
protected
ItemsGroup* APGUI::Icon::_group
protected
osg::Vec3 APGUI::Icon::_initialScale
protected
osg::Switch* APGUI::Icon::_models
protected

pointer to OGS Switch group, containing all models (loaded, or constructed) of GUI item

bool APGUI::Icon::_switchActive_CoreChange
protected

Current state of icon.

will 'Hull' part of Icon change color when icon is active? default value = true. 'false' value can be useful for color pallete icons, e.g.

IconType APGUI::Icon::_type
protected

Type of this icon.


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