add more backported fixes
[alioth/musescore.git] / debian / patches / upstream / pitch-Cb-B#.diff
1 Origin: upstream, commit:58d603b499ba6d89455a98af382f4150fc4efd5b
2 Author: Matt McClinch <mattmcclinch@gmail.com>
3 Description: fix #290987: B# and Cb octave change
4  Resolves: https://musescore.org/en/node/290987.
5  .
6  Make sure that B#, B##, Cb, and Cbb describe themselves as being in the
7  correct octave. This is accomplished by calculating the octave based on
8  what the pitch would be if there were no accidental. Thus, there is no
9  need to special-case certain tpcs.
10
11 --- a/libmscore/note.cpp
12 +++ b/libmscore/note.cpp
13 @@ -415,7 +415,7 @@ int Note::tpc() const
14  QString Note::tpcUserName(bool explicitAccidental) const
15        {
16        QString pitchName = tpc2name(tpc(), NoteSpellingType::STANDARD, NoteCaseType::AUTO, explicitAccidental);
17 -      QString octaveName = QString::number(((epitch() + ottaveCapoFret()) / 12) - 1);
18 +      QString octaveName = QString::number(((epitch() + ottaveCapoFret() - int(tpc2alter(tpc()))) / 12) - 1);
19        return pitchName + (explicitAccidental ? " " : "") + octaveName;
20        }
21