NCBI C++ ToolKit
Public Types | Public Member Functions | List of all members
IOpenViewManager Class Referenceabstract

Search Toolkit Book for IOpenViewManager

IOpenViewManager - interface dealing with a series of open view operations. More...

#include <gui/core/open_view_manager.hpp>

+ Inheritance diagram for IOpenViewManager:

Public Types

enum  EAction { eBack = 0 , eNext }
 

Public Member Functions

virtual void SetParentWindow (wxWindow *parent)=0
 
virtual void InitUI ()=0
 initialize the Manager before using in UI (set it to Initial state) More...
 
virtual void CleanUI ()=0
 clean UI objects associated with the Manager More...
 
virtual void SetInputObjects (const TConstScopedObjects &input)=0
 Set input objects that serve as original user input data. More...
 
virtual const TConstScopedObjectsGetOutputObjects () const =0
 Return the final input objects for views after possible object conversions and object aggregation. More...
 
virtual const vector< intGetOutputIndices () const =0
 
virtual wxPanel * GetCurrentPanel ()=0
 return the panel corresponding to the current state the function may create a new panel or return a pointer to existing panel all panels are owned and destroyed by the Open dialog. More...
 
virtual bool AtFinalStep ()=0
 true if state is Final (i.e. "Finish" button shall be shown instead of "Next") More...
 
virtual bool IsCompletedState ()=0
 true if data gathering has finished and Open dialog shall be closed More...
 
virtual bool CanDo (EAction action)=0
 indicates whether a transition (action) is possible More...
 
virtual bool DoTransition (EAction action)=0
 perform transition if possible and returns true, otherwise the function shall warn the user about the problem preventing the transition and return false. More...
 
virtual ~IOpenViewManager ()
 

Detailed Description

IOpenViewManager - interface dealing with a series of open view operations.

Issues: For a given view, one or more user selected objects might not be able to be displayed directly. A series of steps might be required to convert the input objects into the view-specific data types. The data conversion process will take into account of the user inputs and various view-specific rules/options. The main open view process includes object extraction, object conversion, and object aggregation. IOpenViewManager works as a state machine similar to IUIToolManager. But, it is simplified and more specific for open view operation. It performs transition between states and in each state, it can display a panel containing view-specific options that will be shown in a dialog.

Definition at line 62 of file open_view_manager.hpp.

Member Enumeration Documentation

◆ EAction

Enumerator
eBack 
eNext 

Definition at line 65 of file open_view_manager.hpp.

Constructor & Destructor Documentation

◆ ~IOpenViewManager()

virtual IOpenViewManager::~IOpenViewManager ( )
inlinevirtual

Definition at line 109 of file open_view_manager.hpp.

Member Function Documentation

◆ AtFinalStep()

virtual bool IOpenViewManager::AtFinalStep ( )
pure virtual

true if state is Final (i.e. "Finish" button shall be shown instead of "Next")

Implemented in COpenViewManager.

◆ CanDo()

virtual bool IOpenViewManager::CanDo ( EAction  action)
pure virtual

indicates whether a transition (action) is possible

Implemented in CMAViewManager, and COpenViewManager.

◆ CleanUI()

virtual void IOpenViewManager::CleanUI ( )
pure virtual

clean UI objects associated with the Manager

Implemented in COpenViewManager.

Referenced by COpenViewDlg::EndModal().

◆ DoTransition()

virtual bool IOpenViewManager::DoTransition ( EAction  action)
pure virtual

perform transition if possible and returns true, otherwise the function shall warn the user about the problem preventing the transition and return false.

this function should be used to perfrom argument validation

Implemented in CMAViewManager, and COpenViewManager.

◆ GetCurrentPanel()

virtual wxPanel* IOpenViewManager::GetCurrentPanel ( )
pure virtual

return the panel corresponding to the current state the function may create a new panel or return a pointer to existing panel all panels are owned and destroyed by the Open dialog.

Implemented in CMAViewManager, and COpenViewManager.

◆ GetOutputIndices()

virtual const vector<int> IOpenViewManager::GetOutputIndices ( ) const
pure virtual

Implemented in COpenViewManager.

◆ GetOutputObjects()

virtual const TConstScopedObjects& IOpenViewManager::GetOutputObjects ( ) const
pure virtual

Return the final input objects for views after possible object conversions and object aggregation.

Implemented in COpenViewManager.

◆ InitUI()

virtual void IOpenViewManager::InitUI ( )
pure virtual

initialize the Manager before using in UI (set it to Initial state)

Implemented in COpenViewManager.

Referenced by COpenViewDlg::SetFactories().

◆ IsCompletedState()

virtual bool IOpenViewManager::IsCompletedState ( )
pure virtual

true if data gathering has finished and Open dialog shall be closed

Implemented in COpenViewManager.

◆ SetInputObjects()

virtual void IOpenViewManager::SetInputObjects ( const TConstScopedObjects input)
pure virtual

Set input objects that serve as original user input data.

They will be converted to the target object type if necessary. the manager can save the pointer, it will remain valid until CleanUI() is called.

Implemented in COpenViewManager.

◆ SetParentWindow()

virtual void IOpenViewManager::SetParentWindow ( wxWindow *  parent)
pure virtual

Implemented in COpenViewManager.

Referenced by COpenViewDlg::SetFactories().


The documentation for this class was generated from the following file:
Modified on Fri Sep 20 14:58:31 2024 by modify_doxy.py rev. 669887