Changed Panels' click input to be the ribbon instead of the music select screen
This commit is contained in:
parent
2df8fbf025
commit
26edf04120
@ -12,8 +12,8 @@ void MusicSelect::ColorPanel::draw(const Resources& resources, sf::RenderTarget&
|
|||||||
target.draw(panel);
|
target.draw(panel);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MusicSelect::CategoryPanel::click(Screen& screen) {
|
void MusicSelect::CategoryPanel::click(Ribbon& ribbon) {
|
||||||
|
ribbon.move_to_next_category();
|
||||||
}
|
}
|
||||||
|
|
||||||
void MusicSelect::CategoryPanel::draw(const Resources& resources, sf::RenderTarget& target, sf::FloatRect area) {
|
void MusicSelect::CategoryPanel::draw(const Resources& resources, sf::RenderTarget& target, sf::FloatRect area) {
|
||||||
@ -64,7 +64,7 @@ void MusicSelect::CategoryPanel::draw(const Resources& resources, sf::RenderTarg
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
void MusicSelect::SongPanel::click(Screen& screen) {
|
void MusicSelect::SongPanel::click(Ribbon& ribbon) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ namespace MusicSelect {
|
|||||||
class Panel {
|
class Panel {
|
||||||
public:
|
public:
|
||||||
// What happens when you click on the panel
|
// What happens when you click on the panel
|
||||||
virtual void click(Screen& screen) = 0;
|
virtual void click(Ribbon& ribbon) = 0;
|
||||||
// How the panel should be displayed
|
// How the panel should be displayed
|
||||||
virtual void draw(const Resources& resources, sf::RenderTarget& target, sf::FloatRect area) = 0;
|
virtual void draw(const Resources& resources, sf::RenderTarget& target, sf::FloatRect area) = 0;
|
||||||
virtual ~Panel() = default;
|
virtual ~Panel() = default;
|
||||||
@ -23,14 +23,14 @@ namespace MusicSelect {
|
|||||||
|
|
||||||
class EmptyPanel final : public Panel {
|
class EmptyPanel final : public Panel {
|
||||||
public:
|
public:
|
||||||
void click(Screen& screen) override {return;};
|
void click(Ribbon& ribbon) override {return;};
|
||||||
void draw(const Resources& resources, sf::RenderTarget& target, sf::FloatRect area) override {return;};
|
void draw(const Resources& resources, sf::RenderTarget& target, sf::FloatRect area) override {return;};
|
||||||
};
|
};
|
||||||
|
|
||||||
class ColorPanel final : public Panel {
|
class ColorPanel final : public Panel {
|
||||||
public:
|
public:
|
||||||
explicit ColorPanel(const sf::Color& t_color) : color(t_color) {};
|
explicit ColorPanel(const sf::Color& t_color) : color(t_color) {};
|
||||||
void click(Screen& screen) override {return;};
|
void click(Ribbon& ribbon) override {return;};
|
||||||
void draw(const Resources& resources, sf::RenderTarget& target, sf::FloatRect area) override;
|
void draw(const Resources& resources, sf::RenderTarget& target, sf::FloatRect area) override;
|
||||||
private:
|
private:
|
||||||
const sf::Color color;
|
const sf::Color color;
|
||||||
@ -39,7 +39,7 @@ namespace MusicSelect {
|
|||||||
class CategoryPanel final : public Panel {
|
class CategoryPanel final : public Panel {
|
||||||
public:
|
public:
|
||||||
explicit CategoryPanel(const std::string& t_label) : label(t_label) {};
|
explicit CategoryPanel(const std::string& t_label) : label(t_label) {};
|
||||||
void click(Screen& screen) override;
|
void click(Ribbon& ribbon) override;
|
||||||
void draw(const Resources& resources, sf::RenderTarget& target, sf::FloatRect area) override;
|
void draw(const Resources& resources, sf::RenderTarget& target, sf::FloatRect area) override;
|
||||||
private:
|
private:
|
||||||
std::string label;
|
std::string label;
|
||||||
@ -48,7 +48,7 @@ namespace MusicSelect {
|
|||||||
class SongPanel final : public Panel {
|
class SongPanel final : public Panel {
|
||||||
public:
|
public:
|
||||||
explicit SongPanel(const Data::Song& t_song) : song(t_song) {};
|
explicit SongPanel(const Data::Song& t_song) : song(t_song) {};
|
||||||
void click(Screen& screen) override;
|
void click(Ribbon& ribbon) override;
|
||||||
void draw(const Resources& resources, sf::RenderTarget& target, sf::FloatRect area) override;
|
void draw(const Resources& resources, sf::RenderTarget& target, sf::FloatRect area) override;
|
||||||
private:
|
private:
|
||||||
const Data::Song& song;
|
const Data::Song& song;
|
||||||
|
@ -40,6 +40,7 @@ namespace MusicSelect {
|
|||||||
const std::shared_ptr<MusicSelect::Panel>& at(std::size_t button_index) const;
|
const std::shared_ptr<MusicSelect::Panel>& at(std::size_t button_index) const;
|
||||||
void move_right();
|
void move_right();
|
||||||
void move_left();
|
void move_left();
|
||||||
|
void move_to_next_category();
|
||||||
void draw_debug() override;
|
void draw_debug() override;
|
||||||
private:
|
private:
|
||||||
void draw(sf::RenderTarget& target, sf::RenderStates states) const override;
|
void draw(sf::RenderTarget& target, sf::RenderStates states) const override;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user