1
/***************************************************************************
2
* Copyright (C) 2013 by Tomasz Bojczuk *
3
* tomaszbojczuk@gmail.com *
5
* This program is free software; you can redistribute it and/or modify *
6
* it under the terms of the GNU General Public License as published by *
7
* the Free Software Foundation; either version 3 of the License, or *
8
* (at your option) any later version. *
10
* This program is distributed in the hope that it will be useful, *
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13
* GNU General Public License for more details. *
15
* You should have received a copy of the GNU General Public License *
16
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
17
***************************************************************************/
19
#ifndef TSCOREPIANOSTAFF_H
20
#define TSCOREPIANOSTAFF_H
22
#include <tscorestaff.h>
24
class TscorePianoStaff : public TscoreStaff
29
TscorePianoStaff(TscoreScene *scene, int notesNr);
32
virtual void setNote(int index, Tnote ¬e);
33
virtual void setNoteDisabled(int index, bool isDisabled);
35
virtual void setEnableKeySign(bool isEnabled);
37
virtual void setScoreControler(TscoreControl *scoreControl);
39
virtual void setDisabled(bool disabled);
41
virtual void setScordature(Ttune &tune);
42
virtual bool hasScordature() { return lower()->hasScordature(); } /** @p TRUE when staff has got scordature. */
44
virtual QRectF boundingRect() const;
48
/** Those slots ties key signatutes in two staves. */
49
void upperStaffChangedKey();
50
void lowerStaffChangedKey();
51
/** It has doubled noteSegments (for each staff).
52
* Those slots manage this. */
53
void upperNoteChanged(int noteIndex);
54
void lowerNoteChanged(int noteIndex);
55
/** Takes care about signal clefChanged from lower staff. */
56
void lowerStaffClefChanged(Tclef clef);
59
qreal m_lowerHeight; // height of lower staff
63
#endif // TSCOREPIANOSTAFF_H