Files
pico-launcher/arm9/source/romBrowser/Theme/Material/MaterialFileIcon.h
2025-11-25 17:41:31 +01:00

29 lines
813 B
C++

#pragma once
#include "../../FileType/FileIcon.h"
#include "core/math/Rgb.h"
class MaterialColorScheme;
class IFontRepository;
class MaterialFileIcon : public FileIcon
{
public:
MaterialFileIcon(const TCHAR* name, const MaterialColorScheme* materialColorScheme,
const IFontRepository* fontRepository);
void UploadGraphics(vu16* vram) const override;
void Draw(GraphicsContext& graphicsContext, const Rgb<8, 8, 8>& backgroundColor) override;
protected:
const MaterialColorScheme* _materialColorScheme;
const IFontRepository* _fontRepository;
virtual const void* GetIconTiles() const = 0;
virtual Rgb<8, 8, 8> GetIconColor() const = 0;
virtual Rgb<8, 8, 8> GetTextColor() const = 0;
virtual int GetTextYOffset() const = 0;
private:
char16_t _displayName[4];
};