yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
yaze::editor::WorkspaceManager Class Reference

Manages workspace layouts, sessions, and presets. More...

#include <workspace_manager.h>

Collaboration diagram for yaze::editor::WorkspaceManager:

Classes

struct  SessionInfo
 

Public Member Functions

 WorkspaceManager (ToastManager *toast_manager)
 
void set_card_registry (EditorCardRegistry *registry)
 
absl::Status SaveWorkspaceLayout (const std::string &name="")
 
absl::Status LoadWorkspaceLayout (const std::string &name="")
 
absl::Status ResetWorkspaceLayout ()
 
void SaveWorkspacePreset (const std::string &name)
 
void LoadWorkspacePreset (const std::string &name)
 
void RefreshPresets ()
 
void LoadDeveloperLayout ()
 
void LoadDesignerLayout ()
 
void LoadModderLayout ()
 
void ShowAllWindows ()
 
void HideAllWindows ()
 
void MaximizeCurrentWindow ()
 
void RestoreAllWindows ()
 
void CloseAllFloatingWindows ()
 
void FocusNextWindow ()
 
void FocusPreviousWindow ()
 
void SplitWindowHorizontal ()
 
void SplitWindowVertical ()
 
void CloseCurrentWindow ()
 
void ExecuteWorkspaceCommand (const std::string &command_id)
 
size_t GetActiveSessionCount () const
 
bool HasDuplicateSession (const std::string &filepath) const
 
void set_sessions (std::deque< SessionInfo > *sessions)
 
const std::vector< std::string > & workspace_presets () const
 
bool workspace_presets_loaded () const
 

Private Attributes

ToastManagertoast_manager_
 
EditorCardRegistrycard_registry_ = nullptr
 
std::deque< SessionInfo > * sessions_ = nullptr
 
std::string last_workspace_preset_
 
std::vector< std::string > workspace_presets_
 
bool workspace_presets_loaded_ = false
 

Detailed Description

Manages workspace layouts, sessions, and presets.

Definition at line 20 of file workspace_manager.h.

Constructor & Destructor Documentation

◆ WorkspaceManager()

yaze::editor::WorkspaceManager::WorkspaceManager ( ToastManager toast_manager)
inlineexplicit

Definition at line 29 of file workspace_manager.h.

Member Function Documentation

◆ set_card_registry()

void yaze::editor::WorkspaceManager::set_card_registry ( EditorCardRegistry registry)
inline

Definition at line 33 of file workspace_manager.h.

References card_registry_.

Referenced by yaze::editor::EditorManager::Initialize().

◆ SaveWorkspaceLayout()

absl::Status yaze::editor::WorkspaceManager::SaveWorkspaceLayout ( const std::string &  name = "")
Todo:
Serialize ImGui docking layout

Definition at line 16 of file workspace_manager.cc.

References yaze::editor::kSuccess, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by ExecuteWorkspaceCommand().

Here is the call graph for this function:

◆ LoadWorkspaceLayout()

absl::Status yaze::editor::WorkspaceManager::LoadWorkspaceLayout ( const std::string &  name = "")
Todo:
Deserialize ImGui docking layout

Definition at line 24 of file workspace_manager.cc.

References yaze::editor::kSuccess, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by ExecuteWorkspaceCommand().

Here is the call graph for this function:

◆ ResetWorkspaceLayout()

absl::Status yaze::editor::WorkspaceManager::ResetWorkspaceLayout ( )
Todo:
Reset to default layout

Definition at line 32 of file workspace_manager.cc.

References yaze::editor::kInfo, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by ExecuteWorkspaceCommand().

Here is the call graph for this function:

◆ SaveWorkspacePreset()

void yaze::editor::WorkspaceManager::SaveWorkspacePreset ( const std::string &  name)

◆ LoadWorkspacePreset()

void yaze::editor::WorkspaceManager::LoadWorkspacePreset ( const std::string &  name)

Definition at line 69 of file workspace_manager.cc.

References yaze::editor::kSuccess, last_workspace_preset_, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by yaze::editor::EditorManager::LoadWorkspacePreset().

Here is the call graph for this function:

◆ RefreshPresets()

void yaze::editor::WorkspaceManager::RefreshPresets ( )

◆ LoadDeveloperLayout()

void yaze::editor::WorkspaceManager::LoadDeveloperLayout ( )
Todo:
Load preset with all debug tools

Definition at line 108 of file workspace_manager.cc.

References yaze::editor::kInfo, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by ExecuteWorkspaceCommand().

Here is the call graph for this function:

◆ LoadDesignerLayout()

void yaze::editor::WorkspaceManager::LoadDesignerLayout ( )
Todo:
Load preset focused on graphics

Definition at line 115 of file workspace_manager.cc.

References yaze::editor::kInfo, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by ExecuteWorkspaceCommand().

