56 lines
1.1 KiB
C++
56 lines
1.1 KiB
C++
#ifndef __SKIZZLE_ACTION_TOOLBAR_HPP__
|
|
#define __SKIZZLE_ACTION_TOOLBAR_HPP__
|
|
|
|
#include <SFGUI/Widgets.hpp>
|
|
#include <SFML/Graphics.hpp>
|
|
#include "../objects/object.hpp"
|
|
#include "../utility.hpp"
|
|
|
|
/**
|
|
* Barre d'outils pour les boutons d'actions en jeu
|
|
*/
|
|
class ActionToolbar {
|
|
private:
|
|
// widgets de la barre
|
|
sfg::Window::Ptr toolbar_window;
|
|
sfg::Box::Ptr toolbar_box;
|
|
sfg::Label::Ptr timer_label;
|
|
|
|
int left_buttons_count;
|
|
int time;
|
|
|
|
public:
|
|
ActionToolbar();
|
|
|
|
/**
|
|
* Ajoute un nouveau bouton d'action à gauche ou
|
|
* à droite de la barre d'action d'outils
|
|
*/
|
|
sfg::Button::Ptr addButton(
|
|
std::string name, Utility::Direction direction,
|
|
int position, std::function<void()> callback = std::function<void()>()
|
|
);
|
|
|
|
/**
|
|
* Récupère la fenêtre de la barre d'outils
|
|
*/
|
|
sfg::Window::Ptr getWindow();
|
|
|
|
/**
|
|
* Récupère la taille désirée par la barre d'outils
|
|
*/
|
|
float getHeight();
|
|
|
|
/**
|
|
* Récupère le temps restant
|
|
*/
|
|
int getTime();
|
|
|
|
/**
|
|
* Modifie le temps restant
|
|
*/
|
|
void setTime(int set_time);
|
|
};
|
|
|
|
#endif
|