44 lines
899 B
C
44 lines
899 B
C
|
#ifndef CLASSICDIVAVIEWMANAGER_H
|
||
|
#define CLASSICDIVAVIEWMANAGER_H
|
||
|
|
||
|
#include "timelineviewmanager.h"
|
||
|
|
||
|
#include <vector>
|
||
|
#include <memory>
|
||
|
|
||
|
class Sprite;
|
||
|
|
||
|
class ClassicViewManager : public TimelineViewManager
|
||
|
{
|
||
|
public:
|
||
|
explicit ClassicViewManager();
|
||
|
virtual ~ClassicViewManager() override;
|
||
|
|
||
|
virtual void update() override;
|
||
|
virtual void draw() override;
|
||
|
virtual void initNoteGraphics(Note *note) override;
|
||
|
|
||
|
private:
|
||
|
|
||
|
enum Button
|
||
|
{
|
||
|
ARROW_UP,
|
||
|
ARROW_DOWN,
|
||
|
ARROW_LEFT,
|
||
|
ARROW_RIGHT,
|
||
|
|
||
|
SHOULDER_RIGHT,
|
||
|
SHOULDER_LEFT,
|
||
|
|
||
|
AMOUNT_OF_KINDS
|
||
|
};
|
||
|
|
||
|
using SpritePoll = std::vector<std::shared_ptr<Sprite>>;
|
||
|
using SpriteDispatcher = std::array<SpritePoll, AMOUNT_OF_KINDS>;
|
||
|
SpriteDispatcher _sprite_dispatcher;
|
||
|
|
||
|
std::shared_ptr<Sprite> createSprite(Button kind_of_button) const;
|
||
|
};
|
||
|
|
||
|
#endif // CLASSICDIVAVIEWMANAGER_H
|