Here is the call graph for this function:

◆ LoadModderLayout()

void yaze::editor::WorkspaceManager::LoadModderLayout ( )
Todo:
Load preset for ROM hacking

Definition at line 122 of file workspace_manager.cc.

References yaze::editor::kInfo, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by ExecuteWorkspaceCommand().

Here is the call graph for this function:

◆ ShowAllWindows()

void yaze::editor::WorkspaceManager::ShowAllWindows ( )

◆ HideAllWindows()

void yaze::editor::WorkspaceManager::HideAllWindows ( )

◆ MaximizeCurrentWindow()

void yaze::editor::WorkspaceManager::MaximizeCurrentWindow ( )

Definition at line 147 of file workspace_manager.cc.

References yaze::editor::kInfo, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by ExecuteWorkspaceCommand().

Here is the call graph for this function:

◆ RestoreAllWindows()

void yaze::editor::WorkspaceManager::RestoreAllWindows ( )

Definition at line 160 of file workspace_manager.cc.

References yaze::editor::kInfo, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by ExecuteWorkspaceCommand().

Here is the call graph for this function:

◆ CloseAllFloatingWindows()

void yaze::editor::WorkspaceManager::CloseAllFloatingWindows ( )

Definition at line 175 of file workspace_manager.cc.

References yaze::editor::kInfo, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by ExecuteWorkspaceCommand().

Here is the call graph for this function:

◆ FocusNextWindow()

void yaze::editor::WorkspaceManager::FocusNextWindow ( )
Todo:
Implement proper window cycling

Definition at line 214 of file workspace_manager.cc.

◆ FocusPreviousWindow()

void yaze::editor::WorkspaceManager::FocusPreviousWindow ( )
Todo:
Implement window cycling backward

Definition at line 222 of file workspace_manager.cc.

◆ SplitWindowHorizontal()

void yaze::editor::WorkspaceManager::SplitWindowHorizontal ( )

Definition at line 226 of file workspace_manager.cc.

Referenced by ExecuteWorkspaceCommand().

◆ SplitWindowVertical()

void yaze::editor::WorkspaceManager::SplitWindowVertical ( )

Definition at line 237 of file workspace_manager.cc.

Referenced by ExecuteWorkspaceCommand().

◆ CloseCurrentWindow()

void yaze::editor::WorkspaceManager::CloseCurrentWindow ( )

Definition at line 248 of file workspace_manager.cc.

Referenced by ExecuteWorkspaceCommand().

◆ ExecuteWorkspaceCommand()

◆ GetActiveSessionCount()

size_t yaze::editor::WorkspaceManager::GetActiveSessionCount ( ) const

Definition at line 190 of file workspace_manager.cc.

References sessions_.

◆ HasDuplicateSession()

bool yaze::editor::WorkspaceManager::HasDuplicateSession ( const std::string &  filepath) const

Definition at line 202 of file workspace_manager.cc.

References sessions_.

◆ set_sessions()

void yaze::editor::WorkspaceManager::set_sessions ( std::deque< SessionInfo > *  sessions)
inline

Definition at line 69 of file workspace_manager.h.

References sessions_.

◆ workspace_presets()

const std::vector< std::string > & yaze::editor::WorkspaceManager::workspace_presets ( ) const
inline

Definition at line 71 of file workspace_manager.h.

References workspace_presets_.

◆ workspace_presets_loaded()

bool yaze::editor::WorkspaceManager::workspace_presets_loaded ( ) const
inline

Definition at line 72 of file workspace_manager.h.

References workspace_presets_loaded_.

Member Data Documentation

◆ toast_manager_

◆ card_registry_

EditorCardRegistry* yaze::editor::WorkspaceManager::card_registry_ = nullptr
private

Definition at line 76 of file workspace_manager.h.

Referenced by HideAllWindows(), set_card_registry(), and ShowAllWindows().

◆ sessions_

std::deque<SessionInfo>* yaze::editor::WorkspaceManager::sessions_ = nullptr
private

Definition at line 77 of file workspace_manager.h.

Referenced by GetActiveSessionCount(), HasDuplicateSession(), and set_sessions().

◆ last_workspace_preset_

std::string yaze::editor::WorkspaceManager::last_workspace_preset_
private

Definition at line 78 of file workspace_manager.h.

Referenced by LoadWorkspacePreset(), and SaveWorkspacePreset().

◆ workspace_presets_

std::vector<std::string> yaze::editor::WorkspaceManager::workspace_presets_
private

Definition at line 79 of file workspace_manager.h.

Referenced by RefreshPresets(), SaveWorkspacePreset(), and workspace_presets().

◆ workspace_presets_loaded_

bool yaze::editor::WorkspaceManager::workspace_presets_loaded_ = false
private

The documentation for this class was generated from the following files: