Skip to content

Commit

Permalink
Merge pull request #843 from mgavioli/Fix_25423_Issues_with_staff_typ…
Browse files Browse the repository at this point in the history
…es_in_parts

Fix 25423 - Issues with staff types in parts
  • Loading branch information
mgavioli committed Apr 16, 2014
2 parents 63d4801 + 79b7d5b commit f6e02ea
Show file tree
Hide file tree
Showing 40 changed files with 50 additions and 17,866 deletions.
25 changes: 17 additions & 8 deletions libmscore/score.cpp
Expand Up @@ -291,10 +291,12 @@ void Score::init()
_scoreFont = ScoreFont::fontFactory("emmentaler");

_pageNumberOffset = 0;
int numOfPresets = StaffType::numOfPresets();
for (int idx = 0; idx < numOfPresets; idx++) {
StaffType * st = StaffType::preset(idx)->clone();
addStaffType(st);
if (!parentScore()) {
int numOfPresets = StaffType::numOfPresets();
for (int idx = 0; idx < numOfPresets; idx++) {
StaffType * st = StaffType::preset(idx)->clone();
addStaffType(st);
}
}

_mscVersion = MSCVERSION;
Expand Down Expand Up @@ -1982,10 +1984,17 @@ void Score::addStaffType(int idx, StaffType* st)
// if the modified staff type IS replacing an existing type
else {
StaffType* oldStaffType = *(s->_staffTypes[idx]);
// update the type of each score staff which uses the old type
for (int staffIdx = 0; staffIdx < staves().size(); staffIdx++)
if (staff(staffIdx)->staffType() == oldStaffType)
staff(staffIdx)->setStaffType(st);
// update the type of each root score staff which uses the old type
// as well as the type of each staff linked to each score staff
for (int staffIdx = 0; staffIdx < s->staves().size(); staffIdx++) {
Staff* currStaff = s->staff(staffIdx);
if (currStaff->staffType() == oldStaffType)
currStaff->setStaffType(st);
if (currStaff->linkedStaves())
foreach (Staff* linkStaff, currStaff->linkedStaves()->staves())
if (linkStaff->staffType() == oldStaffType)
linkStaff->setStaffType(st);
}
// store the updated staff type
*(s->_staffTypes[idx]) = st;
// delete old staff type if not built-in
Expand Down
4 changes: 2 additions & 2 deletions libmscore/staff.cpp
Expand Up @@ -163,7 +163,7 @@ Staff::Staff(Score* s)
_rstaff = 0;
_part = 0;
_keymap[0] = KeySigEvent(0); // default to C major
_staffType = _score->staffType(STANDARD_STAFF_TYPE);
_staffType = _score->rootScore()->staffType(STANDARD_STAFF_TYPE);
_small = false;
_invisible = false;
_userDist = .0;
Expand All @@ -182,7 +182,7 @@ Staff::Staff(Score* s, Part* p, int rs)
_rstaff = rs;
_part = p;
_keymap[0] = KeySigEvent(0); // default to C major
_staffType = _score->staffType(STANDARD_STAFF_TYPE);
_staffType = _score->rootScore()->staffType(STANDARD_STAFF_TYPE);
_small = false;
_invisible = false;
_userDist = .0;
Expand Down
279 changes: 0 additions & 279 deletions mtest/guitarpro/arpeggio_up_down.gp4-ref.mscx
Expand Up @@ -47,285 +47,6 @@
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
<StaffType idx="14" group="pitched">
<name>Standard</name>
<lines>5</lines>
<lineDistance>1</lineDistance>
<clef>1</clef>
<slashStyle>0</slashStyle>
<barlines>1</barlines>
<timesig>1</timesig>
</StaffType>
<StaffType idx="15" group="percussion">
<name>Perc. 1 line</name>
<lines>1</lines>
<lineDistance>1</lineDistance>
<clef>1</clef>
<slashStyle>0</slashStyle>
<barlines>1</barlines>
<timesig>1</timesig>
<keysig>0</keysig>
</StaffType>
<StaffType idx="16" group="percussion">
<name>Perc. 3 lines</name>
<lines>3</lines>
<lineDistance>1</lineDistance>
<clef>1</clef>
<slashStyle>0</slashStyle>
<barlines>1</barlines>
<timesig>1</timesig>
<keysig>0</keysig>
</StaffType>
<StaffType idx="17" group="percussion">
<name>Perc. 5 lines</name>
<lines>5</lines>
<lineDistance>1</lineDistance>
<clef>1</clef>
<slashStyle>0</slashStyle>
<barlines>1</barlines>
<timesig>1</timesig>
<keysig>0</keysig>
</StaffType>
<StaffType idx="18" group="tablature">
<name>Tab. 6-str simple</name>
<lines>6</lines>
<lineDistance>1.5</lineDistance>
<clef>1</clef>
<slashStyle>1</slashStyle>
<barlines>1</barlines>
<timesig>0</timesig>
<durations>0</durations>
<durationFontName>MuseScore Tab Modern</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Sans</fretFontName>
<fretFontSize>9</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>0</linesThrough>
<minimStyle>0</minimStyle>
<onLines>1</onLines>
<showRests>0</showRests>
<stemsDown>1</stemsDown>
<stemsThrough>0</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
<StaffType idx="19" group="tablature">
<name>Tab. 6-str common</name>
<lines>6</lines>
<lineDistance>1.5</lineDistance>
<clef>1</clef>
<slashStyle>0</slashStyle>
<barlines>1</barlines>
<timesig>0</timesig>
<durations>0</durations>
<durationFontName>MuseScore Tab Modern</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Serif</fretFontName>
<fretFontSize>9</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>0</linesThrough>
<minimStyle>1</minimStyle>
<onLines>1</onLines>
<showRests>0</showRests>
<stemsDown>1</stemsDown>
<stemsThrough>0</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
<StaffType idx="20" group="tablature">
<name>Tab. 6-str full</name>
<lines>6</lines>
<lineDistance>1.5</lineDistance>
<clef>1</clef>
<slashStyle>0</slashStyle>
<barlines>1</barlines>
<timesig>1</timesig>
<durations>0</durations>
<durationFontName>MuseScore Tab Modern</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Serif</fretFontName>
<fretFontSize>9</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>0</linesThrough>
<minimStyle>2</minimStyle>
<onLines>1</onLines>
<showRests>1</showRests>
<stemsDown>1</stemsDown>
<stemsThrough>1</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
<StaffType idx="21" group="tablature">
<name>Tab. 4-str simple</name>
<lines>4</lines>
<lineDistance>1.5</lineDistance>
<clef>1</clef>
<slashStyle>1</slashStyle>
<barlines>1</barlines>
<timesig>0</timesig>
<durations>0</durations>
<durationFontName>MuseScore Tab Modern</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Sans</fretFontName>
<fretFontSize>9</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>0</linesThrough>
<minimStyle>0</minimStyle>
<onLines>1</onLines>
<showRests>0</showRests>
<stemsDown>1</stemsDown>
<stemsThrough>0</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
<StaffType idx="22" group="tablature">
<name>Tab. 4-str common</name>
<lines>4</lines>
<lineDistance>1.5</lineDistance>
<clef>1</clef>
<slashStyle>0</slashStyle>
<barlines>1</barlines>
<timesig>0</timesig>
<durations>0</durations>
<durationFontName>MuseScore Tab Modern</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Serif</fretFontName>
<fretFontSize>9</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>0</linesThrough>
<minimStyle>1</minimStyle>
<onLines>1</onLines>
<showRests>0</showRests>
<stemsDown>1</stemsDown>
<stemsThrough>0</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
<StaffType idx="23" group="tablature">
<name>Tab. 4-str full</name>
<lines>4</lines>
<lineDistance>1.5</lineDistance>
<clef>1</clef>
<slashStyle>0</slashStyle>
<barlines>1</barlines>
<timesig>0</timesig>
<durations>0</durations>
<durationFontName>MuseScore Tab Modern</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Serif</fretFontName>
<fretFontSize>9</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>0</linesThrough>
<minimStyle>2</minimStyle>
<onLines>1</onLines>
<showRests>1</showRests>
<stemsDown>1</stemsDown>
<stemsThrough>1</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
<StaffType idx="24" group="tablature">
<name>Tab. ukulele</name>
<lines>4</lines>
<lineDistance>1.5</lineDistance>
<clef>1</clef>
<slashStyle>0</slashStyle>
<barlines>1</barlines>
<timesig>0</timesig>
<durations>0</durations>
<durationFontName>MuseScore Tab Modern</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Serif</fretFontName>
<fretFontSize>9</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>0</linesThrough>
<minimStyle>1</minimStyle>
<onLines>1</onLines>
<showRests>1</showRests>
<stemsDown>1</stemsDown>
<stemsThrough>0</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
<StaffType idx="25" group="tablature">
<name>Tab. balalajka</name>
<lines>3</lines>
<lineDistance>1.5</lineDistance>
<clef>1</clef>
<slashStyle>0</slashStyle>
<barlines>1</barlines>
<timesig>0</timesig>
<durations>0</durations>
<durationFontName>MuseScore Tab Modern</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Serif</fretFontName>
<fretFontSize>9</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>0</linesThrough>
<minimStyle>1</minimStyle>
<onLines>1</onLines>
<showRests>1</showRests>
<stemsDown>1</stemsDown>
<stemsThrough>0</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
<StaffType idx="26" group="tablature">
<name>Tab. 6-str Italian</name>
<lines>6</lines>
<lineDistance>1.5</lineDistance>
<clef>0</clef>
<slashStyle>1</slashStyle>
<barlines>1</barlines>
<timesig>1</timesig>
<durations>1</durations>
<durationFontName>MuseScore Tab Italian</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Renaiss</fretFontName>
<fretFontSize>10</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>1</linesThrough>
<minimStyle>0</minimStyle>
<onLines>1</onLines>
<showRests>1</showRests>
<stemsDown>0</stemsDown>
<stemsThrough>0</stemsThrough>
<upsideDown>1</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
<StaffType idx="27" group="tablature">
<name>Tab. 6-str French</name>
<lines>6</lines>
<lineDistance>1.5</lineDistance>
<clef>0</clef>
<slashStyle>1</slashStyle>
<barlines>1</barlines>
<timesig>1</timesig>
<durations>1</durations>
<durationFontName>MuseScore Tab French</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Renaiss</fretFontName>
<fretFontSize>10</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>1</linesThrough>
<minimStyle>0</minimStyle>
<onLines>0</onLines>
<showRests>0</showRests>
<stemsDown>0</stemsDown>
<stemsThrough>0</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>0</useNumbers>
</StaffType>
<showInvisible>1</showInvisible>
<showUnprintable>1</showUnprintable>
<showFrames>1</showFrames>
Expand Down

0 comments on commit f6e02ea

Please sign in to comment.