Canorus  0.0
syllable.h
Go to the documentation of this file.
1 
8 #ifndef SYLLABLE_H_
9 #define SYLLABLE_H_
10 
11 #include "score/muselement.h"
12 #include "score/lyricscontext.h"
13 
14 #include <QString>
15 
16 class CAVoice;
17 class CAContext;
18 
19 class CASyllable : public CAMusElement {
20 public:
21  CASyllable(QString text, bool hyphen, bool melisma, CALyricsContext *context, int timeStart, int timeLength, CAVoice *voice=0);
22  ~CASyllable();
23  void clear();
24 
25  inline bool hyphenStart() { return _hyphenStart; }
26  inline void setHyphenStart(bool h) { _hyphenStart = h; }
27  inline bool melismaStart() { return _melismaStart; }
28  inline void setMelismaStart(bool m) { _melismaStart = m; }
29  inline QString text() { return _text; }
30  inline void setText(QString text) { _text = text; }
32  inline void setAssociatedVoice(CAVoice* v) { _associatedVoice = v; }
33 
34  inline CALyricsContext *lyricsContext() { return static_cast<CALyricsContext*>(_context); }
35 
37  int compare(CAMusElement*);
38 
39 private:
41  QString _text;
42  CAVoice *_associatedVoice; // per-syllable associated voice, 0 if preferred (parent's voice)
43 };
44 
45 #endif /* SYLLABLE_H_ */
CASyllable::associatedVoice
CAVoice * associatedVoice()
Definition: syllable.h:31
CAMusElement::context
CAContext * context()
Definition: muselement.h:48
CAMusElement::setMusElementType
void setMusElementType(CAMusElementType type)
Definition: muselement.h:85
CAVoice
Class which represents a voice in the staff.
Definition: voice.h:23
CAMusElement::_context
CAContext * _context
Definition: muselement.h:90
CASyllable::_associatedVoice
CAVoice * _associatedVoice
Definition: syllable.h:42
CAMusElement::markList
const QList< CAMark * > markList()
Definition: muselement.h:70
CASyllable::lyricsContext
CALyricsContext * lyricsContext()
Definition: syllable.h:34
CASyllable::melismaStart
bool melismaStart()
Definition: syllable.h:27
CASyllable::setAssociatedVoice
void setAssociatedVoice(CAVoice *v)
Definition: syllable.h:32
CASyllable::_melismaStart
bool _melismaStart
Definition: syllable.h:40
CAMusElement::timeLength
virtual int timeLength() const
Definition: muselement.h:53
syllable.h
CAMusElement::addMark
void addMark(CAMark *mark)
Definition: muselement.cpp:135
CAMusElement::Syllable
@ Syllable
Definition: muselement.h:34
CASyllable::setHyphenStart
void setHyphenStart(bool h)
Definition: syllable.h:26
CASyllable::~CASyllable
~CASyllable()
Definition: syllable.cpp:39
CASyllable::setText
void setText(QString text)
Definition: syllable.h:30
CAMusElement
An abstract class which represents every music element in the score.
Definition: muselement.h:21
CASyllable::compare
int compare(CAMusElement *)
Definition: syllable.cpp:71
CAContext::contextType
CAContextType contextType()
Definition: context.h:32
CASyllable::_text
QString _text
Definition: syllable.h:41
CASyllable::clone
CASyllable * clone(CAContext *context)
Definition: syllable.cpp:57
CASyllable
Lyrics under the note.
Definition: syllable.h:19
CALyricsContext
One stanza line of lyrics.
Definition: lyricscontext.h:19
CAMusElement::timeStart
virtual int timeStart() const
Definition: muselement.h:51
muselement.h
CAContext
Line of music elements in the sheet.
Definition: context.h:16
CASyllable::clear
void clear()
Definition: syllable.cpp:47
CASyllable::CASyllable
CASyllable(QString text, bool hyphen, bool melisma, CALyricsContext *context, int timeStart, int timeLength, CAVoice *voice=0)
Definition: syllable.cpp:29
CASyllable::setMelismaStart
void setMelismaStart(bool m)
Definition: syllable.h:28
CAContext::LyricsContext
@ LyricsContext
Definition: context.h:24
CAMark
Marks that depend on other music elements.
Definition: mark.h:15
CASyllable::_hyphenStart
bool _hyphenStart
Definition: syllable.h:40
lyricscontext.h
CAMusElement::musElementType
CAMusElementType musElementType()
Definition: muselement.h:46
mark.h
CASyllable::hyphenStart
bool hyphenStart()
Definition: syllable.h:25
CASyllable::text
QString text()
Definition: syllable.h:29