add PerChoiceScrollElement metric
This commit is contained in:
@@ -89,6 +89,7 @@ Choice7=screen,ScreenExit;text,Exit
|
||||
Choice8=screen,ScreenTest;text,Sandbox
|
||||
ShowIcon=0
|
||||
ShowScroller=1
|
||||
PerChoiceScrollElement=0
|
||||
ScrollerTransform=function(self,offset,itemIndex,numItems) self:x(offset*20 + itemIndex) self:y(20*offset) end
|
||||
ScrollerSecondsPerItem=0
|
||||
ScrollerNumItemsToDraw=20
|
||||
@@ -3091,6 +3092,7 @@ ShowCursor=0
|
||||
ShowScroller=0
|
||||
WrapScroller=0
|
||||
LoopScroller=0
|
||||
PerChoiceScrollElement=1
|
||||
# All on page 1 by default.
|
||||
NumChoicesOnPage1=999
|
||||
SharedSelection=1
|
||||
@@ -3318,6 +3320,7 @@ ShowCursor=0
|
||||
ShowScroller=0
|
||||
WrapScroller=0
|
||||
LoopScroller=0
|
||||
PerChoiceScrollElement=1
|
||||
# All on page 1 by default.
|
||||
NumChoicesOnPage1=999
|
||||
SharedSelection=1
|
||||
|
||||
@@ -40,6 +40,7 @@ void ScreenSelectMaster::Init()
|
||||
WRAP_CURSOR.Load( m_sName, "WrapCursor" );
|
||||
WRAP_SCROLLER.Load( m_sName, "WrapScroller" );
|
||||
LOOP_SCROLLER.Load( m_sName, "LoopScroller" );
|
||||
PER_CHOICE_SCROLL_ELEMENT.Load( m_sName, "PerChoiceScrollElement" );
|
||||
ALLOW_REPEATING_INPUT.Load( m_sName, "AllowRepeatingInput" );
|
||||
SCROLLER_SECONDS_PER_ITEM.Load( m_sName, "ScrollerSecondsPerItem" );
|
||||
SCROLLER_NUM_ITEMS_TO_DRAW.Load( m_sName, "ScrollerNumItemsToDraw" );
|
||||
@@ -62,7 +63,6 @@ void ScreenSelectMaster::Init()
|
||||
vpns.push_back( p );
|
||||
}
|
||||
|
||||
#define PLAYER_APPEND_WITH_SPACE(p) (SHARED_SELECTION ? RString() : ssprintf(" P%d",(p)+1))
|
||||
#define PLAYER_APPEND_NO_SPACE(p) (SHARED_SELECTION ? RString() : ssprintf("P%d",(p)+1))
|
||||
|
||||
// init cursor
|
||||
@@ -70,7 +70,7 @@ void ScreenSelectMaster::Init()
|
||||
{
|
||||
FOREACH( PlayerNumber, vpns, p )
|
||||
{
|
||||
RString sElement = "Cursor" + PLAYER_APPEND_WITH_SPACE(*p);
|
||||
RString sElement = "Cursor " + PLAYER_APPEND_NO_SPACE(*p);
|
||||
m_sprCursor[*p].Load( THEME->GetPathG(m_sName,sElement) );
|
||||
sElement.Replace( " ", "" );
|
||||
m_sprCursor[*p]->SetName( sElement );
|
||||
@@ -108,7 +108,13 @@ void ScreenSelectMaster::Init()
|
||||
{
|
||||
FOREACH( PlayerNumber, vpns, p )
|
||||
{
|
||||
RString sElement = ssprintf( "Scroll Choice%s", mc.m_sName.c_str() ) + PLAYER_APPEND_WITH_SPACE(*p);
|
||||
vector<RString> vs;
|
||||
vs.push_back( "scroll" );
|
||||
if( PER_CHOICE_SCROLL_ELEMENT )
|
||||
vs.push_back( "choice" + mc.m_sName );
|
||||
if( !SHARED_SELECTION )
|
||||
vs.push_back( PLAYER_APPEND_NO_SPACE(*p) );
|
||||
RString sElement = join( " ", vs );
|
||||
m_vsprScroll[*p][c].Load( THEME->GetPathG(m_sName,sElement) );
|
||||
sElement.Replace( " ", "" );
|
||||
m_vsprScroll[*p][c]->SetName( sElement );
|
||||
|
||||
@@ -32,26 +32,27 @@ protected:
|
||||
Page GetPage( int iChoiceIndex ) const;
|
||||
Page GetCurrentPage() const;
|
||||
|
||||
ThemeMetric<bool> SHOW_ICON;
|
||||
ThemeMetric<bool> SHOW_SCROLLER;
|
||||
ThemeMetric<bool> SHOW_CURSOR;
|
||||
ThemeMetric<bool> SHARED_SELECTION;
|
||||
ThemeMetric<int> NUM_CHOICES_ON_PAGE_1;
|
||||
ThemeMetric<bool> SHOW_ICON;
|
||||
ThemeMetric<bool> SHOW_SCROLLER;
|
||||
ThemeMetric<bool> SHOW_CURSOR;
|
||||
ThemeMetric<bool> SHARED_SELECTION;
|
||||
ThemeMetric<int> NUM_CHOICES_ON_PAGE_1;
|
||||
ThemeMetric1D<float> CURSOR_OFFSET_X_FROM_ICON;
|
||||
ThemeMetric1D<float> CURSOR_OFFSET_Y_FROM_ICON;
|
||||
ThemeMetric<bool> OVERRIDE_LOCK_INPUT_SECONDS;
|
||||
ThemeMetric<float> LOCK_INPUT_SECONDS;
|
||||
ThemeMetric<float> PRE_SWITCH_PAGE_SECONDS;
|
||||
ThemeMetric<float> POST_SWITCH_PAGE_SECONDS;
|
||||
ThemeMetric<bool> OVERRIDE_LOCK_INPUT_SECONDS;
|
||||
ThemeMetric<float> LOCK_INPUT_SECONDS;
|
||||
ThemeMetric<float> PRE_SWITCH_PAGE_SECONDS;
|
||||
ThemeMetric<float> POST_SWITCH_PAGE_SECONDS;
|
||||
ThemeMetric1D<RString> OPTION_ORDER;
|
||||
ThemeMetric<bool> WRAP_CURSOR;
|
||||
ThemeMetric<bool> WRAP_SCROLLER;
|
||||
ThemeMetric<bool> LOOP_SCROLLER;
|
||||
ThemeMetric<bool> ALLOW_REPEATING_INPUT;
|
||||
ThemeMetric<float> SCROLLER_SECONDS_PER_ITEM;
|
||||
ThemeMetric<float> SCROLLER_NUM_ITEMS_TO_DRAW;
|
||||
ThemeMetric<bool> WRAP_CURSOR;
|
||||
ThemeMetric<bool> WRAP_SCROLLER;
|
||||
ThemeMetric<bool> LOOP_SCROLLER;
|
||||
ThemeMetric<bool> PER_CHOICE_SCROLL_ELEMENT;
|
||||
ThemeMetric<bool> ALLOW_REPEATING_INPUT;
|
||||
ThemeMetric<float> SCROLLER_SECONDS_PER_ITEM;
|
||||
ThemeMetric<float> SCROLLER_NUM_ITEMS_TO_DRAW;
|
||||
ThemeMetric<RString> SCROLLER_TRANSFORM;
|
||||
ThemeMetric<int> SCROLLER_SUBDIVISIONS;
|
||||
ThemeMetric<int> SCROLLER_SUBDIVISIONS;
|
||||
ThemeMetric<RString> DEFAULT_CHOICE;
|
||||
|
||||
map<int,int> m_mapCurrentChoiceToNextChoice[NUM_MENU_DIRS];
|
||||
|
||||
Reference in New Issue
Block a user