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_window_manager (WorkspaceWindowManager *manager)
 
void set_layout_manager (LayoutManager *manager)
 
void set_apply_preset_callback (std::function< void(const std::string &)> callback)
 
absl::Status SaveWorkspaceLayout (const std::string &name="")
 
absl::Status LoadWorkspaceLayout (const std::string &name="")
 
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 ()
 
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

ToastManager * toast_manager_
 
WorkspaceWindowManager * window_manager_ = nullptr
 
LayoutManager * layout_manager_ = nullptr
 
std::function< void(const std::string &) apply_preset_callback_ )
 
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 23 of file workspace_manager.h.

Constructor & Destructor Documentation

◆ WorkspaceManager()

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

Definition at line 32 of file workspace_manager.h.

Member Function Documentation

◆ set_window_manager()

void yaze::editor::WorkspaceManager::set_window_manager ( WorkspaceWindowManager * manager)
inline

Definition at line 36 of file workspace_manager.h.

References window_manager_.

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

◆ set_layout_manager()

void yaze::editor::WorkspaceManager::set_layout_manager ( LayoutManager * manager)
inline

Definition at line 40 of file workspace_manager.h.

References layout_manager_.

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

◆ set_apply_preset_callback()

void yaze::editor::WorkspaceManager::set_apply_preset_callback ( std::function< void(const std::string &)> callback)
inline

◆ SaveWorkspaceLayout()

absl::Status yaze::editor::WorkspaceManager::SaveWorkspaceLayout ( const std::string & name = "")

◆ LoadWorkspaceLayout()

absl::Status yaze::editor::WorkspaceManager::LoadWorkspaceLayout ( const std::string & name = "")

◆ SaveWorkspacePreset()

◆ LoadWorkspacePreset()

◆ RefreshPresets()

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

◆ LoadDeveloperLayout()

void yaze::editor::WorkspaceManager::LoadDeveloperLayout ( )

Definition at line 153 of file workspace_manager.cc.

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

Here is the call graph for this function:

◆ LoadDesignerLayout()

void yaze::editor::WorkspaceManager::LoadDesignerLayout ( )

Definition at line 161 of file workspace_manager.cc.

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

Here is the call graph for this function:

◆ LoadModderLayout()

void yaze::editor::WorkspaceManager::LoadModderLayout ( )

Definition at line 169 of file workspace_manager.cc.

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

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 ( )

◆ RestoreAllWindows()

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

Definition at line 209 of file workspace_manager.cc.

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

Here is the call graph for this function:

◆ CloseAllFloatingWindows()

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

Definition at line 224 of file workspace_manager.cc.

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

Here is the call graph for this function:

◆ FocusNextWindow()

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

Definition at line 266 of file workspace_manager.cc.

◆ FocusPreviousWindow()

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

Definition at line 274 of file workspace_manager.cc.

◆ SplitWindowHorizontal()

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

Definition at line 278 of file workspace_manager.cc.

◆ SplitWindowVertical()

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

Definition at line 289 of file workspace_manager.cc.

◆ CloseCurrentWindow()

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

Definition at line 300 of file workspace_manager.cc.

◆ GetActiveSessionCount()

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

Definition at line 239 of file workspace_manager.cc.

References sessions_.

◆ HasDuplicateSession()

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

Definition at line 252 of file workspace_manager.cc.

References sessions_.

◆ set_sessions()

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

Definition at line 76 of file workspace_manager.h.

References sessions_.

◆ workspace_presets()

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

Definition at line 78 of file workspace_manager.h.

References workspace_presets_.

◆ workspace_presets_loaded()

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

Definition at line 81 of file workspace_manager.h.

References workspace_presets_loaded_.

Member Data Documentation

◆ toast_manager_

◆ window_manager_

WorkspaceWindowManager* yaze::editor::WorkspaceManager::window_manager_ = nullptr
private

Definition at line 85 of file workspace_manager.h.

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

◆ layout_manager_

LayoutManager* yaze::editor::WorkspaceManager::layout_manager_ = nullptr
private

◆ apply_preset_callback_

std::function<void(const std::string&) yaze::editor::WorkspaceManager::apply_preset_callback_)
private

◆ sessions_

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

Definition at line 88 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 89 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 90 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: