Canorus 0.0
drawableslur.h
Go to the documentation of this file.
1
8#ifndef DRAWABLESLUR_H_
9#define DRAWABLESLUR_H_
10
12#include "score/slur.h"
13
14class CASlur;
15
17public:
18 CADrawableSlur( CASlur *slur, CADrawableContext *c, double x1, double y1, double xMid, double yMid, double x2, double y2 );
19 virtual ~CADrawableSlur();
20
21 CASlur *slur() { return static_cast<CASlur*>(_musElement); }
22
23 void draw(QPainter *p, const CADrawSettings s);
24 CADrawableSlur *clone(CADrawableContext* newContext = 0);
25
26 inline double x1() { return _x1; }
27 inline double y1() { return _y1; }
28 inline double xMid() { return _xMid; }
29 inline double yMid() { return _yMid; }
30 inline double x2() { return _x2; }
31 inline double y2() { return _y2; }
32 inline void setX1(double x1) { _x1 = x1; updateGeometry(); }
33 inline void setY1( double y1 ) { _y1 = y1; updateGeometry(); }
34 inline void setXMid( double xMid ) { _xMid = xMid; updateGeometry(); }
35 inline void setYMid( double yMid ) { _yMid = yMid; updateGeometry(); }
36 inline void setX2( double x2) { _x2 = x2; updateGeometry(); }
37 inline void setY2( double y2 ) { _y2 = y2; updateGeometry(); }
38
39private:
40 void updateGeometry();
41
42 double min(double, double, double);
43 double max(double, double, double);
44 double _x1;
45 double _y1;
46 double _xMid;
47 double _yMid;
48 double _x2;
49 double _y2;
50};
51
52#endif /* DRAWABLESLUR_H_ */
Definition: drawablecontext.h:18
Definition: drawablemuselement.h:16
CAMusElement * _musElement
Definition: drawablemuselement.h:48
Definition: drawableslur.h:16
void setX1(double x1)
Definition: drawableslur.h:32
double y1()
Definition: drawableslur.h:27
double _x1
Definition: drawableslur.h:44
double x1()
Definition: drawableslur.h:26
double x2()
Definition: drawableslur.h:30
void setY1(double y1)
Definition: drawableslur.h:33
void setXMid(double xMid)
Definition: drawableslur.h:34
CADrawableSlur(CASlur *slur, CADrawableContext *c, double x1, double y1, double xMid, double yMid, double x2, double y2)
Definition: drawableslur.cpp:12
void setX2(double x2)
Definition: drawableslur.h:36
void setY2(double y2)
Definition: drawableslur.h:37
void updateGeometry()
Definition: drawableslur.cpp:31
CASlur * slur()
Definition: drawableslur.h:21
double _y2
Definition: drawableslur.h:49
double y2()
Definition: drawableslur.h:31
double min(double, double, double)
Definition: drawableslur.cpp:42
virtual ~CADrawableSlur()
Definition: drawableslur.cpp:28
double max(double, double, double)
Definition: drawableslur.cpp:54
void draw(QPainter *p, const CADrawSettings s)
Definition: drawableslur.cpp:63
double _xMid
Definition: drawableslur.h:46
void setYMid(double yMid)
Definition: drawableslur.h:35
double _x2
Definition: drawableslur.h:48
double _y1
Definition: drawableslur.h:45
double xMid()
Definition: drawableslur.h:28
double _yMid
Definition: drawableslur.h:47
double yMid()
Definition: drawableslur.h:29
virtual CADrawable * clone()
Definition: drawable.cpp:23
Slur, Tie, Phrasing slur and Laissez vibrer tie This class represents any type of slur....
Definition: slur.h:18
Definition: drawable.h:16