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 
15 class CASheet;
16 class CAArchive;
17 class CAResource;
18 
19 class CADocument {
20 public:
21  CADocument();
22  virtual ~CADocument();
23  CADocument *clone();
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; }
29  CASheet *addSheet();
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; }
56  void setDedication(const QString dedication) { _dedication = dedication; }
57  void setCopyright(const QString copyright) { _copyright = copyright; }
58  void setDateCreated(const QDateTime dateCreated) { _dateCreated = dateCreated; }
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 
74 private:
75  QList<CASheet*> _sheetList;
76  QList<CAResource*> _resourceList;
77 
78  QString _title;
79  QString _subtitle;
80  QString _composer;
81  QString _arranger;
82  QString _poet;
83  QString _textTranslator;
84  QString _dedication;
85  QString _copyright;
86  QDateTime _dateLastModified;
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_ */
CAResourceCtl::deleteResource
static void deleteResource(CAResource *)
Definition: resourcectl.cpp:124
CADocument::setPoet
void setPoet(const QString poet)
Definition: document.h:54
CADocument::_timeEdited
unsigned int _timeEdited
Definition: document.h:88
CADocument::composer
const QString composer()
Definition: document.h:39
CADocument::setTitle
void setTitle(const QString title)
Definition: document.h:50
CADocument::comments
const QString comments()
Definition: document.h:48
CADocument::setDateLastModified
void setDateLastModified(const QDateTime dateLastModified)
Definition: document.h:59
CADocument::_dedication
QString _dedication
Definition: document.h:84
CADocument::_title
QString _title
Definition: document.h:78
CADocument::_arranger
QString _arranger
Definition: document.h:81
CADocument
Class which represents the current document.
Definition: document.h:19
CADocument::setDateCreated
void setDateCreated(const QDateTime dateCreated)
Definition: document.h:58
CADocument::setComments
void setComments(const QString comments)
Definition: document.h:61
CADocument::dateCreated
const QDateTime dateCreated()
Definition: document.h:45
document.h
CADocument::dedication
const QString dedication()
Definition: document.h:43
CADocument::isModified
bool isModified()
Definition: document.h:67
CADocument::findSheet
CASheet * findSheet(const QString name)
Definition: document.cpp:134
CADocument::_sheetList
QList< CASheet * > _sheetList
Definition: document.h:75
CADocument::archive
CAArchive * archive()
Definition: document.h:68
CADocument::addResource
void addResource(CAResource *r)
Definition: document.h:34
CADocument::clear
void clear()
Definition: document.cpp:85
CADocument::_poet
QString _poet
Definition: document.h:82
CADocument::setDedication
void setDedication(const QString dedication)
Definition: document.h:56
CADocument::textTranslator
const QString textTranslator()
Definition: document.h:42
CADocument::setComposer
void setComposer(const QString composer)
Definition: document.h:52
CADocument::addSheetByName
CASheet * addSheetByName(const QString name)
Definition: document.cpp:114
CADocument::addSheet
CASheet * addSheet()
Definition: document.cpp:124
CADocument::clone
CADocument * clone()
Definition: document.cpp:43
CAResource
Different resources included in the file.
Definition: resource.h:15
CADocument::_subtitle
QString _subtitle
Definition: document.h:79
CADocument::poet
const QString poet()
Definition: document.h:41
CASheet::setDocument
void setDocument(CADocument *doc)
Definition: sheet.h:44
CADocument::copyright
const QString copyright()
Definition: document.h:44
CADocument::_archive
CAArchive * _archive
Definition: document.h:96
CADocument::setTimeEdited
void setTimeEdited(const unsigned int timeEdited)
Definition: document.h:60
CADocument::_copyright
QString _copyright
Definition: document.h:85
resource.h
CADocument::setFileName
void setFileName(const QString fileName)
Definition: document.h:70
CADocument::removeResource
void removeResource(CAResource *r)
Definition: document.h:35
CADocument::_dateCreated
QDateTime _dateCreated
Definition: document.h:87
CADocument::setArchive
void setArchive(CAArchive *a)
Definition: document.h:72
CADocument::sheetList
const QList< CASheet * > & sheetList()
Definition: document.h:26
resourcectl.h
CADocument::_modified
bool _modified
Definition: document.h:95
CADocument::title
const QString title()
Definition: document.h:37
CADocument::_fileName
QString _fileName
Definition: document.h:94
CADocument::_composer
QString _composer
Definition: document.h:80
CADocument::setCopyright
void setCopyright(const QString copyright)
Definition: document.h:57
CADocument::_dateLastModified
QDateTime _dateLastModified
Definition: document.h:86
CADocument::setTextTranslator
void setTextTranslator(const QString textTranslator)
Definition: document.h:55
CADocument::fileName
const QString fileName()
Definition: document.h:66
CADocument::timeEdited
const unsigned int timeEdited()
Definition: document.h:47
CADocument::_comments
QString _comments
Definition: document.h:89
archive.h
sheet.h
CADocument::subtitle
const QString subtitle()
Definition: document.h:38
CADocument::resourceList
const QList< CAResource * > & resourceList()
Definition: document.h:33
CADocument::~CADocument
virtual ~CADocument()
Definition: document.cpp:77
context.h
CADocument::_resourceList
QList< CAResource * > _resourceList
Definition: document.h:76
CADocument::arranger
const QString arranger()
Definition: document.h:40
CADocument::dateLastModified
const QDateTime dateLastModified()
Definition: document.h:46
CADocument::removeSheet
void removeSheet(CASheet *sheet)
Definition: document.h:30
CADocument::addSheet
void addSheet(CASheet *sheet)
Definition: document.h:28
CADocument::CADocument
CADocument()
Definition: document.cpp:32
CADocument::setModified
void setModified(bool m)
Definition: document.h:71
CASheet
Represents a single sheet of paper in the document.
Definition: sheet.h:22
CADocument::setArranger
void setArranger(const QString arranger)
Definition: document.h:53
CADocument::setSubtitle
void setSubtitle(const QString subtitle)
Definition: document.h:51
staff.h
CAArchive
Class for the manipulation of a gzipped tar archive (tar.gz)
Definition: archive.h:18
CADocument::_textTranslator
QString _textTranslator
Definition: document.h:83