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_panel_manager (PanelManager *manager)
 
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_
 
PanelManagerpanel_manager_ = 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 21 of file workspace_manager.h.

Constructor & Destructor Documentation

◆ WorkspaceManager()

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

Definition at line 30 of file workspace_manager.h.

Member Function Documentation

◆ set_panel_manager()

void yaze::editor::WorkspaceManager::set_panel_manager ( PanelManager * manager)
inline

Definition at line 34 of file workspace_manager.h.

References panel_manager_.

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 17 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 25 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 33 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 71 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 112 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 119 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 126 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 ( )

Definition at line 133 of file workspace_manager.cc.

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

Referenced by ExecuteWorkspaceCommand().

Here is the call graph for this function:

◆ HideAllWindows()

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

Definition at line 142 of file workspace_manager.cc.

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

Referenced by ExecuteWorkspaceCommand().

Here is the call graph for this function:

◆ MaximizeCurrentWindow()

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

Definition at line 151 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 164 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 179 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 221 of file workspace_manager.cc.

◆ FocusPreviousWindow()

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

Definition at line 229 of file workspace_manager.cc.

◆ SplitWindowHorizontal()

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

Definition at line 233 of file workspace_manager.cc.

Referenced by ExecuteWorkspaceCommand().

◆ SplitWindowVertical()

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

Definition at line 244 of file workspace_manager.cc.

Referenced by ExecuteWorkspaceCommand().

◆ CloseCurrentWindow()

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

Definition at line 255 of file workspace_manager.cc.

Referenced by ExecuteWorkspaceCommand().

◆ ExecuteWorkspaceCommand()

◆ GetActiveSessionCount()

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

Definition at line 194 of file workspace_manager.cc.

References sessions_.

◆ HasDuplicateSession()

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

Definition at line 207 of file workspace_manager.cc.

References sessions_.

◆ set_sessions()

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

Definition at line 72 of file workspace_manager.h.

References sessions_.

◆ workspace_presets()

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

Definition at line 74 of file workspace_manager.h.

References workspace_presets_.

◆ workspace_presets_loaded()

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

Definition at line 77 of file workspace_manager.h.

References workspace_presets_loaded_.

Member Data Documentation

◆ toast_manager_

◆ panel_manager_

PanelManager* yaze::editor::WorkspaceManager::panel_manager_ = nullptr
private

Definition at line 81 of file workspace_manager.h.

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

◆ sessions_

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

Definition at line 82 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 83 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 84 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: