2021-10-23 19:04:29 +03:30
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "Panel.h"
|
|
|
|
|
2022-03-06 22:25:23 +03:30
|
|
|
#include <LightEngine.h>
|
2021-10-23 19:04:29 +03:30
|
|
|
#include <filesystem>
|
|
|
|
|
|
|
|
namespace Light {
|
|
|
|
|
2022-03-06 22:25:23 +03:30
|
|
|
class ContentBrowserPanel: public Panel
|
|
|
|
{
|
|
|
|
private:
|
|
|
|
enum FileType
|
2021-10-23 19:04:29 +03:30
|
|
|
{
|
2022-03-06 22:25:23 +03:30
|
|
|
None = 0,
|
|
|
|
Directory,
|
|
|
|
Text,
|
|
|
|
Image,
|
|
|
|
};
|
2021-10-23 19:04:29 +03:30
|
|
|
|
2022-03-06 22:25:23 +03:30
|
|
|
public:
|
|
|
|
ContentBrowserPanel();
|
2021-10-23 19:04:29 +03:30
|
|
|
|
2022-03-06 22:25:23 +03:30
|
|
|
void OnUserInterfaceUpdate();
|
2021-10-23 19:04:29 +03:30
|
|
|
|
2022-03-06 22:25:23 +03:30
|
|
|
private:
|
|
|
|
std::filesystem::path m_CurrentDirectory;
|
|
|
|
const std::filesystem::path m_AssetsPath;
|
|
|
|
|
|
|
|
// TODO: Save configuration
|
|
|
|
uint32_t m_FileSize = 256u;
|
|
|
|
uint32_t m_FilePadding = 16u;
|
|
|
|
|
|
|
|
Ref<Texture> m_DirectoryTexture;
|
|
|
|
};
|
2021-10-23 19:04:29 +03:30
|
|
|
|
2022-03-06 22:25:23 +03:30
|
|
|
} // namespace Light
|