Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

vtkKWUserInterfaceManager Class Reference

a user interface manager. More...

#include <vtkKWUserInterfaceManager.h>

Inheritance diagram for vtkKWUserInterfaceManager:

Inheritance graph
[legend]
Collaboration diagram for vtkKWUserInterfaceManager:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 vtkTypeRevisionMacro (vtkKWUserInterfaceManager, vtkKWObject)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void Update ()
virtual int GetNumberOfPanels ()
virtual vtkKWWidgetGetPagesParentWidget (vtkKWUserInterfacePanel *panel)=0
virtual void UpdatePanel (vtkKWUserInterfacePanel *)
virtual void Create (vtkKWApplication *app)
virtual int IsCreated ()
virtual void SetEnabled (int)
virtual void UpdateEnableState ()
virtual int AddPanel (vtkKWUserInterfacePanel *panel)
virtual int HasPanel (vtkKWUserInterfacePanel *panel)
virtual vtkKWUserInterfacePanelGetPanel (const char *panel_name)
virtual vtkKWUserInterfacePanelGetPanel (int id)
virtual vtkKWUserInterfacePanelGetPanelFromPageId (int id)=0
virtual vtkKWUserInterfacePanelGetNthPanel (int rank)
virtual int RemovePanel (vtkKWUserInterfacePanel *panel)
virtual void RemoveAllPanels ()
virtual int AddPage (vtkKWUserInterfacePanel *panel, const char *title, const char *balloon=0, vtkKWIcon *icon=0)=0
virtual vtkKWWidgetGetPageWidget (int id)=0
virtual vtkKWWidgetGetPageWidget (vtkKWUserInterfacePanel *panel, const char *title)=0
virtual void RaisePage (int id)=0
virtual void RaisePage (vtkKWUserInterfacePanel *panel, const char *title)=0
virtual int ShowPanel (vtkKWUserInterfacePanel *panel)=0
virtual int HidePanel (vtkKWUserInterfacePanel *panel)=0
virtual int IsPanelVisible (vtkKWUserInterfacePanel *panel)=0
virtual int RaisePanel (vtkKWUserInterfacePanel *panel)
virtual void ShowAllPanels ()
virtual void HideAllPanels ()

Protected Member Functions

 vtkKWUserInterfaceManager ()
 ~vtkKWUserInterfaceManager ()
PanelSlotGetPanelSlot (vtkKWUserInterfacePanel *panel)
PanelSlotGetPanelSlot (int id)
PanelSlotGetPanelSlot (const char *panel_name)
PanelSlotGetNthPanelSlot (int rank)
int GetPanelId (vtkKWUserInterfacePanel *panel)
virtual void NumberOfPanelsChanged ()
virtual int RemovePageWidgets (vtkKWUserInterfacePanel *)

Protected Attributes

int IdCounter
vtkKWUserInterfaceManagerInternals * Internals

Friends

class vtkKWUserInterfaceManagerInternals

Detailed Description

a user interface manager.

This class is used to abstract the way a set of interface "panels" (vtkKWUserInterfacePanel) can be grouped inside a widget. For example, if a concrete implementation of that class uses a notebook as its underlying widget, then it will deliver a notebook's page when one of its managed panels request a "page" (i.e. a section within a panel). If another concrete implementation chooses for a flat GUI for example, then it will likely return frames as pages and pack them on top of each other. This class is not a widget. Concrete implementation of this class will provide an access point to a widget into which the manager will organize its panels (a notebook, a frame, etc.). Besides packing this widget, you will just have to set each panel's UserInterfaceManager ivar to point to this manager, and the rest should be taken care of (i.e. you do not need to manually add a panel to a manager, or manually request a page from the manager, it should be done through the panel's API).

See also:
vtkKWUserInterfaceManagerNotebook vtkKWUserInterfacePanel

Definition at line 48 of file vtkKWUserInterfaceManager.h.


Constructor & Destructor Documentation

vtkKWUserInterfaceManager::vtkKWUserInterfaceManager  )  [protected]
 

