cgv
Loading...
Searching...
No Matches
cgv::gui::help_menu_entry Class Reference

derive from this class to provide a menu entry that can open a seperate window showing help information More...

#include <help_menu_entry.h>

Inheritance diagram for cgv::gui::help_menu_entry:
cgv::base::node cgv::base::named cgv::base::base cgv::data::ref_counted cgv::reflect::self_reflection_tag

Public Member Functions

 help_menu_entry (const std::string &name="")
 Construct a help menu entry with the given name.
window handling
void on_register () override
 Register the node and create a separate (non-blocking) window to show the stored information.
void unregister () override
 Unregister the node.
creation of help entries
void add_heading1 (const std::string &text)
 Add a heading with level=0.
void add_heading2 (const std::string &text)
 Add a heading with level=1.
void add_heading3 (const std::string &text)
 Add a heading with level=2.
void add_heading4 (const std::string &text)
 Add a heading with level=3.
void add_text (const std::string &text)
 Add a text paragraph that supports word wrapping.
void add_items (const std::string &items)
 Add a list of text items that will be displayed as bullet points.
void add_key_bindings (const std::string &key_bindings)
 Add a list of key bindings that will be displayed as a table.
Public Member Functions inherited from cgv::base::node
 node (const std::string &name="")
 construct from name
node_ptr get_parent () const
 return the parent node
base_ptr get_root () const
 return the root node by traversing parents until no more parent is available
void set_parent (node_ptr _parent)
 set a new parent node
node_ptr get_node () override
 cast upward to node
const_node_ptr get_node_const () const override
 cast upward to const node
std::string get_type_name () const override
 overload to return the type name of this object
Public Member Functions inherited from cgv::base::named
 named (const std::string &name="")
 construct from name
const std::string & get_name () const
 return the parent node
void set_name (const std::string &_name)
 set a new parent node
named_ptr get_named () override
 cast upward to named
const_named_ptr get_named_const () const override
 cast upward to const named
Public Member Functions inherited from cgv::base::base
virtual std::string get_default_options () const
 overload to provide default options for registration
std::string get_name_or_type_name () const
 determine name of instance by checking cgv::base::named interface and in failure fallback to get_type_name()
virtual bool on_exit_request ()
 overload to handle the appication exit request, return true if exiting is allowed and false otherwise
virtual void stream_stats (std::ostream &)
 overload to show the content of this object
virtual data::ref_ptr< group, true > get_group ()
 perform downcast to group
virtual data::ref_ptr< const group, true > get_group_const () const
 perform downcast to const group
template<class T>
data::ref_ptr< T, true > cast ()
 cast to arbitrary class, but use the casts to named, node and group from the interface
template<class T>
data::ref_ptr< const T, true > cast_const () const
 const cast to arbitrary class, but use the casts to named, node and group from the interface
template<class T>
T * get_interface ()
 use dynamic type cast to check for the given interface
template<class T>
const T * get_const_interface () const
 use dynamic type cast to check for the given interface
virtual void update ()
 this virtual update allows for example to ask a view to update the viewed value. The default implementation is empty.
virtual void * get_user_data () const
 this virtual method allows to pass application specific data for internal purposes
virtual bool self_reflect (cgv::reflect::reflection_handler &)
 used for simple self reflection
virtual std::string get_property_declarations ()
 return a semicolon separated list of property declarations
virtual bool set_void (const std::string &property, const std::string &value_type, const void *value_ptr)
 abstract interface for the setter of a dynamic property.
virtual void on_set (void *member_ptr)
 this callback is called when the set_void method has changed a member and can be overloaded in derived class
virtual bool get_void (const std::string &property, const std::string &value_type, void *value_ptr)
 abstract interface for the getter of a dynamic property.
virtual bool call_void (const std::string &method, const std::vector< std::string > &param_value_types, const std::vector< const void * > &param_value_ptrs, const std::string &result_type="", void *result_value_ptr=0)
 abstract interface to call an action
void set (const std::string &property, const char *value)
 specialization of set method to support const char* as strings
template<typename T>
void set (const std::string &property, const T &value)
 set a property of the element to the given value and perform standard conversions if necessary.
template<typename T>
T get (const std::string &property)
 query a property of the element and perform standard conversions if necessary.
