forked from felixmt/LO21
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Corbeille.h
84 lines (67 loc) · 1.73 KB
/
Corbeille.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
/**
* \file Corbeille.h
* \author Félix, Victor
* \version 1.0
* \date 15 Juin 2013
* \brief Gestion de la corbeille
*/
#ifndef CORBEILLE_H
#define CORBEILLE_H
#include <iostream>
#include <QSet>
#include <QList>
#include "note.h"
#include <QWidget>
#include <QListWidget>
#include <QListWidgetItem>
#include <QHBoxLayout>
#include <QScrollArea>
#include <QPushButton>
#include <QMessageBox>
class Note;
/**
* \class Corbeille Corbeille.h
*/
class Corbeille{
private :
QList<Note*> dust;
Corbeille();
Corbeille(const Corbeille& c);
Corbeille& operator=(const Corbeille& c);
static Corbeille* instance;
~Corbeille(){}
Note* getNoteId(int id);
public :
/**
* \brief Fonction qui cree une instance de Corbeille s'il n'en existe pas une (Corbeille est une classe singleton)
*/
static Corbeille& getInstance();
/**
* \brief Fonction qui supprime une instance de Corbeille s'il en existe une.
*/
static void deleteInstance(){if(instance) delete instance;}
/**
* \brief Fonction qui vide la corbeille(vide le tableau de note)
*/
void viderCorbeille(){dust.clear();}
/**
* \brief Fonction qui renvoie la taille du tableau de notes
*/
int getSizeDust() const {return dust.size();}
Note* getNoteViaName(QString name);
void deleteNote(Note* n);
Note* getNote(int id);
Note* getNoteByPos(int pos){ return dust[pos]; }
/**
* \brief Fonction qui supprime une note de la corbeille
* \param n note a retirer de la corbeille
*/
void addNote(Note*n);
/**
* \brief Fonction qui remet la note dans les notes actives (dans le tableau de notes de TagManager)
* \param n note a restaurer
*/
void putBackNote(Note* n);
int getPosNote(Note*n);
};
#endif // CORBEILLE_H