vtkKWUserInterfaceManager::~vtkKWUserInterfaceManager  )  [protected]
 


Member Function Documentation

vtkKWUserInterfaceManager::vtkTypeRevisionMacro vtkKWUserInterfaceManager  ,
vtkKWObject 
 

void vtkKWUserInterfaceManager::PrintSelf ostream &  os,
vtkIndent  indent
 

Reimplemented from vtkKWObject.

Reimplemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

virtual void vtkKWUserInterfaceManager::Create vtkKWApplication app  )  [virtual]
 

Create the manager widget (i.e. the widget that will group and display all user interface panels).

Reimplemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

virtual int vtkKWUserInterfaceManager::IsCreated  )  [virtual]
 

Create the manager widget (i.e. the widget that will group and display all user interface panels).

virtual void vtkKWUserInterfaceManager::SetEnabled int   )  [virtual]
 

Enable/Disable this interface. This propagates SetEnabled() calls to all panels.

virtual void vtkKWUserInterfaceManager::UpdateEnableState  )  [virtual]
 

Enable/Disable this interface. This propagates SetEnabled() calls to all panels.

virtual void vtkKWUserInterfaceManager::Update  )  [virtual]
 

Iterate over all panels and call Update() for each one. This will refresh the panels (provided that Update() has been reimplemented).

virtual int vtkKWUserInterfaceManager::AddPanel vtkKWUserInterfacePanel panel  )  [virtual]
 

Add a panel to the manager. Note that you most probably do not need to call this method, since setting a panel's UserInterfaceManager ivar will add the panel automatically (see vtkKWUserInterfacePanel::SetUserInterfaceManager()). Return a unique positive ID corresponding to that panel, or < 0 on error.

virtual int vtkKWUserInterfaceManager::HasPanel vtkKWUserInterfacePanel panel  )  [virtual]
 

Add a panel to the manager. Note that you most probably do not need to call this method, since setting a panel's UserInterfaceManager ivar will add the panel automatically (see vtkKWUserInterfacePanel::SetUserInterfaceManager()). Return a unique positive ID corresponding to that panel, or < 0 on error.

virtual int vtkKWUserInterfaceManager::GetNumberOfPanels  )  [virtual]
 

Get the number of panel

virtual vtkKWUserInterfacePanel* vtkKWUserInterfaceManager::GetPanel const char *  panel_name  )  [virtual]
 

Convenience method to get the panel from its name or ID, from a page ID (return the ID of the panel that holds that page), or the nth panel

virtual vtkKWUserInterfacePanel* vtkKWUserInterfaceManager::GetPanel int  id  )  [virtual]
 

Convenience method to get the panel from its name or ID, from a page ID (return the ID of the panel that holds that page), or the nth panel

virtual vtkKWUserInterfacePanel* vtkKWUserInterfaceManager::GetPanelFromPageId int  id  )  [pure virtual]
 

Convenience method to get the panel from its name or ID, from a page ID (return the ID of the panel that holds that page), or the nth panel

Implemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

virtual vtkKWUserInterfacePanel* vtkKWUserInterfaceManager::GetNthPanel int  rank  )  [virtual]
 

Convenience method to get the panel from its name or ID, from a page ID (return the ID of the panel that holds that page), or the nth panel

virtual int vtkKWUserInterfaceManager::RemovePanel vtkKWUserInterfacePanel panel  )  [virtual]
 

Remove a panel (or all) from the manager. Note that you most probably do not need to call this method, since setting a panel's UserInterfaceManager ivar to NULL will remove the panel automatically (this is done in the panel's destructor). Return 1 on success, 0 on error.

virtual void vtkKWUserInterfaceManager::RemoveAllPanels  )  [virtual]
 

Remove a panel (or all) from the manager. Note that you most probably do not need to call this method, since setting a panel's UserInterfaceManager ivar to NULL will remove the panel automatically (this is done in the panel's destructor). Return 1 on success, 0 on error.

virtual int vtkKWUserInterfaceManager::AddPage vtkKWUserInterfacePanel panel,
const char *  title,
const char *  balloon = 0,
vtkKWIcon icon = 0
[pure virtual]
 

