TODO-LIST
Gestore di attività suddivise per progetto
Progetto.h
Go to the documentation of this file.
1 
9 #ifndef _PROGETTO
10 #define _PROGETTO
11 
12 #include <cstring>
13 #include <cstdio>
14 #include "Attivita.h"
15 
16 const unsigned int NUMERO_MASSIMO_ATTIVITA_PROGETTO = 64;
17 
18 enum FILETYPE
19 {
20  CSV,
21  HTML
22 };
23 
27 struct FILERECORD
28 {
29  char descrizione[1024];
30  unsigned short svolgimento;
31  unsigned short giorno_scadenza;
32  unsigned short mese_scadenza;
33  unsigned short anno_scadenza;
34  unsigned short giorno_completamento;
35  unsigned short mese_completamento;
36  unsigned short anno_completamento;
37 };
38 
42 class Progetto
43 {
44 private:
46  char denominazione[256];
48  Attivita attivita[NUMERO_MASSIMO_ATTIVITA_PROGETTO];
49  unsigned int numero_attivita;
50 
55  int ricercaAttivita(const char descrizione[]);
56 
57 public:
61  Progetto(const char denominazione[]);
65  void getDenominazione(char* denominazione);
72  bool creaAttivita(const char descrizione[], const Date scadenza);
78  bool eliminaAttivita(const char descrizione[]);
86  bool aggiornaAttivita(const char descrizione[], const unsigned short svolgimento, const Date data);
93  bool aggiornaAttivita(const char descrizione[], const Date scadenza);
98  unsigned int elencaAttivita(Attivita elenco[]);
103  unsigned int elencaAttivitaCompletate(Attivita elenco[]);
109  unsigned int elencaAttivitaInScadenza(Date data, Attivita elenco[]);
116  bool esportaAttivitaSuFile(FILETYPE tipo_file, char nome_file[]);
123  bool esportaAttivitaCompletateSuFile(FILETYPE tipo_file, char nome_file[]);
131  bool esportaAttivitaInScadenzaSuFile(Date data, FILETYPE tipo_file, char nome_file[]);
132 };
133 
134 #endif
classe per la rappresentazione di un progetto
Definition: Progetto.h:42
classe per la rappresentazione di una singola attivita&#39; di un progetto
Definition: Attivita.h:18
definizione e implementazione della classe Attivita
Definition: Date.h:5
struttura del record del file binario che rappresenta un progetto
Definition: Progetto.h:27