Manages all workspace operations including creation, loading, and persistence.
More...
#include <Workspace.h>
|
| static bool | Initialize () |
| | Initialize the workspace manager and load existing workspaces.
|
| |
| static std::vector< Workspace > | GetAllWorkspaces () |
| | Get all available workspaces.
|
| |
| static bool | CreateWorkspace (const std::string &name, const std::filesystem::path &path, const std::string &description="") |
| | Create a new workspace with standard directory structure.
|
| |
| static bool | RemoveWorkspace (const std::filesystem::path &workspacePath) |
| | Remove a workspace from the managed list (doesn't delete files)
|
| |
| static bool | UpdateLastOpened (const std::filesystem::path &workspacePath) |
| | Update last opened time for a workspace.
|
| |
| static const Workspace * | GetCurrentWorkspace () |
| | Get the currently active workspace.
|
| |
| static bool | SetCurrentWorkspace (const std::filesystem::path &workspacePath) |
| | Set the current active workspace.
|
| |
| static bool | SaveWorkspaces () |
| | Save workspace list to persistent storage.
|
| |
| static bool | LoadWorkspaces () |
| | Load workspace list from persistent storage.
|
| |
| static bool | IsValidWorkspaceDirectory (const std::filesystem::path &path) |
| | Check if a directory is a valid Voltray workspace.
|
| |
| static int | CleanupInvalidWorkspaces () |
| | Remove invalid workspaces from the list (paths that no longer exist)
|
| |
Manages all workspace operations including creation, loading, and persistence.
This class handles:
- Creating new workspaces with proper directory structure (NO global assets)
- Loading and saving workspace lists to/from JSON config files
- Managing the currently active workspace
- Cleaning up invalid workspaces (deleted directories)
Note: Global assets (cube, sphere, etc.) are managed by UserDataManager, not individual workspaces. Each workspace contains only user-specific content.
◆ CleanupInvalidWorkspaces()
| int WorkspaceManager::CleanupInvalidWorkspaces |
( |
| ) |
|
|
static |
Remove invalid workspaces from the list (paths that no longer exist)
- Returns
- Number of workspaces removed
◆ CreateWorkspace()
| bool WorkspaceManager::CreateWorkspace |
( |
const std::string & |
name, |
|
|
const std::filesystem::path & |
path, |
|
|
const std::string & |
description = "" |
|
) |
| |
|
static |
Create a new workspace with standard directory structure.
- Parameters
-
| name | Display name for the workspace |
| path | Directory path where workspace will be created |
| description | Optional description |
- Returns
- true if created successfully
◆ GetAllWorkspaces()
| std::vector< Workspace > WorkspaceManager::GetAllWorkspaces |
( |
| ) |
|
|
static |
Get all available workspaces.
- Returns
- Vector of all workspaces (including invalid ones)
◆ GetCurrentWorkspace()
| const Workspace * WorkspaceManager::GetCurrentWorkspace |
( |
| ) |
|
|
static |
Get the currently active workspace.
- Returns
- Pointer to current workspace, nullptr if none active
◆ Initialize()
| bool WorkspaceManager::Initialize |
( |
| ) |
|
|
static |
Initialize the workspace manager and load existing workspaces.
- Returns
- true if successful
◆ IsValidWorkspaceDirectory()
| bool WorkspaceManager::IsValidWorkspaceDirectory |
( |
const std::filesystem::path & |
path | ) |
|
|
static |
Check if a directory is a valid Voltray workspace.
- Parameters
-
| path | Directory path to check |
- Returns
- true if contains workspace marker file
◆ LoadWorkspaces()
| bool WorkspaceManager::LoadWorkspaces |
( |
| ) |
|
|
static |
Load workspace list from persistent storage.
- Returns
- true if loaded successfully
◆ RemoveWorkspace()
| bool WorkspaceManager::RemoveWorkspace |
( |
const std::filesystem::path & |
workspacePath | ) |
|
|
static |
Remove a workspace from the managed list (doesn't delete files)
- Parameters
-
| workspacePath | Path to the workspace to remove |
- Returns
- true if removed successfully
◆ SaveWorkspaces()
| bool WorkspaceManager::SaveWorkspaces |
( |
| ) |
|
|
static |
Save workspace list to persistent storage.
- Returns
- true if saved successfully
◆ SetCurrentWorkspace()
| bool WorkspaceManager::SetCurrentWorkspace |
( |
const std::filesystem::path & |
workspacePath | ) |
|
|
static |
Set the current active workspace.
- Parameters
-
| workspacePath | Path to the workspace to set as current |
- Returns
- true if set successfully
◆ UpdateLastOpened()
| bool WorkspaceManager::UpdateLastOpened |
( |
const std::filesystem::path & |
workspacePath | ) |
|
|
static |
Update last opened time for a workspace.
- Parameters
-
| workspacePath | Path to the workspace |
- Returns
- true if updated successfully
The documentation for this class was generated from the following files: