WheelItemDisplay -> MusicWheelItem
clean up header dependencies in MusicWheel classes
This commit is contained in:
@@ -760,7 +760,7 @@ CreditsColor=1,1,1,1
|
||||
CreditsShadowLength=0
|
||||
CreditsZoom=1.0
|
||||
|
||||
[WheelItemDisplay]
|
||||
[MusicWheelItem]
|
||||
IconX=-136
|
||||
SongNameX=-30
|
||||
SectionNameX=-30
|
||||
@@ -932,9 +932,9 @@ StartDrawingAtPixels=-60
|
||||
StopDrawingAtPixels=350
|
||||
|
||||
[BPMDisplay]
|
||||
NormalColor=1.0,0.5,0.0,1 // orange
|
||||
ChangeColor=0.6,0.0,0.0,1 // dark red
|
||||
ExtraColor=0.6,0.0,0.0,1 // dark red
|
||||
NormalColor=1.0,1.0,0.0,1 // yellow
|
||||
ChangeColor=1.0,0.5,0.0,1 // orange
|
||||
ExtraColor=0.7,0.0,0.0,1 // dark red
|
||||
|
||||
[GrayArrow]
|
||||
StepZoom=0.75
|
||||
|
||||
@@ -24,6 +24,8 @@
|
||||
#include "GameState.h"
|
||||
#include <math.h>
|
||||
#include "ThemeManager.h"
|
||||
#include "Song.h"
|
||||
#include "Course.h"
|
||||
|
||||
|
||||
#define NUM_WHEEL_ITEMS min( MAX_WHEEL_ITEMS, THEME->GetMetricI("MusicWheel","NumWheelItems") )
|
||||
@@ -179,7 +181,7 @@ MusicWheel::MusicWheel()
|
||||
if(!selected) SetOpenGroup("");
|
||||
|
||||
// rebuild the WheelItems that appear on screen
|
||||
RebuildWheelItemDisplays();
|
||||
RebuildMusicWheelItems();
|
||||
}
|
||||
|
||||
MusicWheel::~MusicWheel()
|
||||
@@ -518,7 +520,7 @@ float MusicWheel::GetBannerX( float fPosOffsetsFromMiddle )
|
||||
return roundf( fX );
|
||||
}
|
||||
|
||||
void MusicWheel::RebuildWheelItemDisplays()
|
||||
void MusicWheel::RebuildMusicWheelItems()
|
||||
{
|
||||
// rewind to first index that will be displayed;
|
||||
int iIndex = m_iSelection;
|
||||
@@ -535,7 +537,7 @@ void MusicWheel::RebuildWheelItemDisplays()
|
||||
for( int i=0; i<NUM_WHEEL_ITEMS; i++ )
|
||||
{
|
||||
WheelItemData *data = m_CurWheelItemData[iIndex];
|
||||
WheelItemDisplay& display = m_WheelItemDisplays[i];
|
||||
MusicWheelItem& display = m_MusicWheelItems[i];
|
||||
|
||||
display.LoadFromWheelItemData( data );
|
||||
|
||||
@@ -551,7 +553,7 @@ void MusicWheel::NotesChanged( PlayerNumber pn ) // update grade graphics and to
|
||||
{
|
||||
for( int i=0; i<NUM_WHEEL_ITEMS; i++ )
|
||||
{
|
||||
WheelItemDisplay& display = m_WheelItemDisplays[i];
|
||||
MusicWheelItem& display = m_MusicWheelItems[i];
|
||||
display.RefreshGrades();
|
||||
}
|
||||
}
|
||||
@@ -562,7 +564,7 @@ void MusicWheel::DrawPrimitives()
|
||||
{
|
||||
for( int i=0; i<NUM_WHEEL_ITEMS; i++ )
|
||||
{
|
||||
WheelItemDisplay& display = m_WheelItemDisplays[i];
|
||||
MusicWheelItem& display = m_MusicWheelItems[i];
|
||||
|
||||
switch( m_WheelState )
|
||||
{
|
||||
@@ -618,7 +620,7 @@ void MusicWheel::Update( float fDeltaTime )
|
||||
unsigned i;
|
||||
for( i=0; i<unsigned(NUM_WHEEL_ITEMS); i++ )
|
||||
{
|
||||
WheelItemDisplay& display = m_WheelItemDisplays[i];
|
||||
MusicWheelItem& display = m_MusicWheelItems[i];
|
||||
|
||||
display.Update( fDeltaTime );
|
||||
}
|
||||
@@ -683,7 +685,7 @@ void MusicWheel::Update( float fDeltaTime )
|
||||
}
|
||||
|
||||
SCREENMAN->PostMessageToTopScreen( SM_SongChanged, 0 );
|
||||
RebuildWheelItemDisplays();
|
||||
RebuildMusicWheelItems();
|
||||
TweenOnScreen(true);
|
||||
m_WheelState = STATE_FLYING_ON_AFTER_NEXT_SORT;
|
||||
}
|
||||
@@ -850,7 +852,7 @@ void MusicWheel::ChangeMusic(int dist)
|
||||
else if( m_iSelection > int(m_CurWheelItemData.size()-1) )
|
||||
m_iSelection = 0;
|
||||
|
||||
RebuildWheelItemDisplays();
|
||||
RebuildMusicWheelItems();
|
||||
|
||||
m_fPositionOffsetFromSelection += dist;
|
||||
|
||||
@@ -912,7 +914,7 @@ bool MusicWheel::Select() // return true of a playable item was chosen
|
||||
return false;
|
||||
}
|
||||
|
||||
switch( m_CurWheelItemData[m_iSelection]->m_WheelItemType )
|
||||
switch( m_CurWheelItemData[m_iSelection]->m_Type )
|
||||
{
|
||||
case TYPE_SECTION:
|
||||
{
|
||||
@@ -924,7 +926,7 @@ bool MusicWheel::Select() // return true of a playable item was chosen
|
||||
|
||||
SetOpenGroup(m_sExpandedSectionName);
|
||||
|
||||
RebuildWheelItemDisplays();
|
||||
RebuildMusicWheelItems();
|
||||
|
||||
|
||||
m_soundExpand.Play();
|
||||
@@ -934,7 +936,7 @@ bool MusicWheel::Select() // return true of a playable item was chosen
|
||||
// find the section header and select it
|
||||
for( unsigned i=0; i<m_CurWheelItemData.size(); i++ )
|
||||
{
|
||||
if( m_CurWheelItemData[i]->m_WheelItemType == TYPE_SECTION
|
||||
if( m_CurWheelItemData[i]->m_Type == TYPE_SECTION
|
||||
&& m_CurWheelItemData[i]->m_sSectionName == sThisItemSectionName )
|
||||
{
|
||||
m_iSelection = i;
|
||||
@@ -983,7 +985,7 @@ void MusicWheel::StartRandom()
|
||||
m_WheelState = STATE_RANDOM_SPINNING;
|
||||
|
||||
this->Select();
|
||||
RebuildWheelItemDisplays();
|
||||
RebuildMusicWheelItems();
|
||||
}
|
||||
|
||||
void MusicWheel::SetOpenGroup(CString group, SongSortOrder so)
|
||||
@@ -1002,8 +1004,8 @@ void MusicWheel::SetOpenGroup(CString group, SongSortOrder so)
|
||||
unsigned i;
|
||||
for(i = 0; i < from.size(); ++i)
|
||||
{
|
||||
if((from[i].m_WheelItemType == TYPE_SONG ||
|
||||
from[i].m_WheelItemType == TYPE_COURSE) &&
|
||||
if((from[i].m_Type == TYPE_SONG ||
|
||||
from[i].m_Type == TYPE_COURSE) &&
|
||||
!from[i].m_sSectionName.empty() &&
|
||||
from[i].m_sSectionName != group)
|
||||
continue;
|
||||
@@ -1018,7 +1020,7 @@ void MusicWheel::SetOpenGroup(CString group, SongSortOrder so)
|
||||
m_iSelection=i;
|
||||
}
|
||||
|
||||
RebuildWheelItemDisplays();
|
||||
RebuildMusicWheelItems();
|
||||
}
|
||||
|
||||
bool MusicWheel::IsRouletting() const
|
||||
@@ -1062,7 +1064,7 @@ void MusicWheel::TweenOnScreen(bool changing_sort)
|
||||
|
||||
for( int i=0; i<NUM_WHEEL_ITEMS; i++ )
|
||||
{
|
||||
WheelItemDisplay& display = m_WheelItemDisplays[i];
|
||||
MusicWheelItem& display = m_MusicWheelItems[i];
|
||||
float fThisBannerPositionOffsetFromSelection = i - NUM_WHEEL_ITEMS/2 + m_fPositionOffsetFromSelection;
|
||||
|
||||
float fX = GetBannerX(fThisBannerPositionOffsetFromSelection);
|
||||
@@ -1105,7 +1107,7 @@ void MusicWheel::TweenOffScreen(bool changing_sort)
|
||||
|
||||
for( int i=0; i<NUM_WHEEL_ITEMS; i++ )
|
||||
{
|
||||
WheelItemDisplay& display = m_WheelItemDisplays[i];
|
||||
MusicWheelItem& display = m_MusicWheelItems[i];
|
||||
float fThisBannerPositionOffsetFromSelection = i - NUM_WHEEL_ITEMS/2 + m_fPositionOffsetFromSelection;
|
||||
|
||||
float fX = GetBannerX(fThisBannerPositionOffsetFromSelection);
|
||||
|
||||
@@ -12,21 +12,17 @@
|
||||
*/
|
||||
|
||||
#include "Sprite.h"
|
||||
#include "song.h"
|
||||
#include "ActorFrame.h"
|
||||
#include "BitmapText.h"
|
||||
#include "Quad.h"
|
||||
#include "TextBanner.h"
|
||||
#include "RandomSample.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "MusicSortDisplay.h"
|
||||
#include "WheelNotifyIcon.h"
|
||||
#include "Screen.h" // for ScreenMessage
|
||||
#include "ScreenMessage.h"
|
||||
#include "ScoreDisplayNormal.h"
|
||||
#include "ScrollBar.h"
|
||||
#include "Course.h"
|
||||
#include "RageTimer.h"
|
||||
#include "MusicWheelItem.h"
|
||||
class Course;
|
||||
class Song;
|
||||
|
||||
|
||||
const int MAX_WHEEL_ITEMS = 15;
|
||||
@@ -71,13 +67,13 @@ public:
|
||||
float GetBannerY( float fPosOffsetsFromMiddle );
|
||||
|
||||
bool Select(); // return true if the selected item is a music, otherwise false
|
||||
WheelItemType GetSelectedType() { return m_CurWheelItemData[m_iSelection]->m_WheelItemType; };
|
||||
WheelItemType GetSelectedType() { return m_CurWheelItemData[m_iSelection]->m_Type; };
|
||||
Song* GetSelectedSong() { return m_CurWheelItemData[m_iSelection]->m_pSong; };
|
||||
Course* GetSelectedCourse() { return m_CurWheelItemData[m_iSelection]->m_pCourse; };
|
||||
CString GetSelectedSection(){ return m_CurWheelItemData[m_iSelection]->m_sSectionName; };
|
||||
|
||||
bool WheelIsLocked() { return (m_WheelState == STATE_LOCKED ? true : false); }
|
||||
void RebuildWheelItemDisplays();
|
||||
void RebuildMusicWheelItems();
|
||||
|
||||
protected:
|
||||
void GetSongList(vector<Song*> &arraySongs, bool bRoulette );
|
||||
@@ -93,7 +89,7 @@ protected:
|
||||
vector<WheelItemData> m_WheelItemDatas[NUM_SORT_ORDERS];
|
||||
vector<WheelItemData *> m_CurWheelItemData;
|
||||
|
||||
WheelItemDisplay m_WheelItemDisplays[MAX_WHEEL_ITEMS];
|
||||
MusicWheelItem m_MusicWheelItems[MAX_WHEEL_ITEMS];
|
||||
|
||||
int m_iSelection; // index into m_CurWheelItemData
|
||||
CString m_sExpandedSectionName;
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
-----------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
#include "MusicWheel.h"
|
||||
#include "MusicWheelItem.h"
|
||||
#include "RageUtil.h"
|
||||
#include "SongManager.h"
|
||||
#include "GameManager.h"
|
||||
@@ -25,25 +25,26 @@
|
||||
#include <math.h>
|
||||
#include "ThemeManager.h"
|
||||
#include "Notes.h"
|
||||
#include "Song.h"
|
||||
|
||||
|
||||
// WheelItem stuff
|
||||
#define ICON_X THEME->GetMetricF("WheelItemDisplay","IconX")
|
||||
#define SONG_NAME_X THEME->GetMetricF("WheelItemDisplay","SongNameX")
|
||||
#define SECTION_NAME_X THEME->GetMetricF("WheelItemDisplay","SectionNameX")
|
||||
#define SECTION_ZOOM THEME->GetMetricF("WheelItemDisplay","SectionZoom")
|
||||
#define ROULETTE_X THEME->GetMetricF("WheelItemDisplay","RouletteX")
|
||||
#define ROULETTE_ZOOM THEME->GetMetricF("WheelItemDisplay","RouletteZoom")
|
||||
#define COURSE_X THEME->GetMetricF("WheelItemDisplay","CourseX")
|
||||
#define COURSE_ZOOM THEME->GetMetricF("WheelItemDisplay","CourseZoom")
|
||||
#define GRADE_X( p ) THEME->GetMetricF("WheelItemDisplay",ssprintf("GradeP%dX",p+1))
|
||||
#define ICON_X THEME->GetMetricF("MusicWheelItem","IconX")
|
||||
#define SONG_NAME_X THEME->GetMetricF("MusicWheelItem","SongNameX")
|
||||
#define SECTION_NAME_X THEME->GetMetricF("MusicWheelItem","SectionNameX")
|
||||
#define SECTION_ZOOM THEME->GetMetricF("MusicWheelItem","SectionZoom")
|
||||
#define ROULETTE_X THEME->GetMetricF("MusicWheelItem","RouletteX")
|
||||
#define ROULETTE_ZOOM THEME->GetMetricF("MusicWheelItem","RouletteZoom")
|
||||
#define COURSE_X THEME->GetMetricF("MusicWheelItem","CourseX")
|
||||
#define COURSE_ZOOM THEME->GetMetricF("MusicWheelItem","CourseZoom")
|
||||
#define GRADE_X( p ) THEME->GetMetricF("MusicWheelItem",ssprintf("GradeP%dX",p+1))
|
||||
|
||||
|
||||
|
||||
|
||||
WheelItemData::WheelItemData( WheelItemType wit, Song* pSong, const CString &sSectionName, Course* pCourse, const RageColor color )
|
||||
WheelItemData::WheelItemData( WheelItemType wit, Song* pSong, CString sSectionName, Course* pCourse, RageColor color )
|
||||
{
|
||||
m_WheelItemType = wit;
|
||||
m_Type = wit;
|
||||
m_pSong = pSong;
|
||||
m_sSectionName = sSectionName;
|
||||
m_pCourse = pCourse;
|
||||
@@ -52,7 +53,7 @@ WheelItemData::WheelItemData( WheelItemType wit, Song* pSong, const CString &sSe
|
||||
}
|
||||
|
||||
|
||||
WheelItemDisplay::WheelItemDisplay()
|
||||
MusicWheelItem::MusicWheelItem()
|
||||
{
|
||||
data = NULL;
|
||||
|
||||
@@ -96,7 +97,7 @@ WheelItemDisplay::WheelItemDisplay()
|
||||
}
|
||||
|
||||
|
||||
void WheelItemDisplay::LoadFromWheelItemData( WheelItemData* pWID )
|
||||
void MusicWheelItem::LoadFromWheelItemData( WheelItemData* pWID )
|
||||
{
|
||||
ASSERT( pWID != NULL );
|
||||
|
||||
@@ -105,7 +106,7 @@ void WheelItemDisplay::LoadFromWheelItemData( WheelItemData* pWID )
|
||||
data = pWID;
|
||||
/*
|
||||
// copy all data items
|
||||
this->m_WheelItemType = pWID->m_WheelItemType;
|
||||
this->m_Type = pWID->m_Type;
|
||||
this->m_sSectionName = pWID->m_sSectionName;
|
||||
this->m_pCourse = pWID->m_pCourse;
|
||||
this->m_pSong = pWID->m_pSong;
|
||||
@@ -114,14 +115,14 @@ void WheelItemDisplay::LoadFromWheelItemData( WheelItemData* pWID )
|
||||
|
||||
|
||||
// init type specific stuff
|
||||
switch( pWID->m_WheelItemType )
|
||||
switch( pWID->m_Type )
|
||||
{
|
||||
case TYPE_SECTION:
|
||||
case TYPE_COURSE:
|
||||
{
|
||||
CString sDisplayName;
|
||||
BitmapText *bt;
|
||||
if(pWID->m_WheelItemType == TYPE_SECTION)
|
||||
if(pWID->m_Type == TYPE_SECTION)
|
||||
{
|
||||
sDisplayName = SONGMAN->ShortenGroupName(data->m_sSectionName);
|
||||
bt = &m_textSectionName;
|
||||
@@ -163,7 +164,7 @@ void WheelItemDisplay::LoadFromWheelItemData( WheelItemData* pWID )
|
||||
}
|
||||
}
|
||||
|
||||
void WheelItemDisplay::RefreshGrades()
|
||||
void MusicWheelItem::RefreshGrades()
|
||||
{
|
||||
// Refresh Grades
|
||||
for( int p=0; p<NUM_PLAYERS; p++ )
|
||||
@@ -188,11 +189,11 @@ void WheelItemDisplay::RefreshGrades()
|
||||
}
|
||||
|
||||
|
||||
void WheelItemDisplay::Update( float fDeltaTime )
|
||||
void MusicWheelItem::Update( float fDeltaTime )
|
||||
{
|
||||
Actor::Update( fDeltaTime );
|
||||
|
||||
switch( data->m_WheelItemType )
|
||||
switch( data->m_Type )
|
||||
{
|
||||
case TYPE_SECTION:
|
||||
m_sprSectionBar.Update( fDeltaTime );
|
||||
@@ -221,10 +222,10 @@ void WheelItemDisplay::Update( float fDeltaTime )
|
||||
}
|
||||
}
|
||||
|
||||
void WheelItemDisplay::DrawPrimitives()
|
||||
void MusicWheelItem::DrawPrimitives()
|
||||
{
|
||||
Sprite *bar = NULL;
|
||||
switch( data->m_WheelItemType )
|
||||
switch( data->m_Type )
|
||||
{
|
||||
case TYPE_SECTION:
|
||||
case TYPE_ROULETTE:
|
||||
@@ -236,7 +237,7 @@ void WheelItemDisplay::DrawPrimitives()
|
||||
|
||||
bar->Draw();
|
||||
|
||||
switch( data->m_WheelItemType )
|
||||
switch( data->m_Type )
|
||||
{
|
||||
case TYPE_SECTION:
|
||||
m_textSectionName.Draw();
|
||||
|
||||
@@ -11,30 +11,20 @@
|
||||
-----------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
#include "ActorFrame.h"
|
||||
#include "GradeDisplay.h"
|
||||
#include "BitmapText.h"
|
||||
#include "WheelNotifyIcon.h"
|
||||
#include "TextBanner.h"
|
||||
class Course;
|
||||
class Song;
|
||||
|
||||
struct WheelItemData;
|
||||
|
||||
enum WheelItemType { TYPE_SECTION, TYPE_SONG, TYPE_ROULETTE, TYPE_RANDOM, TYPE_COURSE };
|
||||
|
||||
struct WheelItemData
|
||||
class MusicWheelItem : public ActorFrame
|
||||
{
|
||||
public:
|
||||
WheelItemData() {}
|
||||
WheelItemData( WheelItemType wit, Song* pSong, const CString &sSectionName, Course* pCourse, const RageColor color );
|
||||
|
||||
WheelItemType m_WheelItemType;
|
||||
CString m_sSectionName;
|
||||
Course* m_pCourse;
|
||||
Song* m_pSong;
|
||||
RageColor m_color; // either text color or section background color
|
||||
WheelNotifyIcon::Flags m_Flags;
|
||||
};
|
||||
|
||||
|
||||
class WheelItemDisplay: public ActorFrame
|
||||
{
|
||||
public:
|
||||
WheelItemDisplay();
|
||||
MusicWheelItem();
|
||||
|
||||
virtual void Update( float fDeltaTime );
|
||||
virtual void DrawPrimitives();
|
||||
@@ -62,4 +52,19 @@ public:
|
||||
BitmapText m_textCourse;
|
||||
};
|
||||
|
||||
enum WheelItemType { TYPE_SECTION, TYPE_SONG, TYPE_ROULETTE, TYPE_RANDOM, TYPE_COURSE };
|
||||
|
||||
struct WheelItemData
|
||||
{
|
||||
WheelItemData() {}
|
||||
WheelItemData( WheelItemType wit, Song* pSong, CString sSectionName, Course* pCourse, RageColor color );
|
||||
|
||||
WheelItemType m_Type;
|
||||
CString m_sSectionName;
|
||||
Course* m_pCourse;
|
||||
Song* m_pSong;
|
||||
RageColor m_color; // either text color or section background color
|
||||
WheelNotifyIcon::Flags m_Flags;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -201,7 +201,7 @@ void ScreenSelectCourse::Input( const DeviceInput& DeviceI, InputEventType type,
|
||||
{
|
||||
if( type != IET_FIRST_PRESS ) return;
|
||||
PREFSMAN->m_bShowTranslations ^= 1;
|
||||
m_MusicWheel.RebuildWheelItemDisplays();
|
||||
m_MusicWheel.RebuildMusicWheelItems();
|
||||
Course* pCourse = m_MusicWheel.GetSelectedCourse();
|
||||
if(pCourse)
|
||||
m_CourseContentsFrame.SetFromCourse( pCourse );
|
||||
|
||||
@@ -340,7 +340,7 @@ void ScreenSelectMusic::Input( const DeviceInput& DeviceI, InputEventType type,
|
||||
{
|
||||
if( type != IET_FIRST_PRESS ) return;
|
||||
PREFSMAN->m_bShowTranslations ^= 1;
|
||||
m_MusicWheel.RebuildWheelItemDisplays();
|
||||
m_MusicWheel.RebuildMusicWheelItems();
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user