GlsMenu
|
#include <gls_menu_action.h>
Public Types | |
typedef GlsFunctor1_T< std::istream & > | ActionHandler_t |
typedef std::map< std::string, ActionHandler_t * > | HandlerCont_t |
Public Member Functions | |
GlsMenuAction (const std::string &name, GlsMenuDictionary &dataDict, HandlerCont_t &actionHandlers) | |
virtual | ~GlsMenuAction () |
virtual void | Execute () const |
virtual bool | OkToWrite () |
virtual std::istream & | ReadValue (std::istream &instr) |
virtual void | Attach (std::string *&data) |
virtual bool | ReferTo (std::string &data) |
virtual bool | ValueChanged () |
virtual void | ResetValueChanged () |
virtual std::ostream & | WriteValue (std::ostream &outstr) |
void | SetPrecision (int outputPrecision) |
virtual const std::string & | Value () const |
virtual std::string & | Value () |
virtual void | Value (const std::string &val) |
virtual void | Inc (long amount=1) |
Static Public Member Functions | |
static void | Register (const std::string &name, ActionHandler_t *handler) |
Protected Member Functions | |
bool | CanExecute (std::string &statement) const |
Protected Attributes | |
GlsMenuDictionary & | _dataDict |
HandlerCont_t & | _localHandlers |
std::string * | _data |
Storage for the meta-data. More... | |
std::string | _prevValue |
The previous meta-data value. More... | |
bool | _prevValueValid |
Whether or not the previous value should be considered. More... | |
int | _precision |
Allows for setting of precision for floating point numbers. More... | |
Static Protected Attributes | |
static HandlerCont_t | _globalHandlers |
The GlsMenuAction class provides a meta-data action (callback) containing an identifier of the action to perform as a meta-data item name and whose value is the parameters to pass to the action.
The static portions of the class provide the mechanism for registering handlers for specific actions.
If an action has no handler, it is a no-op.
Definition at line 71 of file gls_menu_action.h.
typedef GlsFunctor1_T<std::istream&> GlsMenuAction::ActionHandler_t |
Definition at line 77 of file gls_menu_action.h.
typedef std::map<std::string, ActionHandler_t*> GlsMenuAction::HandlerCont_t |
Definition at line 79 of file gls_menu_action.h.
GlsMenuAction::GlsMenuAction | ( | const std::string & | name, |
GlsMenuDictionary & | dataDict, | ||
HandlerCont_t & | actionHandlers | ||
) |
Class constructor.
name | the name of the group of data items. |
dataDict | the menu data dictionary used to evaluate menu data variables |
actionHandlers | These are handlers for menu actions passed in by the creator. These are considered local to the menu set. |
|
virtual |
Class destructor.
|
virtualinherited |
Attaches an external pointer to the data so that dereferencing the pointer will allow access to the data item's value without performing dictionary lookups and data value retrievals.
|
protected |
Determine if there is a condition in front of the action to perform and if so, evaluate the condition and return the result. If there is no condition, true is returned.
|
virtual |
Invoke all actions associated with the instance. Derived classes can override this method to add new action types.
dict | data dictionary to use for evaluating action parameters. |
Reimplemented in GlsMenuActionGroup.
|
virtualinherited |
Increment the data item. Derived classes must override this as the default is a no-op.
Reimplemented in GlsMenuDiscrete_T< T >.
Referenced by GlsMenuSet_T< MenuType_t, DataFactory_t >::IncData().
|
virtualinherited |
Returns false if the string is empty.
|
virtualinherited |
Read the stream until an end of line is encountered.
Reimplemented from GlsMenuData_T< std::string >.
Reimplemented in GlsMenuActionGroup.
|
virtualinherited |
Changes the data item to refer to and use the external variable rather than its own memory. Allows access to the data item's value without performing dictionary lookups and data value retrievals.
|
static |
Register a handler for a specific action.
name | action name |
handler | handler for the action |
|
virtualinherited |
Sets the previous value to the current value.
|
inherited |
Allows for setting of precision for floating point numbers. This is the number of digits to be shown after the decimal point.
|
virtualinherited |
Returns the value of the simulation meta-data.
|
virtualinherited |
Returns a reference value of the simulation meta-data.
|
virtualinherited |
Sets the value of the simulation meta-data.
|
virtualinherited |
Determines if the value has changed since the last call to this method.
|
virtualinherited |
Writes the value to the output stream.
Reimplemented in GlsMenuActionGroup.
|
protectedinherited |
Storage for the meta-data.
Definition at line 226 of file gls_menu_data.h.
|
protected |
Definition at line 126 of file gls_menu_action.h.
|
staticprotected |
Definition at line 144 of file gls_menu_action.h.
|
protected |
Definition at line 141 of file gls_menu_action.h.
|
protectedinherited |
Allows for setting of precision for floating point numbers.
Definition at line 235 of file gls_menu_data.h.
|
protectedinherited |
The previous meta-data value.
Definition at line 229 of file gls_menu_data.h.
|
protectedinherited |
Whether or not the previous value should be considered.
Definition at line 232 of file gls_menu_data.h.