new_editor: isolate project panel state and harden runtime reset
This commit is contained in:
@@ -2,8 +2,6 @@
|
||||
|
||||
#include <XCEditor/Collections/UIEditorTreeView.h>
|
||||
|
||||
#include <XCEngine/UI/Types.h>
|
||||
|
||||
#include <cstdint>
|
||||
#include <filesystem>
|
||||
#include <optional>
|
||||
@@ -49,8 +47,14 @@ public:
|
||||
bool canPreview = false;
|
||||
};
|
||||
|
||||
ProjectBrowserModel() = default;
|
||||
ProjectBrowserModel(const ProjectBrowserModel&) = default;
|
||||
ProjectBrowserModel& operator=(const ProjectBrowserModel&) = default;
|
||||
ProjectBrowserModel(ProjectBrowserModel&&) noexcept = default;
|
||||
ProjectBrowserModel& operator=(ProjectBrowserModel&&) noexcept = default;
|
||||
|
||||
void Reset();
|
||||
void Initialize(const std::filesystem::path& repoRoot);
|
||||
void SetFolderIcon(const ::XCEngine::UI::UITextureHandle& icon);
|
||||
void Refresh();
|
||||
|
||||
bool Empty() const;
|
||||
@@ -110,7 +114,6 @@ private:
|
||||
std::vector<FolderEntry> m_folderEntries = {};
|
||||
std::vector<Widgets::UIEditorTreeViewItem> m_treeItems = {};
|
||||
std::vector<AssetEntry> m_assetEntries = {};
|
||||
::XCEngine::UI::UITextureHandle m_folderIcon = {};
|
||||
std::string m_currentFolderId = {};
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user