2002-08-24 20:36:29 +00:00
|
|
|
#ifndef GROUPLIST_H
|
|
|
|
|
#define GROUPLIST_H
|
|
|
|
|
|
|
|
|
|
#include "ActorFrame.h"
|
|
|
|
|
#include "Sprite.h"
|
|
|
|
|
#include "BitmapText.h"
|
|
|
|
|
|
|
|
|
|
class GroupList: public ActorFrame {
|
2003-06-18 00:10:52 +00:00
|
|
|
ActorFrame m_Frame;
|
|
|
|
|
vector<Sprite *> m_sprButtons;
|
2003-07-26 09:53:15 +00:00
|
|
|
vector<BitmapText *> m_textLabels;
|
2003-09-03 06:47:10 +00:00
|
|
|
vector<ActorFrame *> m_ButtonFrames;
|
2003-07-26 09:53:15 +00:00
|
|
|
vector<CString> m_asLabels;
|
2002-08-24 20:36:29 +00:00
|
|
|
|
2003-06-18 00:10:52 +00:00
|
|
|
vector<bool> m_bHidden;
|
|
|
|
|
|
2002-08-24 20:36:29 +00:00
|
|
|
/* Currently selected label. */
|
2003-06-18 00:10:52 +00:00
|
|
|
int m_iSelection;
|
2002-08-24 20:36:29 +00:00
|
|
|
/* Label that's currently at the top of the screen. */
|
2003-06-18 00:10:52 +00:00
|
|
|
int m_iTop;
|
2002-08-24 20:36:29 +00:00
|
|
|
|
|
|
|
|
void BeforeChange();
|
|
|
|
|
void AfterChange();
|
2003-06-18 00:10:52 +00:00
|
|
|
bool ItemIsOnScreen( int n ) const;
|
|
|
|
|
void ResetTextSize( int item );
|
2002-08-24 20:36:29 +00:00
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
GroupList();
|
2003-06-18 00:10:52 +00:00
|
|
|
~GroupList();
|
2002-08-24 20:36:29 +00:00
|
|
|
|
2002-10-31 02:31:15 +00:00
|
|
|
void SetSelection(unsigned sel);
|
2002-08-24 20:36:29 +00:00
|
|
|
int GetSelection() const { return m_iSelection; }
|
2003-03-10 00:16:49 +00:00
|
|
|
CString GetSelectionName() const { return m_asLabels[m_iSelection]; }
|
2002-08-24 20:36:29 +00:00
|
|
|
void Up();
|
|
|
|
|
void Down();
|
2003-03-10 00:16:49 +00:00
|
|
|
void Load( const CStringArray& asGroupNames );
|
2002-08-24 20:36:29 +00:00
|
|
|
void TweenOffScreen();
|
|
|
|
|
void TweenOnScreen();
|
|
|
|
|
};
|
|
|
|
|
|
2002-11-16 08:55:46 +00:00
|
|
|
#endif
|