mirror of
https://github.com/LNH-team/pico-launcher.git
synced 2026-06-02 09:06:54 +02:00
The graphics of an animated nds icon are now not all uploaded to vram at the same time. There are now 1024 bytes available for each icon (previously 4096). Double buffering is used to upload the new icon frame every time it changes.
29 lines
807 B
C++
29 lines
807 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) 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];
|
|
};
|