Olympe Engine 2.0
2D Game Engine with ECS Architecture
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Olympe::BlueprintEditorGUI Class Reference

BlueprintEditorGUI - Frontend UI for Blueprint Editor Renders ImGui interface and interacts with BlueprintEditor backend Contains NO business logic - all data operations go through backend. More...

#include <BlueprintEditorGUI.h>

+ Collaboration diagram for Olympe::BlueprintEditorGUI:

Public Member Functions

 BlueprintEditorGUI ()
 
 ~BlueprintEditorGUI ()
 
void Initialize ()
 
void Shutdown ()
 
void Render ()
 

Private Member Functions

void RenderMenuBar ()
 
void RenderEntityPanel ()
 
void RenderNodeEditor ()
 
void RenderPropertyPanel ()
 
void RenderStatusBar ()
 
void RenderComponentAddDialog ()
 
void RenderPreferencesDialog ()
 
void RenderShortcutsDialog ()
 
void RenderMigrationDialog ()
 
void HandleKeyboardShortcuts ()
 
void NewBlueprint ()
 
void LoadBlueprint (const std::string &filepath)
 
void SaveBlueprint ()
 
void SaveBlueprintAs ()
 
void AddComponent (const std::string &type)
 
void RemoveComponent (int index)
 

Private Attributes

int m_SelectedComponentIndex
 
std::map< int, ImVec2m_NodePositions
 
std::vector< NodeConnectionm_Connections
 
int m_NextNodeId
 
bool m_ShowDemoWindow
 
bool m_ShowAddComponentDialog
 
bool m_ShowAboutDialog
 
char m_NewBlueprintNameBuffer [256]
 
char m_FilepathBuffer [512]
 
int m_SelectedComponentType
 
bool m_ShowAssetBrowser
 
bool m_ShowAssetInfo
 
bool m_ShowInspector
 
bool m_ShowNodeGraph
 
bool m_ShowEntities
 
bool m_ShowEntityProperties
 
bool m_ShowComponentGraph
 
bool m_ShowPropertyPanel
 
bool m_ShowTemplateBrowser
 
bool m_ShowHistory
 
bool m_ShowPreferences
 
bool m_ShowShortcuts
 
AssetBrowser m_AssetBrowser
 
AssetInfoPanel m_AssetInfoPanel
 
NodeGraphPanel m_NodeGraphPanel
 
EntitiesPanel m_EntitiesPanel
 
InspectorPanel m_InspectorPanel
 
class TemplateBrowserPanelm_TemplateBrowserPanel
 
class HistoryPanelm_HistoryPanel
 

Detailed Description

BlueprintEditorGUI - Frontend UI for Blueprint Editor Renders ImGui interface and interacts with BlueprintEditor backend Contains NO business logic - all data operations go through backend.

Definition at line 40 of file BlueprintEditorGUI.h.

Constructor & Destructor Documentation

◆ BlueprintEditorGUI()

Olympe::BlueprintEditorGUI::BlueprintEditorGUI ( )

Definition at line 18 of file BlueprintEditorGUI.cpp.

References m_FilepathBuffer, and m_NewBlueprintNameBuffer.

◆ ~BlueprintEditorGUI()

Olympe::BlueprintEditorGUI::~BlueprintEditorGUI ( )

Definition at line 44 of file BlueprintEditorGUI.cpp.

References m_HistoryPanel, and m_TemplateBrowserPanel.

Member Function Documentation

◆ AddComponent()

void Olympe::BlueprintEditorGUI::AddComponent ( const std::string &  type)
private

◆ HandleKeyboardShortcuts()

void Olympe::BlueprintEditorGUI::HandleKeyboardShortcuts ( )
private

Definition at line 954 of file BlueprintEditorGUI.cpp.

References Olympe::BlueprintEditor::Get(), GetComponentTypeID_Static(), LoadBlueprint(), m_ShowTemplateBrowser, NewBlueprint(), SaveBlueprint(), and SaveBlueprintAs().

Referenced by Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Initialize()

void Olympe::BlueprintEditorGUI::Initialize ( )

◆ LoadBlueprint()

void Olympe::BlueprintEditorGUI::LoadBlueprint ( const std::string &  filepath)
private

Definition at line 711 of file BlueprintEditorGUI.cpp.

References Olympe::BlueprintEditor::Get(), LoadBlueprint(), m_NodePositions, and m_SelectedComponentIndex.

Referenced by HandleKeyboardShortcuts(), Initialize(), LoadBlueprint(), and Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ NewBlueprint()

void Olympe::BlueprintEditorGUI::NewBlueprint ( )
private

Definition at line 701 of file BlueprintEditorGUI.cpp.

References Olympe::BlueprintEditor::Get(), m_NodePositions, m_SelectedComponentIndex, and Olympe::BlueprintEditor::NewBlueprint().

Referenced by HandleKeyboardShortcuts(), and Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RemoveComponent()

void Olympe::BlueprintEditorGUI::RemoveComponent ( int  index)
private

