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

39 lines
1.2 KiB
C++

#pragma once
#include "core/SharedPtr.h"
#include "gui/views/ViewContainer.h"
#include "BannerView.h"
#include "gui/views/LabelView.h"
#include "../FileType/FileIcon.h"
#include "../DisplayMode/RomBrowserDisplayMode.h"
class RomBrowserViewModel;
class IRomBrowserViewFactory;
class RomBrowserTopScreenView : public ViewContainer
{
public:
RomBrowserTopScreenView(const SharedPtr<RomBrowserViewModel>& viewModel,
const RomBrowserDisplayMode* displayMode,
const IThemeFileIconFactory* themeFileIconFactory,
const IRomBrowserViewFactory* romBrowserViewFactory);
void InitVram(const VramContext& vramContext) override;
void Update() override;
void VBlank() override;
Rectangle GetBounds() const override
{
return Rectangle(0, 0, 256, 192);
}
private:
SharedPtr<RomBrowserViewModel> _viewModel;
const IThemeFileIconFactory* _themeFileIconFactory;
std::unique_ptr<BannerView> _fileInfoView;
std::unique_ptr<FileIcon> _selectedFileIcon;
SharedPtr<FileCover> _selectedFileCover;
int _lastSelectedItem = -1;
bool _iconGraphicsUploaded = false;
bool _coverGraphicsUploaded = false;
bool _showCover;
};