ITreeViewCB Struct Reference

Tree view interface It must be implemented by classes which communicate with the IVisualisationTree class in order to display the contents of the visualisation tree. More...

Inherited by CDesignerVisualisation, and CPlayerVisualisation.

Public Member Functions

virtual void createTreeWidget (OpenViBE::Kernel::IVisualisationWidget *pVisualisationWidget)
 Notifies the tree view that a new widget is being created. More...
 
virtual ::GtkWidget * loadTreeWidget (OpenViBE::Kernel::IVisualisationWidget *pVisualisationWidget)
 Notifies the tree view that a widget is being loaded. This method must return a Gtk widget that matches the description passed in parameter, or NULL if it doesn't wish to support a specific kind of widget (e.g. top level windows are not instantiated by the offline window manager). The widget pointer returned is stored in the EVisualisationTreeColumn_PointerWidget column of the corresponding tree node. More...
 
virtual void endLoadTreeWidget (OpenViBE::Kernel::IVisualisationWidget *pVisualisationWidget)
 Notifies the tree view that a widget hierarchy has been loaded This method lets the tree view perform additional loading operations at the end of the loading process. More...
 
virtual ::GtkWidget * getVisualisationWidget (::GtkWidget *pTreeWidget)
 Asks for the visualisation (visible) widget associated to the tree widget passed in parameter In some cases the Gtk 'tree widget' associated to a tree node is a table comprising several widgets. For example, in the offline window manager, a widget is often stored in the central cell of a 3x3 table and is surrounded by transparent event boxes for drag n' drop purposes. This callback returns the central 'visualisation widget' (the visible widget) contained in such a table if any, otherwise it returns the tree widget itself. More...
 
virtual ::GtkWidget * getTreeWidget (::GtkWidget *pVisualisationWidget)
 Asks for the tree widget associated to a visualisation widget In some cases a Gtk widget is inserted in a 3x3 table for drag n' drop purposes. In such cases, a distinction is made between the 'visualisation widget' (the actual visible widget) and the widget stored in the EVisualisationTreeColumn_PointerWidget column of a tree store. More...
 
virtual const char * getTreeWidgetIcon (OpenViBE::Kernel::EVisualisationTreeNode eVisualisationTreeNode)
 Icon associated to a visualisation tree node Each node has a Gtk icon. It is defined by the tree view, but can be customised for nodes of type EVisualisationTreeNode_VisualisationBox. This method asks the tree view what icon is to be used for a given type of node. More...
 