◆ Render()

void Olympe::BlueprintEditorGUI::Render ( )

◆ RenderComponentAddDialog()

void Olympe::BlueprintEditorGUI::RenderComponentAddDialog ( )
private

Definition at line 660 of file BlueprintEditorGUI.cpp.

References AddComponent(), GetComponentTypeID_Static(), m_SelectedComponentType, and m_ShowAddComponentDialog.

Referenced by Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RenderEntityPanel()

void Olympe::BlueprintEditorGUI::RenderEntityPanel ( )
private

Definition at line 444 of file BlueprintEditorGUI.cpp.

References Olympe::BlueprintEditor::Get(), GetComponentTypeID_Static(), m_SelectedComponentIndex, m_ShowAddComponentDialog, and RemoveComponent().

+ Here is the call graph for this function:

◆ RenderMenuBar()

void Olympe::BlueprintEditorGUI::RenderMenuBar ( )
private

Definition at line 440 of file BlueprintEditorGUI.cpp.

◆ RenderMigrationDialog()

void Olympe::BlueprintEditorGUI::RenderMigrationDialog ( )
private

Definition at line 900 of file BlueprintEditorGUI.cpp.

References Olympe::BlueprintEditor::Get(), and GetComponentTypeID_Static().

Referenced by Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RenderNodeEditor()

void Olympe::BlueprintEditorGUI::RenderNodeEditor ( )
private

Definition at line 518 of file BlueprintEditorGUI.cpp.

References Olympe::BlueprintEditor::Get(), GetComponentTypeID_Static(), m_NodePositions, and m_SelectedComponentIndex.

+ Here is the call graph for this function:

◆ RenderPreferencesDialog()

void Olympe::BlueprintEditorGUI::RenderPreferencesDialog ( )
private

Definition at line 818 of file BlueprintEditorGUI.cpp.

References GetComponentTypeID_Static(), and m_ShowPreferences.

Referenced by Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RenderPropertyPanel()

void Olympe::BlueprintEditorGUI::RenderPropertyPanel ( )
private

Definition at line 586 of file BlueprintEditorGUI.cpp.

References Olympe::BlueprintEditor::Get(), GetComponentTypeID_Static(), and m_SelectedComponentIndex.

+ Here is the call graph for this function:

◆ RenderShortcutsDialog()

void Olympe::BlueprintEditorGUI::RenderShortcutsDialog ( )
private

Definition at line 851 of file BlueprintEditorGUI.cpp.

References GetComponentTypeID_Static(), and m_ShowShortcuts.

Referenced by Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RenderStatusBar()

void Olympe::BlueprintEditorGUI::RenderStatusBar ( )
private

Definition at line 621 of file BlueprintEditorGUI.cpp.

References Olympe::BlueprintEditor::Get(), and GetComponentTypeID_Static().

Referenced by Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SaveBlueprint()

void Olympe::BlueprintEditorGUI::SaveBlueprint ( )
private

Definition at line 722 of file BlueprintEditorGUI.cpp.

References Olympe::BlueprintEditor::Get(), and GetComponentTypeID_Static().

Referenced by HandleKeyboardShortcuts(), and Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SaveBlueprintAs()

void Olympe::BlueprintEditorGUI::SaveBlueprintAs ( )
private

Definition at line 739 of file BlueprintEditorGUI.cpp.

References Olympe::BlueprintEditor::Get(), and GetComponentTypeID_Static().

Referenced by HandleKeyboardShortcuts(), and Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Shutdown()

void Olympe::BlueprintEditorGUI::Shutdown ( )

Member Data Documentation

◆ m_AssetBrowser

AssetBrowser Olympe::BlueprintEditorGUI::m_AssetBrowser
private

Definition at line 112 of file BlueprintEditorGUI.h.

Referenced by Initialize(), and Render().

◆ m_AssetInfoPanel

AssetInfoPanel Olympe::BlueprintEditorGUI::m_AssetInfoPanel
private

Definition at line 113 of file BlueprintEditorGUI.h.

◆ m_Connections

std::vector<NodeConnection> Olympe::BlueprintEditorGUI::m_Connections
private

Definition at line 84 of file BlueprintEditorGUI.h.

◆ m_EntitiesPanel

EntitiesPanel Olympe::BlueprintEditorGUI::m_EntitiesPanel
private

Definition at line 117 of file BlueprintEditorGUI.h.

Referenced by Initialize(), and Shutdown().

◆ m_FilepathBuffer

char Olympe::BlueprintEditorGUI::m_FilepathBuffer[512]
private

Definition at line 92 of file BlueprintEditorGUI.h.

Referenced by BlueprintEditorGUI().

◆ m_HistoryPanel

class HistoryPanel* Olympe::BlueprintEditorGUI::m_HistoryPanel
private

Definition at line 124 of file BlueprintEditorGUI.h.

Referenced by Initialize(), Render(), Shutdown(), and ~BlueprintEditorGUI().

◆ m_InspectorPanel

