39 lines
722 B
C++
39 lines
722 B
C++
#pragma once
|
|
|
|
#include <imgui.h>
|
|
#include <string>
|
|
|
|
struct ID3D12Device;
|
|
struct ID3D12CommandQueue;
|
|
|
|
namespace XCEngine {
|
|
namespace Editor {
|
|
namespace UI {
|
|
|
|
class ImGuiBackendBridge;
|
|
|
|
enum class AssetIconKind {
|
|
Folder,
|
|
File,
|
|
GameObject,
|
|
Scene
|
|
};
|
|
|
|
void InitializeBuiltInIcons(
|
|
ImGuiBackendBridge& backend,
|
|
ID3D12Device* device,
|
|
ID3D12CommandQueue* commandQueue);
|
|
|
|
void ShutdownBuiltInIcons();
|
|
|
|
void DrawAssetIcon(ImDrawList* drawList, const ImVec2& min, const ImVec2& max, AssetIconKind kind);
|
|
bool DrawTextureAssetPreview(
|
|
ImDrawList* drawList,
|
|
const ImVec2& min,
|
|
const ImVec2& max,
|
|
const std::string& filePath);
|
|
|
|
} // namespace UI
|
|
} // namespace Editor
|
|
} // namespace XCEngine
|