void multi_set (const std::string &property_assignments, bool report_error=true)
 set several properties
bool is_property (const std::string &property_name, std::string *type_name=0)
 check if the given name specifies a property.
void * find_member_ptr (const std::string &property_name, std::string *type_name=0)
 find a member pointer by name.
Public Member Functions inherited from cgv::data::ref_counted
int get_ref_count () const
 read access to current count

Public Attributes

window_ptr wnd
std::vector< gui_group_ptr > groups

Additional Inherited Members

Protected Member Functions inherited from cgv::base::base
virtual ~base ()
 make destructor virtual and not accessible from outside
Protected Member Functions inherited from cgv::data::ref_counted
 ref_counted ()
 constructor initializes the count to 0
void set_ref_count (int c) const
 write access is also const to allow ref counted pointers to const instances
Static Protected Member Functions inherited from cgv::base::base
template<class T>
static data::ref_ptr< T, true > cast_dynamic (base *b)
 use dynamic cast for downcast to given class
Protected Attributes inherited from cgv::base::node
node_ptr parent
 store a pointer to the parent node
Protected Attributes inherited from cgv::base::named
std::string name
 store the name as a string

Detailed Description

derive from this class to provide a menu entry that can open a seperate window showing help information

Definition at line 15 of file help_menu_entry.h.

Constructor & Destructor Documentation

◆ help_menu_entry()

cgv::gui::help_menu_entry::help_menu_entry ( const std::string & name = "")
inline

Construct a help menu entry with the given name.

Definition at line 44 of file help_menu_entry.h.

References cgv::base::named::name, and cgv::base::node::node().

Member Function Documentation

◆ add_heading1()

void cgv::gui::help_menu_entry::add_heading1 ( const std::string & text)
inline

Add a heading with level=0.

Definition at line 61 of file help_menu_entry.h.

◆ add_heading2()

void cgv::gui::help_menu_entry::add_heading2 ( const std::string & text)
inline

Add a heading with level=1.

Definition at line 66 of file help_menu_entry.h.

◆ add_heading3()

void cgv::gui::help_menu_entry::add_heading3 ( const std::string & text)
inline

Add a heading with level=2.

Definition at line 71 of file help_menu_entry.h.

◆ add_heading4()

void cgv::gui::help_menu_entry::add_heading4 ( const std::string & text)
inline

Add a heading with level=3.

Definition at line 76 of file help_menu_entry.h.

◆ add_items()

void cgv::gui::help_menu_entry::add_items ( const std::string & items)
inline

Add a list of text items that will be displayed as bullet points.

Items are given as a semicolon-separated list. Example: "First item;Second item"

Definition at line 88 of file help_menu_entry.h.

◆ add_key_bindings()

void cgv::gui::help_menu_entry::add_key_bindings ( const std::string & key_bindings)
inline

Add a list of key bindings that will be displayed as a table.

Key bindings are given as a semicolon-separated list of key-action pairs (Key=Action). Example: "A='Toggle animation;B='Toggle bounding box'"

Definition at line 95 of file help_menu_entry.h.

◆ add_text()

void cgv::gui::help_menu_entry::add_text ( const std::string & text)
inline

Add a text paragraph that supports word wrapping.

Definition at line 81 of file help_menu_entry.h.

◆ on_register()

void cgv::gui::help_menu_entry::on_register ( )
overridevirtual

Register the node and create a separate (non-blocking) window to show the stored information.

Reimplemented from cgv::base::base.

Definition at line 8 of file help_menu_entry.cxx.

References cgv::utils::bite_all(), cgv::gui::get_gui_driver(), cgv::base::named::get_name(), cgv::utils::tokenizer::set_skip(), cgv::utils::tokenizer::set_ws(), cgv::utils::trim(), and cgv::base::unregister_object().

◆ unregister()

void cgv::gui::help_menu_entry::unregister ( )
overridevirtual

Unregister the node.

Reimplemented from cgv::base::base.

Definition at line 99 of file help_menu_entry.cxx.

Member Data Documentation

◆ groups

std::vector<gui_group_ptr> cgv::gui::help_menu_entry::groups

Definition at line 41 of file help_menu_entry.h.

◆ wnd

window_ptr cgv::gui::help_menu_entry::wnd

Definition at line 40 of file help_menu_entry.h.


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