Canorus 0.0
document.h
Go to the documentation of this file.
1
8#ifndef DOCUMENT_H_
9#define DOCUMENT_H_
10
11#include <QList>
12#include <QString>
13#include <QDateTime>
14
15class CASheet;
16class CAArchive;
17class CAResource;
18
20public:
21 CADocument();
22 virtual ~CADocument();
24 void clear();
25
26 const QList<CASheet*>& sheetList() { return _sheetList; }
27 CASheet *addSheetByName(const QString name);
28 inline void addSheet(CASheet *sheet) { _sheetList << sheet; }
30 inline void removeSheet(CASheet *sheet) { _sheetList.removeAll(sheet); }
31 CASheet *findSheet(const QString name);
32
33 const QList<CAResource*>& resourceList() { return _resourceList; }
34 inline void addResource(CAResource *r) { _resourceList << r; }
35 inline void removeResource(CAResource *r) { _resourceList.removeAll(r); }
36
37 const QString title() { return _title; }
38 const QString subtitle() { return _subtitle; }
39 const QString composer() { return _composer; }
40 const QString arranger() { return _arranger; }
41 const QString poet() { return _poet; }
42 const QString textTranslator() { return _textTranslator; }
43 const QString dedication() { return _dedication; }
44 const QString copyright() { return _copyright; }
45 const QDateTime dateCreated() { return _dateCreated; }
46 const QDateTime dateLastModified() { return _dateLastModified; }
47 const unsigned int timeEdited() { return _timeEdited; }
48 const QString comments() { return _comments; }
49
50 void setTitle(const QString title) { _title = title; }
51 void setSubtitle(const QString subtitle) { _subtitle = subtitle; }
52 void setComposer(const QString composer) { _composer = composer; }
53 void setArranger(const QString arranger) { _arranger = arranger; }
54 void setPoet(const QString poet) { _poet = poet; }
57 void setCopyright(const QString copyright) { _copyright = copyright; }
60 void setTimeEdited(const unsigned int timeEdited) { _timeEdited = timeEdited; }
61 void setComments(const QString comments) { _comments = comments; }
62
64 // Temporary properties (not stored inside the file) //
66 const QString fileName() { return _fileName; }
67 bool isModified() { return _modified; }
68 CAArchive *archive() { return _archive; }
69
70 void setFileName(const QString fileName) { _fileName = fileName; } // not saved!
71 void setModified( bool m ) { _modified = m; }
72 void setArchive( CAArchive *a ) { _archive = a; }
73
74private:
75 QList<CASheet*> _sheetList;
76 QList<CAResource*> _resourceList;
77
78 QString _title;
79 QString _subtitle;
80 QString _composer;
81 QString _arranger;
82 QString _poet;
84 QString _dedication;
85 QString _copyright;
87 QDateTime _dateCreated;
88 unsigned int _timeEdited; // time the document has been edited in seconds
89 QString _comments;
90
92 // Temporary properties stored during the session //
94 QString _fileName; // absolute filename of the document
95 bool _modified; // unsaved changes
96 CAArchive *_archive; // pointer to existing archive, if it exists
97};
98#endif /* DOCUMENT_H_ */
Class for the manipulation of a gzipped tar archive (tar.gz)
Definition: archive.h:18
Class which represents the current document.
Definition: document.h:19
void addSheet(CASheet *sheet)
Definition: document.h:28
CASheet * addSheetByName(const QString name)
Definition: document.cpp:114
unsigned int _timeEdited
Definition: document.h:88
void setTextTranslator(const QString textTranslator)
Definition: document.h:55
void setDateLastModified(const QDateTime dateLastModified)
Definition: document.h:59
const QString title()
Definition: document.h:37
void setCopyright(const QString copyright)
Definition: document.h:57
void setComments(const QString comments)
Definition: document.h:61
void setFileName(const QString fileName)
Definition: document.h:70
const QDateTime dateLastModified()
Definition: document.h:46
const QString composer()
Definition: document.h:39
QDateTime _dateCreated
Definition: document.h:87
const QString poet()
Definition: document.h:41
QList< CASheet * > _sheetList
Definition: document.h:75
const QString dedication()
Definition: document.h:43
QString _arranger
Definition: document.h:81
void removeSheet(CASheet *sheet)
Definition: document.h:30
QString _textTranslator
Definition: document.h:83
void addResource(CAResource *r)
Definition: document.h:34
void setArchive(CAArchive *a)
Definition: document.h:72
bool _modified
Definition: document.h:95
QString _copyright
Definition: document.h:85
bool isModified()
Definition: document.h:67
void setPoet(const QString poet)
Definition: document.h:54
void clear()
Definition: document.cpp:85
QString _poet
Definition: document.h:82
CAArchive * _archive
Definition: document.h:96
QString _title
Definition: document.h:78
void setDedication(const QString dedication)
Definition: document.h:56
const QList< CASheet * > & sheetList()
Definition: document.h:26
QString _dedication
Definition: document.h:84
QString _subtitle
Definition: document.h:79
const QString arranger()
Definition: document.h:40
QString _composer
Definition: document.h:80
QString _fileName
Definition: document.h:94
const unsigned int timeEdited()
Definition: document.h:47
CASheet * addSheet()
Definition: document.cpp:124
const QList< CAResource * > & resourceList()
Definition: document.h:33
const QString fileName()
Definition: document.h:66
QDateTime _dateLastModified
Definition: document.h:86
const QString textTranslator()
Definition: document.h:42
void setDateCreated(const QDateTime dateCreated)
Definition: document.h:58
void setTimeEdited(const unsigned int timeEdited)
Definition: document.h:60
virtual ~CADocument()
Definition: document.cpp:77
CAArchive * archive()
Definition: document.h:68
void setComposer(const QString composer)
Definition: document.h:52
void removeResource(CAResource *r)
Definition: document.h:35
CASheet * findSheet(const QString name)
Definition: document.cpp:134
const QString copyright()
Definition: document.h:44
CADocument()
Definition: document.cpp:32
const QDateTime dateCreated()
Definition: document.h:45
const QString comments()
Definition: document.h:48
CADocument * clone()
Definition: document.cpp:43
void setSubtitle(const QString subtitle)
Definition: document.h:51
void setTitle(const QString title)
Definition: document.h:50
void setArranger(const QString arranger)
Definition: document.h:53
void setModified(bool m)
Definition: document.h:71
QString _comments
Definition: document.h:89
QList< CAResource * > _resourceList
Definition: document.h:76
const QString subtitle()
Definition: document.h:38
Different resources included in the file.
Definition: resource.h:15
Represents a single sheet of paper in the document.
Definition: sheet.h:22