Move project services out of editor features
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
#include <cmath>
|
||||
#include <string_view>
|
||||
#include "System/SystemInteractionService.h"
|
||||
#include "Project/EditorProjectRuntime.h"
|
||||
#include "Services/Project/EditorProjectRuntime.h"
|
||||
#include "State/EditorCommandFocusService.h"
|
||||
#include <XCEditor/Fields/UIEditorFieldStyle.h>
|
||||
#include <XCEditor/Foundation/UIEditorPanelInputFilter.h>
|
||||
@@ -372,10 +372,18 @@ void ProjectPanel::RebuildWindowTreeItems() {
|
||||
return;
|
||||
}
|
||||
|
||||
m_windowTreeItems = GetBrowserModel().GetTreeItems();
|
||||
const UITextureHandle folderIcon = ResolveFolderIcon(m_icons);
|
||||
for (Widgets::UIEditorTreeViewItem& item : m_windowTreeItems) {
|
||||
const std::vector<FolderEntry>& folderEntries =
|
||||
GetBrowserModel().GetFolderEntries();
|
||||
m_windowTreeItems.reserve(folderEntries.size());
|
||||
for (const FolderEntry& folderEntry : folderEntries) {
|
||||
Widgets::UIEditorTreeViewItem item = {};
|
||||
item.itemId = folderEntry.itemId;
|
||||
item.label = folderEntry.label;
|
||||
item.depth = folderEntry.depth;
|
||||
item.forceLeaf = !folderEntry.hasChildFolders;
|
||||
item.leadingIcon = folderIcon;
|
||||
m_windowTreeItems.push_back(std::move(item));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1660,7 +1668,7 @@ void ProjectPanel::Update(
|
||||
return;
|
||||
}
|
||||
|
||||
if (GetBrowserModel().GetTreeItems().empty()) {
|
||||
if (GetBrowserModel().GetFolderEntries().empty()) {
|
||||
ResolveProjectRuntime()->Refresh();
|
||||
SyncSelectionsFromRuntime();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user