Canorus  0.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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 "core/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_*/