Canorus  0.0
slur.h
Go to the documentation of this file.
1 
8 #ifndef SLUR_H_
9 #define SLUR_H_
10 
11 #include <QString>
12 
13 #include "score/muselement.h"
14 
15 class CAContext;
16 class CANote;
17 
18 class CASlur : public CAMusElement {
19 public:
25  };
26 
27  enum CASlurStyle {
28  Undefined = 0,
31  };
32 
33  enum CASlurType {
37  };
38 
40  virtual ~CASlur();
41 
44  int compare( CAMusElement *elt );
45 
47  inline void setSlurDirection(CASlurDirection dir) { _slurDirection = dir; }
48 
49  inline CASlurType slurType() { return _slurType; }
50  inline CANote *noteStart() { return _noteStart; }
51  inline CANote *noteEnd() { return _noteEnd; }
52  inline CASlurStyle slurStyle() { return _slurStyle; }
54  inline void setNoteEnd( CANote *noteEnd ) { _noteEnd = noteEnd; }
56 
57  static const QString slurStyleToString( CASlurStyle style );
58  static CASlurStyle slurStyleFromString( const QString style );
59 
60  static const QString slurDirectionToString( CASlurDirection dir );
61  static CASlurDirection slurDirectionFromString( const QString dir );
62 
63 private:
64  inline void setSlurType( CASlurType type ) { _slurType = type; }
65 
69 
72 };
73 
74 #endif /*SLUR_H_*/
CASlur::SlurPreferred
@ SlurPreferred
Definition: slur.h:24
CASlur::noteStart
CANote * noteStart()
Definition: slur.h:50
CANote::setSlurStart
void setSlurStart(CASlur *slurStart)
Definition: note.h:59
CAMusElement::context
CAContext * context()
Definition: muselement.h:48
CAMusElement::setMusElementType
void setMusElementType(CAMusElementType type)
Definition: muselement.h:85
CASlur::SlurSolid
@ SlurSolid
Definition: slur.h:29
note.h
CANote
Represents a note in the score.
Definition: note.h:18
CASlur::slurStyle
CASlurStyle slurStyle()
Definition: slur.h:52
CANote::setPhrasingSlurEnd
void setPhrasingSlurEnd(CASlur *pSlurEnd)
Definition: note.h:62
CASlur::TieType
@ TieType
Definition: slur.h:34
CASlur::noteEnd
CANote * noteEnd()
Definition: slur.h:51
slur.h
CASlur::setNoteStart
void setNoteStart(CANote *noteStart)
Definition: slur.h:53
CASlur::CASlurDirection
CASlurDirection
Direction of the slur.
Definition: slur.h:20
CASlur::Undefined
@ Undefined
Definition: slur.h:28
CAMusElement::setTimeLength
void setTimeLength(int length)
Definition: muselement.h:54
CASlur::_slurDirection
CASlurDirection _slurDirection
Definition: slur.h:66
CASlur::slurDirectionFromString
static CASlurDirection slurDirectionFromString(const QString dir)
Definition: slur.cpp:135
CASlur::SlurDotted
@ SlurDotted
Definition: slur.h:30
CASlur::SlurNeutral
@ SlurNeutral
Definition: slur.h:23
CASlur::_noteStart
CANote * _noteStart
Definition: slur.h:70
CASlur::CASlurStyle
CASlurStyle
Definition: slur.h:27
CAMusElement::timeLength
virtual int timeLength() const
Definition: muselement.h:53
CASlur::CASlur
CASlur(CASlurType, CASlurDirection, CAContext *c, CANote *noteStart, CANote *noteEnd=0, CASlurStyle style=SlurSolid)
Definition: slur.cpp:40
CASlur::slurDirectionToString
static const QString slurDirectionToString(CASlurDirection dir)
Definition: slur.cpp:116
CASlur::setSlurType
void setSlurType(CASlurType type)
Definition: slur.h:64
CANote::setPhrasingSlurStart
void setPhrasingSlurStart(CASlur *pSlurStart)
Definition: note.h:61
CASlur::_slurStyle
CASlurStyle _slurStyle
Definition: slur.h:67
CASlur::CASlurType
CASlurType
Definition: slur.h:33
CANote::setTieEnd
void setTieEnd(CASlur *tieEnd)
Definition: note.h:58
CAMusElement
An abstract class which represents every music element in the score.
Definition: muselement.h:21
CASlur::PhrasingSlurType
@ PhrasingSlurType
Definition: slur.h:36
CASlur::slurDirection
CASlurDirection slurDirection()
Definition: slur.h:46
CASlur::slurStyleFromString
static CASlurStyle slurStyleFromString(const QString style)
Definition: slur.cpp:107
CASlur::setSlurStyle
void setSlurStyle(CASlurStyle slurStyle)
Definition: slur.h:55
CASlur::compare
int compare(CAMusElement *elt)
Definition: slur.cpp:82
CASlur::SlurUp
@ SlurUp
Definition: slur.h:21
CASlur::SlurType
@ SlurType
Definition: slur.h:35
CANote::setTieStart
void setTieStart(CASlur *tieStart)
Definition: note.h:57
CASlur::_noteEnd
CANote * _noteEnd
Definition: slur.h:71
CASlur::slurType
CASlurType slurType()
Definition: slur.h:49
CANote::setSlurEnd
void setSlurEnd(CASlur *slurEnd)
Definition: note.h:60
CAMusElement::timeStart
virtual int timeStart() const
Definition: muselement.h:51
CASlur::SlurDown
@ SlurDown
Definition: slur.h:22
muselement.h
CAContext
Line of music elements in the sheet.
Definition: context.h:16
CASlur::~CASlur
virtual ~CASlur()
Definition: slur.cpp:56
CASlur::_slurType
CASlurType _slurType
Definition: slur.h:68
CASlur::setSlurDirection
void setSlurDirection(CASlurDirection dir)
Definition: slur.h:47
CASlur::clone
CASlur * clone(CAContext *context=0)
Definition: slur.cpp:74
CASlur
Slur, Tie, Phrasing slur and Laissez vibrer tie This class represents any type of slur....
Definition: slur.h:18
CAMusElement::musElementType
CAMusElementType musElementType()
Definition: muselement.h:46
CASlur::setNoteEnd
void setNoteEnd(CANote *noteEnd)
Definition: slur.h:54
CASlur::slurStyleToString
static const QString slurStyleToString(CASlurStyle style)
Definition: slur.cpp:92
CAMusElement::Slur
@ Slur
Definition: muselement.h:32