light/modules/mirror/include/mirror/panel/asset_browser.hpp

46 lines
674 B
C++
Raw Normal View History

#pragma once
2025-07-05 13:28:41 +03:30
#include <engine/engine.hpp>
#include <filesystem>
2025-07-05 13:28:41 +03:30
#include <mirror/panel/panel.hpp>
namespace Light {
class AssetBrowserPanel: public Panel
2022-03-06 22:25:23 +03:30
{
public:
AssetBrowserPanel(Ref<Scene> activeScene);
void on_user_interface_update();
2022-03-06 22:25:23 +03:30
private:
2022-03-12 21:10:23 +03:30
enum class AssetType
{
2022-03-06 22:25:23 +03:30
None = 0,
2022-03-12 21:10:23 +03:30
Scene,
2022-03-06 22:25:23 +03:30
Directory,
Text,
Image,
};
std::filesystem::path m_current_directory;
const std::filesystem::path m_assets_path;
2022-03-06 22:25:23 +03:30
uint32_t m_file_size = 128u;
uint32_t m_file_padding = 8u;
2022-03-06 22:25:23 +03:30
Ref<Scene> m_active_scene;
2022-03-12 21:10:23 +03:30
Ref<Texture> m_directory_texture;
Ref<Texture> m_scene_texture;
Ref<Texture> m_image_texture;
Ref<Texture> m_text_texture;
2022-03-06 22:25:23 +03:30
};
2022-03-06 22:25:23 +03:30
} // namespace Light