Aurore
A Switch-like interface for your app, on every screen
Loading...
Searching...
No Matches
aurore::RecyclingView Class Referenceabstract

#include <aurore/views/recycling_grid.hpp>

Inheritance diagram for aurore::RecyclingView:
aurore::HRecyclerFrame aurore::RecyclingGrid

Public Member Functions

virtual ~RecyclingView ()
 
void registerCell (std::string identifier, std::function< RecyclingGridItem *()> allocation)
 
RecyclingGridItem * dequeueReusableCell (std::string identifier)
 
void setDataSource (RecyclingGridDataSource *source, bool deleteDataSource=true)
 
RecyclingGridDataSource * getDataSource () const
 
void reloadData ()
 
void notifyDataChanged ()
 
void clearData ()
 
void onEndReached (std::function< void()> callback)
 
void onNextPage (std::function< void()> callback)
 
void forceRequestNextPage ()
 
void selectRowAt (size_t index, bool animated)
 
RecyclingGridItem * getGridItemByIndex (size_t index)
 
void setDefaultCellFocus (size_t index)
 
size_t getDefaultCellFocus () const
 
size_t getItemCount ()
 
int getSpanCount () const
 
virtual Box * getFrameBox ()=0
 
View * getNextCellFocus (FocusDirection direction, View *currentView)
 

Protected Member Functions

 RecyclingView (Axis scrollAxis)
 
virtual float getScrollOffset ()=0
 
virtual void setScrollOffset (float offset, bool animated)=0
 
void recyclingLoop ()
 
void layoutChanged ()
 
void flushLayout ()
 
void queuedCellsThemeChanged ()
 
View * defaultCell ()
 

Protected Attributes

Box * contentBox = nullptr
 
float paddingTop = 0
 
float paddingRight = 0
 
float paddingBottom = 0
 
float paddingLeft = 0
 
int spanCount = 1
 
float minimumLineSize = 0
 
float itemSize = 240
 
float itemSpace = 20
 
int preFetchLine = 1
 

Constructor & Destructor Documentation

◆ ~RecyclingView()

virtual aurore::RecyclingView::~RecyclingView ( )
virtual

◆ RecyclingView()

aurore::RecyclingView::RecyclingView ( Axis  scrollAxis)
protected

Member Function Documentation

◆ clearData()

void aurore::RecyclingView::clearData ( )

◆ defaultCell()

View * aurore::RecyclingView::defaultCell ( )
protected

◆ dequeueReusableCell()

RecyclingGridItem * aurore::RecyclingView::dequeueReusableCell ( std::string  identifier)

◆ flushLayout()

void aurore::RecyclingView::flushLayout ( )
protected

◆ forceRequestNextPage()

void aurore::RecyclingView::forceRequestNextPage ( )
inline

◆ getDataSource()

RecyclingGridDataSource * aurore::RecyclingView::getDataSource ( ) const
inline

◆ getDefaultCellFocus()

size_t aurore::RecyclingView::getDefaultCellFocus ( ) const
inline

◆ getFrameBox()

virtual Box * aurore::RecyclingView::getFrameBox ( )
pure virtual

◆ getGridItemByIndex()

RecyclingGridItem * aurore::RecyclingView::getGridItemByIndex ( size_t  index)

◆ getItemCount()

size_t aurore::RecyclingView::getItemCount ( )

◆ getNextCellFocus()

View * aurore::RecyclingView::getNextCellFocus ( FocusDirection  direction,
View *  currentView 
)

◆ getScrollOffset()

virtual float aurore::RecyclingView::getScrollOffset ( )
protectedpure virtual

◆ getSpanCount()

int aurore::RecyclingView::getSpanCount ( ) const
inline

◆ layoutChanged()

void aurore::RecyclingView::layoutChanged ( )
protected

◆ notifyDataChanged()

void aurore::RecyclingView::notifyDataChanged ( )

◆ onEndReached()

void aurore::RecyclingView::onEndReached ( std::function< void()>  callback)
inline

◆ onNextPage()

void aurore::RecyclingView::onNextPage ( std::function< void()>  callback)
inline

◆ queuedCellsThemeChanged()

void aurore::RecyclingView::queuedCellsThemeChanged ( )
protected

◆ recyclingLoop()

void aurore::RecyclingView::recyclingLoop ( )
protected

◆ registerCell()

void aurore::RecyclingView::registerCell ( std::string  identifier,
std::function< RecyclingGridItem *()>  allocation 
)

◆ reloadData()

void aurore::RecyclingView::reloadData ( )

◆ selectRowAt()

void aurore::RecyclingView::selectRowAt ( size_t  index,
bool  animated 
)

◆ setDataSource()

void aurore::RecyclingView::setDataSource ( RecyclingGridDataSource *  source,
bool  deleteDataSource = true 
)

◆ setDefaultCellFocus()

void aurore::RecyclingView::setDefaultCellFocus ( size_t  index)
inline

◆ setScrollOffset()

virtual void aurore::RecyclingView::setScrollOffset ( float  offset,
bool  animated 
)
protectedpure virtual

Member Data Documentation

◆ contentBox

Box* aurore::RecyclingView::contentBox = nullptr
protected

◆ itemSize

float aurore::RecyclingView::itemSize = 240
protected

◆ itemSpace

float aurore::RecyclingView::itemSpace = 20
protected

◆ minimumLineSize

float aurore::RecyclingView::minimumLineSize = 0
protected

◆ paddingBottom

float aurore::RecyclingView::paddingBottom = 0
protected

◆ paddingLeft

float aurore::RecyclingView::paddingLeft = 0
protected

◆ paddingRight

float aurore::RecyclingView::paddingRight = 0
protected

◆ paddingTop

float aurore::RecyclingView::paddingTop = 0
protected

◆ preFetchLine

int aurore::RecyclingView::preFetchLine = 1
protected

◆ spanCount

int aurore::RecyclingView::spanCount = 1
protected

The documentation for this class was generated from the following file: