1 #ifndef GUI_FRAMEWORK___VIEW_MANAGER__HPP
2 #define GUI_FRAMEWORK___VIEW_MANAGER__HPP
59 #define EXT_POINT__VIEW_MANAGER_SERVICE__VIEW_FACTORY "view_manager_service::view_factory"
68 typedef vector< CIRef<IView> >
TViews;
71 typedef vector<const CViewTypeDescriptor*>
TDescrVec;
IViewFactory - view factory for use with IViewManagerService.
IViewManagerService IViewManagerService manages views in Workbench.
IView - represents a standard visual part of Workbench UI.
CFingerprint identifies an instance of IWMClient and is used for labeling layout positions.
IWorkbench is the central interface in the application framework.
virtual bool CanCreateView(const string &type_ui_name)=0
virtual void RegisterFactory(IViewFactory &factory)=0
assumes ownership of the factory
virtual CIRef< IView > ShowSingletonView(const string &singleton_ui_name)=0
activates the specified view, create a new view if it does not exist
virtual bool HasView(const IView &view) const =0
virtual void AddToWorkbench(IView &view, bool bFloat=false)=0
adds view to Workbench and connects to the services the view must be already initialized
vector< CIRef< IView > > TViews
virtual void GetViews(TViews &views)=0
get all registered views
virtual void RemoveFromWorkbench(IView &view)=0
disconnects view from services and removes from the Workbench
vector< const CViewTypeDescriptor * > TDescrVec
virtual CIRef< IView > CreateViewInstance(const string &type_ui_name)=0
create a view instance of the specified type
vector< CIRef< IViewFactory > > TFactories
virtual CIRef< IView > CreateViewInstanceByFingerprint(const IWMClient::CFingerprint &fingerprint)=0
create a view instance of the specified type
virtual void GetFactories(TFactories &factories)=0
virtual void RemoveAllViewsFromWorkbench()=0
disconnects and removes all view from Workbench
virtual ~IViewManagerService()
CMRUList< string > TMRUViews
virtual void GetTypeDescriptors(TDescrVec &descrs)=0
virtual CIRef< IView > GetSingletonView(const string &singleton_ui_name)=0
returns a pointer singleton view if it already exists in workbench or NULL
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Defines to provide correct exporting from DLLs in Windows.
Portable reference counted smart and weak pointers using CWeakRef, CRef, CObject and CObjectEx.