Canorus
0.0
src
score
mark.h
Go to the documentation of this file.
1
8
#ifndef MARK_H_
9
#define MARK_H_
10
11
#include "
score/muselement.h
"
12
13
class
CAContext
;
14
15
class
CAMark
:
public
CAMusElement
{
16
public
:
17
enum
CAMarkType
{
18
Undefined
= -1,
19
Text
,
20
Tempo
,
21
Ritardando
,
22
Dynamic
,
23
Crescendo
,
24
Pedal
,
25
InstrumentChange
,
26
BookMark
,
27
RehersalMark
,
28
Fermata
,
29
RepeatMark
,
30
Articulation
,
31
Fingering
32
};
33
34
CAMark
(
CAMarkType
type,
CAMusElement
*associatedElt,
int
timeStart
=-1,
int
timeLength
=-1 );
35
CAMark
(
CAMarkType
type,
CAContext
*
context
,
int
timeStart
,
int
timeLength
);
36
virtual
~CAMark
();
37
38
virtual
CAMark
*
clone
(
CAContext
*
context
) {
CAMark
* c =
clone
(); c->
setContext
(
context
);
return
c; }
39
virtual
CAMark
*
clone
(
CAMusElement
* elt=0);
40
virtual
int
compare
(
CAMusElement
* elt );
41
42
inline
CAMusElement
*
associatedElement
() {
return
_associatedElt
; }
43
inline
void
setAssociatedElement
(
CAMusElement
* elt ) {
_associatedElt
= elt;
if
(elt)
_context
= elt->
context
(); }
44
45
inline
CAMarkType
markType
() {
return
_markType
; }
46
inline
void
setMarkType
(
CAMarkType
type ) {
_markType
= type; }
47
48
inline
bool
isCommon
() {
return
_common
; }
49
50
static
const
QString
markTypeToString
(
CAMarkType
t );
51
static
CAMarkType
markTypeFromString
(
const
QString s );
52
53
protected
:
54
inline
void
setCommon
(
bool
c ) {
_common
=c; }
55
56
private
:
57
CAMusElement
*
_associatedElt
;
58
CAMarkType
_markType
;
59
bool
_common
;
// is mark assigned to a single element only or the whole chord - depends who deletes it!
60
};
61
62
#endif
/* MARK_H_ */
CAContext
Line of music elements in the sheet.
Definition:
context.h:16
CAMark
Marks that depend on other music elements.
Definition:
mark.h:15
CAMark::CAMarkType
CAMarkType
Definition:
mark.h:17
CAMark::Tempo
@ Tempo
Definition:
mark.h:20
CAMark::Fingering
@ Fingering
Definition:
mark.h:31
CAMark::Pedal
@ Pedal
Definition:
mark.h:24
CAMark::Fermata
@ Fermata
Definition:
mark.h:28
CAMark::Undefined
@ Undefined
Definition:
mark.h:18
CAMark::RehersalMark
@ RehersalMark
Definition:
mark.h:27
CAMark::Dynamic
@ Dynamic
Definition:
mark.h:22
CAMark::BookMark
@ BookMark
Definition:
mark.h:26
CAMark::Ritardando
@ Ritardando
Definition:
mark.h:21
CAMark::Crescendo
@ Crescendo
Definition:
mark.h:23
CAMark::InstrumentChange
@ InstrumentChange
Definition:
mark.h:25
CAMark::Articulation
@ Articulation
Definition:
mark.h:30
CAMark::RepeatMark
@ RepeatMark
Definition:
mark.h:29
CAMark::Text
@ Text
Definition:
mark.h:19
CAMark::_markType
CAMarkType _markType
Definition:
mark.h:58
CAMark::setCommon
void setCommon(bool c)
Definition:
mark.h:54
CAMark::isCommon
bool isCommon()
Definition:
mark.h:48
CAMark::compare
virtual int compare(CAMusElement *elt)
Definition:
mark.cpp:136
CAMark::markTypeFromString
static CAMarkType markTypeFromString(const QString s)
Definition:
mark.cpp:82
CAMark::_common
bool _common
Definition:
mark.h:59
CAMark::setMarkType
void setMarkType(CAMarkType type)
Definition:
mark.h:46
CAMark::CAMark
CAMark(CAMarkType type, CAMusElement *associatedElt, int timeStart=-1, int timeLength=-1)
Definition:
mark.cpp:19
CAMark::~CAMark
virtual ~CAMark()
Definition:
mark.cpp:126
CAMark::setAssociatedElement
void setAssociatedElement(CAMusElement *elt)
Definition:
mark.h:43
CAMark::markTypeToString
static const QString markTypeToString(CAMarkType t)
Definition:
mark.cpp:44
CAMark::_associatedElt
CAMusElement * _associatedElt
Definition:
mark.h:57
CAMark::clone
virtual CAMark * clone(CAContext *context)
Definition:
mark.h:38
CAMark::markType
CAMarkType markType()
Definition:
mark.h:45
CAMark::associatedElement
CAMusElement * associatedElement()
Definition:
mark.h:42
CAMusElement
An abstract class which represents every music element in the score.
Definition:
muselement.h:21
CAMusElement::timeStart
virtual int timeStart() const
Definition:
muselement.h:51
CAMusElement::context
CAContext * context()
Definition:
muselement.h:48
CAMusElement::_context
CAContext * _context
Definition:
muselement.h:90
CAMusElement::setContext
void setContext(CAContext *context)
Definition:
muselement.h:49
CAMusElement::timeLength
virtual int timeLength() const
Definition:
muselement.h:53
muselement.h
Generated by
1.9.3