Added highlight animations for collectionUp/Down.

This commit is contained in:
Pieter Hulshoff 2019-10-30 21:46:11 +01:00
parent a762d3c07f
commit 3557484e32
3 changed files with 52 additions and 7 deletions

View File

@ -773,20 +773,61 @@ void RetroFE::run( )
else
{
currentPage_->setScrolling(Page::ScrollDirectionIdle); // Stop scrolling
nextPageItem_ = currentPage_->getSelectedItem( );
if ( currentPage_->getSelectedItem( )->leaf ) // Current selection is a game
{
state = RETROFE_BACK_MENU_ENTER;
state = RETROFE_HIGHLIGHT_REQUEST;
}
else // Current selection is a menu
{
nextPageItem_ = currentPage_->getSelectedItem( );
state = RETROFE_NEXT_PAGE_REQUEST;
state = RETROFE_COLLECTION_HIGHLIGHT_EXIT;
}
}
}
break;
// Start onHighlightExit animation
case RETROFE_COLLECTION_HIGHLIGHT_REQUEST:
currentPage_->highlightExit( );
state = RETROFE_COLLECTION_HIGHLIGHT_EXIT;
break;
// Wait for onHighlightExit animation to finish; load art
case RETROFE_COLLECTION_HIGHLIGHT_EXIT:
if (currentPage_->isIdle( ))
{
currentPage_->highlightLoadArt( );
state = RETROFE_COLLECTION_HIGHLIGHT_LOAD_ART;
}
break;
// Start onHighlightEnter animation
case RETROFE_COLLECTION_HIGHLIGHT_LOAD_ART:
currentPage_->highlightEnter( );
state = RETROFE_COLLECTION_HIGHLIGHT_ENTER;
break;
// Wait for onHighlightEnter animation to finish
case RETROFE_COLLECTION_HIGHLIGHT_ENTER:
if (currentPage_->isIdle( ))
{
RETROFE_STATE state_tmp = processUserInput( currentPage_ );
if ( state_tmp == RETROFE_COLLECTION_UP_REQUEST )
{
state = RETROFE_COLLECTION_UP_REQUEST;
}
else if ( state_tmp == RETROFE_COLLECTION_DOWN_REQUEST )
{
state = RETROFE_COLLECTION_DOWN_REQUEST;
}
else
{
state = RETROFE_NEXT_PAGE_REQUEST;
}
}
break;
// Start exit animation
case RETROFE_COLLECTION_DOWN_REQUEST:
if ( !pages_.empty( ) && currentPage_->getMenuDepth( ) == 1) // Inside a collection with a different layout
@ -889,14 +930,14 @@ void RetroFE::run( )
else
{
currentPage_->setScrolling(Page::ScrollDirectionIdle); // Stop scrolling
nextPageItem_ = currentPage_->getSelectedItem( );
if ( currentPage_->getSelectedItem( )->leaf ) // Current selection is a game
{
state = RETROFE_BACK_MENU_ENTER;
state = RETROFE_HIGHLIGHT_REQUEST;
}
else // Current selection is a menu
{
nextPageItem_ = currentPage_->getSelectedItem( );
state = RETROFE_NEXT_PAGE_REQUEST;
state = RETROFE_COLLECTION_HIGHLIGHT_EXIT;
}
}
}

View File

@ -83,6 +83,10 @@ private:
RETROFE_COLLECTION_UP_MENU_ENTER,
RETROFE_COLLECTION_UP_ENTER,
RETROFE_COLLECTION_UP_SCROLL,
RETROFE_COLLECTION_HIGHLIGHT_REQUEST,
RETROFE_COLLECTION_HIGHLIGHT_EXIT,
RETROFE_COLLECTION_HIGHLIGHT_LOAD_ART,
RETROFE_COLLECTION_HIGHLIGHT_ENTER,
RETROFE_COLLECTION_DOWN_REQUEST,
RETROFE_COLLECTION_DOWN_EXIT,
RETROFE_COLLECTION_DOWN_MENU_ENTER,

View File

@ -21,7 +21,7 @@
std::string retrofe_version_major = "0";
std::string retrofe_version_minor = "9";
std::string retrofe_version_build = "9";
std::string retrofe_version_build = "10";
std::string Version::getString( )