Canorus 0.0
lyricscontext.h
Go to the documentation of this file.
1
8#ifndef LYRICSCONTEXT_H_
9#define LYRICSCONTEXT_H_
10
11#include "score/context.h"
12#include "score/voice.h"
13
14#include <QList>
15#include <QHash>
16
17class CASyllable;
18
19class CALyricsContext : public CAContext {
20public:
21 CALyricsContext( const QString name, int stanzaNumber, CAVoice *v );
22 CALyricsContext( const QString name, int stanzaNumber, CASheet *s );
26
27 void repositSyllables();
28
31 bool remove( CAMusElement* );
32 void clear();
33
34 inline const QList<CASyllable*>& syllableList() { return _syllableList; }
35 bool addSyllable( CASyllable*, bool replace=true );
36 bool addEmptySyllable( int timeStart, int timeLength );
37// void removeSyllable( CASyllable* s ) { _syllableList.removeAll(s); }
38 CASyllable* removeSyllableAtTimeStart( int timeStart );
39 CASyllable* syllableAtTimeStart( int timeStart );
40
42 void setAssociatedVoice( CAVoice *v );
43 inline int stanzaNumber() { return _stanzaNumber; }
44 inline void setStanzaNumber( int sn ) { _stanzaNumber = sn; }
45 inline QString customStanzaName() { return _customStanzaName; }
46 inline void setCustomStanzaName( QString name ) { _customStanzaName = name; }
47
48private:
49 QList< CASyllable* > _syllableList;
53};
54
55#endif /* LYRICSCONTEXT_H_ */
Line of music elements in the sheet.
Definition: context.h:16
const QString name()
Definition: context.h:29
One stanza line of lyrics.
Definition: lyricscontext.h:19
CAVoice * _associatedVoice
Definition: lyricscontext.h:50
void setAssociatedVoice(CAVoice *v)
Definition: lyricscontext.cpp:230
CALyricsContext(const QString name, int stanzaNumber, CAVoice *v)
Definition: lyricscontext.cpp:27
const QList< CASyllable * > & syllableList()
Definition: lyricscontext.h:34
QString customStanzaName()
Definition: lyricscontext.h:45
void repositSyllables()
Definition: lyricscontext.cpp:83
void clear()
Definition: lyricscontext.cpp:52
int _stanzaNumber
Definition: lyricscontext.h:51
void cloneLyricsContextProperties(CALyricsContext *)
Definition: lyricscontext.cpp:71
bool addSyllable(CASyllable *, bool replace=true)
Definition: lyricscontext.cpp:185
int stanzaNumber()
Definition: lyricscontext.h:43
CALyricsContext * clone(CASheet *s)
Definition: lyricscontext.cpp:57
CASyllable * syllableAtTimeStart(int timeStart)
Definition: lyricscontext.cpp:218
CAMusElement * previous(CAMusElement *)
Definition: lyricscontext.cpp:127
bool addEmptySyllable(int timeStart, int timeLength)
Definition: lyricscontext.cpp:204
void setStanzaNumber(int sn)
Definition: lyricscontext.h:44
bool remove(CAMusElement *)
Definition: lyricscontext.cpp:141
~CALyricsContext()
Definition: lyricscontext.cpp:45
QString _customStanzaName
Definition: lyricscontext.h:52
void setCustomStanzaName(QString name)
Definition: lyricscontext.h:46
CAVoice * associatedVoice()
Definition: lyricscontext.h:41
QList< CASyllable * > _syllableList
Definition: lyricscontext.h:49
CASyllable * removeSyllableAtTimeStart(int timeStart)
Definition: lyricscontext.cpp:160
CAMusElement * next(CAMusElement *)
Definition: lyricscontext.cpp:116
An abstract class which represents every music element in the score.
Definition: muselement.h:21
Represents a single sheet of paper in the document.
Definition: sheet.h:22
Lyrics under the note.
Definition: syllable.h:19
Class which represents a voice in the staff.
Definition: voice.h:23