InspectorPanel Olympe::BlueprintEditorGUI::m_InspectorPanel
private

Definition at line 118 of file BlueprintEditorGUI.h.

Referenced by Initialize(), Render(), and Shutdown().

◆ m_NewBlueprintNameBuffer

char Olympe::BlueprintEditorGUI::m_NewBlueprintNameBuffer[256]
private

Definition at line 91 of file BlueprintEditorGUI.h.

Referenced by BlueprintEditorGUI().

◆ m_NextNodeId

int Olympe::BlueprintEditorGUI::m_NextNodeId
private

Definition at line 85 of file BlueprintEditorGUI.h.

◆ m_NodeGraphPanel

NodeGraphPanel Olympe::BlueprintEditorGUI::m_NodeGraphPanel
private

Definition at line 116 of file BlueprintEditorGUI.h.

Referenced by Initialize(), Render(), and Shutdown().

◆ m_NodePositions

std::map<int, ImVec2> Olympe::BlueprintEditorGUI::m_NodePositions
private

Definition at line 83 of file BlueprintEditorGUI.h.

Referenced by LoadBlueprint(), NewBlueprint(), and RenderNodeEditor().

◆ m_SelectedComponentIndex

int Olympe::BlueprintEditorGUI::m_SelectedComponentIndex
private

◆ m_SelectedComponentType

int Olympe::BlueprintEditorGUI::m_SelectedComponentType
private

Definition at line 93 of file BlueprintEditorGUI.h.

Referenced by RenderComponentAddDialog().

◆ m_ShowAboutDialog

bool Olympe::BlueprintEditorGUI::m_ShowAboutDialog
private

Definition at line 90 of file BlueprintEditorGUI.h.

Referenced by Render().

◆ m_ShowAddComponentDialog

bool Olympe::BlueprintEditorGUI::m_ShowAddComponentDialog
private

Definition at line 89 of file BlueprintEditorGUI.h.

Referenced by Render(), RenderComponentAddDialog(), and RenderEntityPanel().

◆ m_ShowAssetBrowser

bool Olympe::BlueprintEditorGUI::m_ShowAssetBrowser
private

Definition at line 96 of file BlueprintEditorGUI.h.

Referenced by Render().

◆ m_ShowAssetInfo

bool Olympe::BlueprintEditorGUI::m_ShowAssetInfo
private

Definition at line 97 of file BlueprintEditorGUI.h.

◆ m_ShowComponentGraph

bool Olympe::BlueprintEditorGUI::m_ShowComponentGraph
private

Definition at line 102 of file BlueprintEditorGUI.h.

◆ m_ShowDemoWindow

bool Olympe::BlueprintEditorGUI::m_ShowDemoWindow
private

Definition at line 88 of file BlueprintEditorGUI.h.

Referenced by Render().

◆ m_ShowEntities

bool Olympe::BlueprintEditorGUI::m_ShowEntities
private

Definition at line 100 of file BlueprintEditorGUI.h.

◆ m_ShowEntityProperties

bool Olympe::BlueprintEditorGUI::m_ShowEntityProperties
private

Definition at line 101 of file BlueprintEditorGUI.h.

◆ m_ShowHistory

bool Olympe::BlueprintEditorGUI::m_ShowHistory
private

Definition at line 105 of file BlueprintEditorGUI.h.

Referenced by Render().

◆ m_ShowInspector

bool Olympe::BlueprintEditorGUI::m_ShowInspector
private

Definition at line 98 of file BlueprintEditorGUI.h.

Referenced by Render().

◆ m_ShowNodeGraph

bool Olympe::BlueprintEditorGUI::m_ShowNodeGraph
private

Definition at line 99 of file BlueprintEditorGUI.h.

Referenced by Render().

◆ m_ShowPreferences

bool Olympe::BlueprintEditorGUI::m_ShowPreferences
private

Definition at line 108 of file BlueprintEditorGUI.h.

Referenced by Render(), and RenderPreferencesDialog().

◆ m_ShowPropertyPanel

bool Olympe::BlueprintEditorGUI::m_ShowPropertyPanel
private

Definition at line 103 of file BlueprintEditorGUI.h.

◆ m_ShowShortcuts

bool Olympe::BlueprintEditorGUI::m_ShowShortcuts
private

Definition at line 109 of file BlueprintEditorGUI.h.

Referenced by Render(), and RenderShortcutsDialog().

◆ m_ShowTemplateBrowser

bool Olympe::BlueprintEditorGUI::m_ShowTemplateBrowser
private

Definition at line 104 of file BlueprintEditorGUI.h.

Referenced by HandleKeyboardShortcuts(), and Render().

◆ m_TemplateBrowserPanel

class TemplateBrowserPanel* Olympe::BlueprintEditorGUI::m_TemplateBrowserPanel
private

Definition at line 121 of file BlueprintEditorGUI.h.

Referenced by Initialize(), Render(), Shutdown(), and ~BlueprintEditorGUI().


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