virtual void resizePanedWidget (OpenViBE::Kernel::IVisualisationWidget *pVisualisationWidget,::GtkWidget *pPanedWidget)
 Notifies the tree view that a paned widget is being resized When a window is resized, the new size information is being forwarded to the whole widgets hierarchy. In the case of paned widgets (vertical and horizontal splits), this information is forwarded to the tree view (which might want to save the paned widget's new size, and/or reposition the paned handle). More...
 
virtual OpenViBE::boolean setToolbar (const OpenViBE::CIdentifier &rBoxIdentifier,::GtkWidget *pToolbarWidget)
 Set toolbar pointer of a visualisation box Forwards pointer to the toolbar of a visualisation box as the player is launched and each visualisation box contained in the active scenario is being instantiated. More...
 
virtual OpenViBE::boolean setWidget (const OpenViBE::CIdentifier &rBoxIdentifier,::GtkWidget *pWidget)
 Set topmost widget pointer of a visualisation box Forwards pointer to the topmost widget of a visualisation box as the player is launched and each visualisation box contained in the active scenario is being instantiated. Used to position each box at the appropriate position, as defined using the offline window manager. More...
 

Detailed Description

Tree view interface It must be implemented by classes which communicate with the IVisualisationTree class in order to display the contents of the visualisation tree.

Member Function Documentation

virtual void createTreeWidget ( OpenViBE::Kernel::IVisualisationWidget pVisualisationWidget)
inlinevirtual

Notifies the tree view that a new widget is being created.

Parameters
[in]pVisualisationWidgetpointer to the newly created widget
virtual ::GtkWidget* loadTreeWidget ( OpenViBE::Kernel::IVisualisationWidget pVisualisationWidget)
inline

Notifies the tree view that a widget is being loaded. This method must return a Gtk widget that matches the description passed in parameter, or NULL if it doesn't wish to support a specific kind of widget (e.g. top level windows are not instantiated by the offline window manager). The widget pointer returned is stored in the EVisualisationTreeColumn_PointerWidget column of the corresponding tree node.

Parameters
[in]pVisualisationWidgetpointer to loaded visualisation widget
Returns
GtkWidget* pointer to Gtk widget associated to visualisation widget (possibly NULL)
virtual void endLoadTreeWidget ( OpenViBE::Kernel::IVisualisationWidget pVisualisationWidget)
inlinevirtual

Notifies the tree view that a widget hierarchy has been loaded This method lets the tree view perform additional loading operations at the end of the loading process.

Parameters
[in]pVisualisationWidgetpointer to visualisation widget
virtual ::GtkWidget* getVisualisationWidget ( ::GtkWidget *  pTreeWidget)
inline

Asks for the visualisation (visible) widget associated to the tree widget passed in parameter In some cases the Gtk 'tree widget' associated to a tree node is a table comprising several widgets. For example, in the offline window manager, a widget is often stored in the central cell of a 3x3 table and is surrounded by transparent event boxes for drag n' drop purposes. This callback returns the central 'visualisation widget' (the visible widget) contained in such a table if any, otherwise it returns the tree widget itself.

Parameters
[in]pTreeWidgetpointer to the Gtk widget associated to a tree node (as stored in the EVisualisationTreeColumn_PointerWidget column of a tree store)
Returns
pointer to the visible Gtk widget if pTreeWidget is a table, pTreeWidget itself otherwise(default)
See Also
getTreeWidget()
virtual ::GtkWidget* getTreeWidget ( ::GtkWidget *  pVisualisationWidget)
inline

Asks for the tree widget associated to a visualisation widget In some cases a Gtk widget is inserted in a 3x3 table for drag n' drop purposes. In such cases, a distinction is made between the 'visualisation widget' (the actual visible widget) and the widget stored in the EVisualisationTreeColumn_PointerWidget column of a tree store.

Parameters
[in]pVisualisationWidgetpointer to visualisation widget
Returns
parent table if any, pVisualisationWidget otherwise (default)
See Also
getVisualisationWidget()
virtual const char* getTreeWidgetIcon ( OpenViBE::Kernel::EVisualisationTreeNode  eVisualisationTreeNode)
inlinevirtual

Icon associated to a visualisation tree node Each node has a Gtk icon. It is defined by the tree view, but can be customised for nodes of type EVisualisationTreeNode_VisualisationBox. This method asks the tree view what icon is to be used for a given type of node.

Parameters
[in]eVisualisationTreeNodetype of node whose icon name is to be retrieved
Returns
name of stock icon to be associated to the type of node passed in parameter
virtual void resizePanedWidget ( OpenViBE::Kernel::IVisualisationWidget pVisualisationWidget,
::GtkWidget *  pPanedWidget 
)
inlinevirtual

Notifies the tree view that a paned widget is being resized When a window is resized, the new size information is being forwarded to the whole widgets hierarchy. In the case of paned widgets (vertical and horizontal splits), this information is forwarded to the tree view (which might want to save the paned widget's new size, and/or reposition the paned handle).

Parameters
[in]pVisualisationWidgetpointer to visualisation widget of type EVisualisationTreeNode_VerticalSplit or EVisualisationTreeNode_HorizontalSplit that is being resized
[in]pPanedWidgetpointer to associated Gtk widget
virtual OpenViBE::boolean setToolbar ( const OpenViBE::CIdentifier rBoxIdentifier,
::GtkWidget *  pToolbarWidget 
)
inlinevirtual

Set toolbar pointer of a visualisation box Forwards pointer to the toolbar of a visualisation box as the player is launched and each visualisation box contained in the active scenario is being instantiated.

Parameters
[in]rBoxIdentifierIdentifier of IBox whose toolbar is being set
[in]pToolbarWidgetpointer to toolbar of visualisation box
Returns
true if widget was successfully registered, false otherwise
virtual OpenViBE::boolean setWidget ( const OpenViBE::CIdentifier rBoxIdentifier,
::GtkWidget *  pWidget 
)
inlinevirtual

Set topmost widget pointer of a visualisation box Forwards pointer to the topmost widget of a visualisation box as the player is launched and each visualisation box contained in the active scenario is being instantiated. Used to position each box at the appropriate position, as defined using the offline window manager.

Parameters
[in]rBoxIdentifierIdentifier of IBox whose toolbar is being set
[in]pWidgetpointer to main window of visualisation box
Returns
true if widget was successfully registered, false otherwise