-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathsheet.h
101 lines (82 loc) · 2.45 KB
/
sheet.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#ifndef SHEET
#define SHEET
#include <QBasicTimer>
#include <QWidget>
#include <QTime>
#include <QMediaPlayer>
#include <QScrollArea>
#include <QPixmap>
#include <QHBoxLayout>
#include <QFile>
#include "measure.h"
#include "notes_jugees.h"
#include "colored.h"
class FenEntrainement;
class Ui_FenEntrainement;
class Sheet : public QWidget
{
Q_OBJECT
public:
Sheet(QWidget *parent = 0);
~Sheet();
Note_jugee* getNoteJugee(int numero, Note_jugee* premiere_note);
void resetListeJ(Note_jugee* premiere_note);
int getIndice_essai();
int getPerformance();
QPixmap ImageOfNote(Note *note, char c);
void setMetronome();
void start();
void stop();
void save();
void load(QTextStream *text);
double CharToInt(QChar c);
void setMetronomeVolume(int position);
void setKickVolume(int position);
bool getStarted();
int getBpm ();
void setBpm(int valeurBpm);
void setDuree1Mesure(int bpm);
void setDuree1Temps(int bpm);
Measure* getMesure();
void setStarted(bool valeurStarted);
Colored *getZoneColoree();
FenEntrainement *parentFenetre;
Ui_FenEntrainement *uiParentFenetre;
public slots:
signals :
void changementPerformance(int);
protected:
void paintEvent(QPaintEvent *event);
void timerEvent(QTimerEvent *event);
void keyPressEvent(QKeyEvent *event);
private:
QBasicTimer timer; // timer
QTime time; // timer
int step;
int vitesse; //vitesse de l'update
int bpm; // battement par minute (tempo)
bool vue; //vrai si on veut avoir la vue
bool started; //vrai si on est en train de jouer
bool decompte; //vrai pour le décompte, faux une fois le décompte effectué
bool metronome_active;
bool preecoute;
QMediaPlayer kick;
QMediaPlayer metronome;
int performance; //indice de performance
int m_taille_mesure; // taille d'une mesure en pixel
int nbre_mesures;
Measure *m_mesure;
int mesure_actuelle;
int duree1Temps;
int duree1Mesure;
Note_jugee* tab_liste_jugee[10]; //tableau qui retient les notes jouées (jusqu'à 10 essais)
int indice_j; //indice pour parcourir une liste de notes jugées
int indice_essai; //indice pour parcourir le tableau des listes de notes jugées
Colored *zone_coloree;
QScrollArea *scrollArea;
QVBoxLayout *layoutV;
Measure* mesure_preecoute;
Note* note_preecoute; //variables utiles à la préécoute
float cumul_preecoute;
};
#endif // SHEET