Instruct the manager to reserve a page for a given panel. Note that you should use the panel's own API to add a page to a panel: this will automatically call this method with the proper panel parameter (see vtkKWUserInterfacePanel::AddPage()). Return a unique positive ID, or < 0 on error.

Implemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

virtual vtkKWWidget* vtkKWUserInterfaceManager::GetPageWidget int  id  )  [pure virtual]
 

Retrieve the widget corresponding to a given page reserved by the manager. This can be done through the unique page ID, or using a panel and the page title. The user UI components should be inserted into this widget. Note that you should use the panel's own API to get a page widget: this will automatically call this method with the proper ID or panel parameter (see vtkKWUserInterfacePanel::GetPageWidget()). Return NULL on error.

Implemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

virtual vtkKWWidget* vtkKWUserInterfaceManager::GetPageWidget vtkKWUserInterfacePanel panel,
const char *  title
[pure virtual]
 

Retrieve the widget corresponding to a given page reserved by the manager. This can be done through the unique page ID, or using a panel and the page title. The user UI components should be inserted into this widget. Note that you should use the panel's own API to get a page widget: this will automatically call this method with the proper ID or panel parameter (see vtkKWUserInterfacePanel::GetPageWidget()). Return NULL on error.

Implemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

virtual vtkKWWidget* vtkKWUserInterfaceManager::GetPagesParentWidget vtkKWUserInterfacePanel panel  )  [pure virtual]
 

Retrieve the parent widget of the pages associated to a panel. It is the unique widget that is common to all pages in the chain of parents. Note that you should use the panel's own API to get the page parent: this will automatically call this method with the proper panel parameter (see vtkKWUserInterfacePanel::GetPagesParentWidget()).

Implemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

virtual void vtkKWUserInterfaceManager::RaisePage int  id  )  [pure virtual]
 

Raise a page reserved by the manager. This can be done through the unique page ID, or using a panel and the page title. Note that you should use the panel's own API to raise a page: this will automatically call this method with the proper ID or panel parameter (see vtkKWUserInterfacePanel::RaisePage()).

Implemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

virtual void vtkKWUserInterfaceManager::RaisePage vtkKWUserInterfacePanel panel,
const char *  title
[pure virtual]
 

Raise a page reserved by the manager. This can be done through the unique page ID, or using a panel and the page title. Note that you should use the panel's own API to raise a page: this will automatically call this method with the proper ID or panel parameter (see vtkKWUserInterfacePanel::RaisePage()).

Implemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

virtual int vtkKWUserInterfaceManager::ShowPanel vtkKWUserInterfacePanel panel  )  [pure virtual]
 

Show/Hide a panel. It will make sure the pages reserved by the manager for this panel are shown/hidden. RaisePanel() behaves like ShowPanel(), but it will also try to bring up the first page of the panel to the front (i.e., "select" it). IsPanelVisible() checks if the pages of the panel are visible/shown. Note that you should use the panel's own API to show/raise a panel: this will automatically call this method with the proper panel parameter (see vtkKWUserInterfacePanel::Show/Raise()). Return 1 on success, 0 on error.

Implemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

virtual int vtkKWUserInterfaceManager::HidePanel vtkKWUserInterfacePanel panel  )  [pure virtual]
 

Show/Hide a panel. It will make sure the pages reserved by the manager for this panel are shown/hidden. RaisePanel() behaves like ShowPanel(), but it will also try to bring up the first page of the panel to the front (i.e., "select" it). IsPanelVisible() checks if the pages of the panel are visible/shown. Note that you should use the panel's own API to show/raise a panel: this will automatically call this method with the proper panel parameter (see vtkKWUserInterfacePanel::Show/Raise()). Return 1 on success, 0 on error.

Implemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

virtual int vtkKWUserInterfaceManager::IsPanelVisible vtkKWUserInterfacePanel panel  )  [pure virtual]
 

Show/Hide a panel. It will make sure the pages reserved by the manager for this panel are shown/hidden. RaisePanel() behaves like ShowPanel(), but it will also try to bring up the first page of the panel to the front (i.e., "select" it). IsPanelVisible() checks if the pages of the panel are visible/shown. Note that you should use the panel's own API to show/raise a panel: this will automatically call this method with the proper panel parameter (see vtkKWUserInterfacePanel::Show/Raise()). Return 1 on success, 0 on error.

Implemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

virtual int vtkKWUserInterfaceManager::RaisePanel vtkKWUserInterfacePanel panel  )  [inline, virtual]
 

Show/Hide a panel. It will make sure the pages reserved by the manager for this panel are shown/hidden. RaisePanel() behaves like ShowPanel(), but it will also try to bring up the first page of the panel to the front (i.e., "select" it). IsPanelVisible() checks if the pages of the panel are visible/shown. Note that you should use the panel's own API to show/raise a panel: this will automatically call this method with the proper panel parameter (see vtkKWUserInterfacePanel::Show/Raise()). Return 1 on success, 0 on error.

Reimplemented in vtkKWUserInterfaceManagerNotebook.

Definition at line 162 of file vtkKWUserInterfaceManager.h.

virtual void vtkKWUserInterfaceManager::ShowAllPanels  )  [virtual]
 

Convenience method to show/hide all panels.

virtual void vtkKWUserInterfaceManager::HideAllPanels  )  [virtual]
 

Convenience method to show/hide all panels.

virtual void vtkKWUserInterfaceManager::UpdatePanel vtkKWUserInterfacePanel  )  [inline, virtual]
 

Update a panel according to the manager settings (i.e., it just performs manager-specific changes on the panel). Note that it does not call the panel's Update() method, on the opposite the panel's Update() will call this method if the panel has a UIM set.

Reimplemented in vtkKWUserInterfaceManagerNotebook.

Definition at line 176 of file vtkKWUserInterfaceManager.h.

virtual int vtkKWUserInterfaceManager::RemovePageWidgets vtkKWUserInterfacePanel  )  [inline, protected, virtual]
 

Remove the widgets of all pages belonging to a panel. It is called by RemovePanel() and should be overloaded if the concrete implementation of the manager needs to unmap/unpack widgets before everything is deleted. Return 1 on success, 0 on error.

Reimplemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

Definition at line 187 of file vtkKWUserInterfaceManager.h.

PanelSlot* vtkKWUserInterfaceManager::GetPanelSlot vtkKWUserInterfacePanel panel  )  [protected]
 

PanelSlot* vtkKWUserInterfaceManager::GetPanelSlot int  id  )  [protected]
 

PanelSlot* vtkKWUserInterfaceManager::GetPanelSlot const char *  panel_name  )  [protected]
 

PanelSlot* vtkKWUserInterfaceManager::GetNthPanelSlot int  rank  )  [protected]
 

int vtkKWUserInterfaceManager::GetPanelId vtkKWUserInterfacePanel panel  )  [protected]
 

virtual void vtkKWUserInterfaceManager::NumberOfPanelsChanged  )  [inline, protected, virtual]
 

This method is (and should be) called each time the number of panels changes (for example, after AddPanel() / RemovePanel())

Reimplemented in vtkKWUserInterfaceManagerDialog.

Definition at line 223 of file vtkKWUserInterfaceManager.h.


Friends And Related Function Documentation

friend class vtkKWUserInterfaceManagerInternals [friend]
 

Definition at line 207 of file vtkKWUserInterfaceManager.h.


Member Data Documentation

int vtkKWUserInterfaceManager::IdCounter [protected]
 

Definition at line 191 of file vtkKWUserInterfaceManager.h.

vtkKWUserInterfaceManagerInternals* vtkKWUserInterfaceManager::Internals [protected]
 

Reimplemented in vtkKWUserInterfaceManagerDialog, and vtkKWUserInterfaceManagerNotebook.

Definition at line 206 of file vtkKWUserInterfaceManager.h.


The documentation for this class was generated from the following file:
Generated on Tue May 30 12:46:18 2006 for ParaView by doxygen 1.3.5