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

18 lines
553 B
C++

#pragma once
#include "View.h"
#include "RecyclerAdapter.h"
#include "gui/FocusManager.h"
/// @brief Abstract base class for a recycler view that displays a possibly large collection of items
/// provided by an adapter in an efficient way.
class RecyclerViewBase : public View
{
public:
virtual void SetAdapter(const RecyclerAdapter* adapter, int initialSelectedIndex = 0) = 0;
virtual void Focus(FocusManager& focusManager) = 0;
virtual int GetSelectedItem() const = 0;
protected:
const RecyclerAdapter* _adapter = nullptr;
};