Commit 367e050a authored by Francois Foltete's avatar Francois Foltete
Browse files

fiche info et popup élève et prof

parent 0c6e9006
......@@ -10,17 +10,19 @@ class Actor : public Texturable {
std::string firstname;
std::string surname;
public:
protected:
/**
* @brief Crée un personnage.
*
* @param firstname le prénom du personnage
* @param surname le nom de famille du personnage
* @param texturePath le chemin du fichier de texture
*/
Actor(const std::string &firstname, const std::string &surname,
const std::string &texturePath);
* @brief Crée un personnage.
*
* @param firstname le prénom du personnage
* @param surname le nom de famille du personnage
* @param texturePath le chemin du fichier de texture
*/
Actor(const std::string &firstname, const std::string &surname,
const std::string &texturePath);
public:
/**
* @brief Renvoie le prénom du personnage.
*
......@@ -53,6 +55,18 @@ class Actor : public Texturable {
void setSurname(const std::string &surname) { this->surname = surname; }
void render() const;
/**
* @brief affiche la fiche d'information de l'Actor
*
*/
virtual void infoSheet() const = 0;
/**
* @brief affiche les options disponibles lorsque l'on clique sur l'Actor
*
*/
virtual void clickPopup() const = 0;
};
#endif
......@@ -88,6 +88,19 @@ class Student : public Actor {
* @param grade Note
*/
void addGrades(Subject *subject, double grade);
/**
* @brief Affiche la fiche information de l'élève
*
*/
void infoSheet() const override;
/**
* @brief Affiche les options disponibles lorsque l'on clique sur l'élève
*
*/
void clickPopup() const override;
};
#endif
......@@ -62,6 +62,18 @@ class Teacher : public Actor {
{
this->meritocratic = meritocratic;
}
/**
* @brief Affiche la fiche informations du prof
*
*/
void infoSheet() const override;
/**
* @brief Affiche les options disponibles lorsque l'on clique sur le prof
*
*/
void clickPopup() const override;
};
#endif
......@@ -25,14 +25,7 @@ Actor::render() const
texture, ImVec2(texture.getSize().x / 2, texture.getSize().y / 2)))
ImGui::OpenPopup(str_id);
if (ImGui::BeginPopup(str_id)) {
if (ImGui::MenuItem("Afficher fiche information")) {
}
if (ImGui::MenuItem("Interroger")) {
}
if (ImGui::MenuItem("Lancer une craie")) {
}
if (ImGui::MenuItem("Envoyer au coin")) {
}
clickPopup();
ImGui::EndPopup();
}
}
......@@ -22,3 +22,24 @@ Student::addGrades(Subject *subject, double grade)
else
grades.emplace(subject, std::vector<double>());
}
void
Student::clickPopup() const{
if (ImGui::MenuItem("Afficher fiche information")) {
infoSheet();
}
if (ImGui::MenuItem("Interroger")) {
}
if (ImGui::MenuItem("Lancer une craie")) {
}
if (ImGui::MenuItem("Envoyer au coin")) {
}
}
void
Student::infoSheet() const{
// TODO
}
#include <string>
#include "imgui/imgui-SFML.h"
#include "imgui/imgui.h"
#include "model/Actor.h"
#include "model/Teacher.h"
......@@ -18,3 +20,16 @@ Teacher::Teacher(const std::string &firstname, const std::string &surname,
, meritocratic(meritocratic)
{
}
void
Teacher::clickPopup() const{
if (ImGui::MenuItem("Afficher fiche information")) {
infoSheet();
}
}
void
Teacher::infoSheet() const{
// TODO
}
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment