1 #ifndef GUI_CORE___PROJECT_SERVICE__HPP
2 #define GUI_CORE___PROJECT_SERVICE__HPP
55 #include <wx/string.h>
93 virtual void InitService();
94 virtual void ShutDownService();
106 virtual void SetRegistryPath(
const string& path);
107 virtual void SaveSettings()
const;
108 virtual void LoadSettings();
114 void CreateNewWorkspace();
118 void ResetWorkspace();
121 bool SaveWorkspace();
126 void AddToProjectWorkspaceMRUList(
const wxString& path);
145 void RemoveAllProjectViews();
159 const objects::CProjectItem* GetProjectItem(
const CObject&
object, objects::CScope& scope);
163 void x_CreateDocuments(objects::CWorkspaceFolder& folder);
167 void x_ReloadProjectTreeView();
169 void x_UpdateWorkspaceLabel();
User-defined methods of the data storage class.
CProjectService - a service providing API for operations with Workspaces and Projects.
CRef< objects::CGBWorkspace > m_Workspace
the only Workspace
CProjectService(const CProjectService &)
all constructing / copying of project managers is forbidden
string m_RegPath
path in the Registry to our settings
IServiceLocator * GetServiceLocator()
TMRUPathList m_ProjectWorkspaceMRUList
filename for the workspace
CTimeMRUList< wxString > TMRUPathList
bool LoadWorkspace(const wxString &filename)
Loads a workspace from a file and optionally set as current.
objects::CGBProjectHandle::TId TProjectId
IServiceLocator * m_ServiceLocator
CProjectTreePanel - a window that represents Project View.
IServiceLocator & m_ServiceLocator
class IProjectView defines the abstract interface for views observing projects.
IRegSettings An interface for objects that save / restore settings using CGuiRegistry.
IServiceLocatorConsumer - classes that need IServiceLocator should implement this interface.
IServiceLocator - an abstract mechanism for locating services.
IService – an abstraction that represents an application component providing specific functional capa...
IViewManagerService IViewManagerService manages views in Workbench.
vector< SConstScopedObject > TConstScopedObjects
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define END_SCOPE(ns)
End the previously defined scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define BEGIN_SCOPE(ns)
Define a new scope.
#define NCBI_GUICORE_EXPORT
Multi-threading – mutexes; rw-locks; semaphore.
The NCBI C++/STL use hints.