Commit graph

785 commits

Author SHA1 Message Date
ws
14ee35ba52 misc. regression fixes 2016-04-13 11:20:05 +02:00
ws
97345495ec fix regressions for system divider 2016-04-13 11:19:01 +02:00
ws
dfe49b06ad barline cleanup 2016-04-13 11:18:15 +02:00
ws
989aae1d93 fix note dot handling in inspector 2016-04-13 11:18:15 +02:00
ws
f9d61ba574 fix layout for harmony elements 2016-04-13 11:18:15 +02:00
ws
9ec1d02471 code cleanups & speed optimizations 2016-04-13 11:18:14 +02:00
ws
492709f203 code cleanups 2016-04-13 11:10:17 +02:00
ws
3d8749ffe9 some regression fixes, code cleanups 2016-04-13 11:08:01 +02:00
ws
9f933d8503 Layout reorganization 2016-04-13 11:05:04 +02:00
lasconic
66d75cc8cf fix #103801: clean up a few -Wmaybe-uninitialized warnings 2016-03-28 15:29:43 +04:00
Marc Sabatella
ffb2559f1d fix #44956: staves with text are not empty 2016-02-18 20:25:00 -07:00
Nicolas Froment
1e2ec0d825 Merge pull request #2348 from MarcSabatella/88061-lyric-voice-y
fix #88061: bad staff spacing with lyrics in multiple voices
2016-02-17 17:52:42 +04:00
Marc Sabatella
3f44c3e9c0 fix #97931: system initial barline type lost on reload 2016-02-16 14:06:13 -07:00
Eric Fontaine
7aa8c7e6cd fix #96971 suppress benign make release warnings
This commit removes some -Wempty-body, -Wmaybe-uninitialized, -Wunused-variable, and -Wstrict-overflow compiler warnings that arise on my x86-64 and ARM arch linux machines when compiling release.
These compiler warnings don't seem to cause any bugs, but since they pollute the build output, they make it harder to spot potentially important warnings that might arise, so I'm making these small changes to keep the build output clean.
The "empty-body" warnings occur because the Q_ASSERT statements are removed for release compiles, causing the else blocks to be empty.  Surrounding the Q_ASSERT with brackets will let the compiler know we aren't unintentionally having an empty else body.
The "maybe-uninitialized" warnings are handled by assigning the variables to 0 either at initialization or in a switch default block.
The "unused-variable" warning is due to PeriodItem updatePeriods[] in preferences.cpp being defined but never used, so I've removed PeriodItem.  Also a recent commit has an unused "int staves", which I've removed.
The "strict-overflow" warning is due to compiler wanting to perform an optimization which would cause signed overflow during a comparison operation.  I've made the compiler happy by casting the barIndex'es into unsigned ints, so it doesn't have to worry.
2016-02-12 01:28:16 -05:00
lasconic
9f05f02636 fix #81731: Crash when repeatedly pressing Shift+A 2016-01-22 11:34:31 +04:00
Marc Sabatella
a14fb3fe59 fix #88061: bad staff spacing with lyrics in multiple voices 2016-01-16 19:10:19 -07:00
Marc Sabatella
8a1232524b fix #92626: corruption when removing all existing staves and adding new ones 2016-01-03 12:40:36 -07:00
ws
d8e4373435 make DPI=72 constant 2015-11-16 14:24:47 +01:00
ws
deaac4ae40 change debug output to mm 2015-11-10 11:31:08 +01:00
ws
164f5d02c2 more debug infos during layout 2015-11-10 11:02:52 +01:00
ws
eb315facf4 fix merge conflicts 2015-10-28 17:54:18 +01:00
Werner Schweer
aa648cf6ee Merge pull request #2227 from ericfont/78216-no-courtesy-key-time-sig-ends-non-measure-layoutSystemRow
fix #78216 no courtesy key or time sig if section ends on non-measure
2015-10-28 16:21:25 +01:00
Werner Schweer
e35a2a124d Merge pull request #2150 from MarcSabatella/cutaway
Support temporary & cutaway staves
2015-10-28 12:07:31 +01:00
Werner Schweer
00949255cc Merge pull request #2226 from MarcSabatella/78261-repeat-drop-style
fix #78261: text style not honored when adding repeat via double click
2015-10-28 10:07:58 +01:00
ws
4d487f5daa fix copy constructor of MStaff 2015-10-28 09:42:14 +01:00
Werner Schweer
5c5f5e77ef Merge pull request #2239 from mgavioli/LYRICS_Better_dash_control
Lyrics: Better dash control
2015-10-27 16:53:36 +01:00
lasconic
dd4530ea50 fix #83266: Repeat measure from MuseScore 1.3 is not imported correctly in MuseScore 2 2015-10-12 16:09:12 +01:00
Maurizio M. Gavioli
8c017d8536 Lyrics: Better dash control
This patch gives better control on lyrics dash management and it is intended to supersede https://github.com/musescore/MuseScore/pull/2213 which did not suit the taste of several forum users; for a discussion, see https://musescore.org/en/node/76021 .

Adds 3 new score style parameters:
- `lyricsDashMinLength` to control the minimum dash length (default: 0.4sp)
- `lyricsDashMaxLength` to control the maximum dash length (default: 0.8sp)
- `lyricsDashForce`: if set to __true__, a dash is always generated between two syllables of a word and, if there is not enough space for the min dash length, more space is added between the syllables to accommodate it; if set to __false__, no extra space is added and the two syllables are joined together (default: true)

The effect of the last parameter is exemplified by the following screen-shots:

Current situation (before this patch); if there is no room for the min dash length, the dash is skipped and some blank is left between syllables:

Patch with `lyricsDashForce = true`; chords are further spaced and a min-length dash is inserted:

Patch with `lyricsDashForce = false`: the second syllable is moved (slightly) to the left to reclaim the blank:
2015-10-03 23:55:33 +02:00
Eric Fontaine
5f1ec2c513 fix #78216 no courtesy key or time sig if section ends on non-measure
If a section break occurs on a non-measure MeasureBase object such as a vertical or horizontal frame, then the courtesy key or time signature should still not be displayed in the final actual measure of the section.
2015-09-19 05:53:40 -04:00
Marc Sabatella
c0d7898757 fix #78261: text style not honoroed when adding repeat via double click 2015-09-18 09:56:20 -06:00
Marc Sabatella
c235ff79cf fix #75861: crash adding timesig to note or rest on page >1 2015-09-05 07:16:03 -06:00
Marc Sabatella
7ac83bf5fe fix #22626: automatic system dividers 2015-08-15 11:30:58 -06:00
Marc Sabatella
ccb17c4cc7 add UI (staff properties) 2015-08-04 11:53:54 -06:00
Marc Sabatella
4228f5a52a initial implementation using showIfEmpty 2015-07-31 17:28:55 -06:00
Maurizio M. Gavioli
f1a76e82a0 Fix #69846, #69821, #63561 - multi-voice TAB's: stem and slur positions
__Background__:

In the original TAB implementation, the "Stems above / below" setting was followed when there was only one voice, while with multiple voices, voice 1 stems were always above and voice 2 stems always below.

In issue https://musescore.org/en/node/63561 the OP reported that:
- with multiple voices, stems in TAB did not follow the "Stems above / below" setting;
- extra space was allocated for voice 2 stems.

Both issues were more apparent than real, because the example provided casually had no stems in voice 2 (all whole notes). With the commit 33797cd6c5 :
- voice 1 stems are forced to be below or down according to the setting even for multi-voice cases and voice 2 stems on the opposite side;
- additional distance is allocated above the TAB staff (but not below) if stems are above or there are multiple voices or below (but not above) if stems are below and there is only voice 1.

__Issues__:

1a) The original stem directions were __by design__, assuming that with multiple voices notes of voice 1 tend to be above and notes of voice 2 tend to be below; then it is more sensible to put voice 1 stems above and voice 2 stems below, limiting the "Stems above / below" setting to the single voice case only.

1b) Stem direction controls slurs and tie placement and users are complaining that, with multiple voices, stems, slurs and ties are placed unexpectedly. See issue https://musescore.org/en/node/69846 and forum post https://musescore.org/en/node/69821 .

2) About additional staff distance allocation, with multiple voices it has to be allocated __both__ above and below, as stems may appear both above and below.

__Fix__:

1) This patch fixes 1) by restoring the original stem direction computation (single voice: follow "Stems above / below" setting | multiple voices: voice 1 unconditionally above and voice 2 below) when tab is configured to have stems beside the staff and also when it is configured to have __no stems at all_ (so that slurs and ties occur in expected positions).

2) It corrects additional staff distance allocation for the multiple voice case. No resources are spent to check the odd case when one voice casually has no stems over the entire system (in which case, additional distance on that side could in theory be spared).
2015-07-26 20:55:02 +02:00
ws
c51fa84817 allow key changes at every tick position 2015-07-19 17:18:38 +02:00
Marc Sabatella
0362ea01a1 fix #41786: barline span issues after edit / instrument 2015-07-14 21:08:20 -06:00
Marc Sabatella
f3ef080b51 back out hide empty staves support 2015-07-14 19:35:03 -06:00
Marc Sabatella
b5df3b7e7c partial fix for regression disabling hide empty staves 2015-07-14 12:30:43 -06:00
Marc Sabatella
a37ba698ea avoid creating extra barlines on hidden staves 2015-07-13 20:45:58 -06:00
Marc Sabatella
166292c87b fix #68921: reordering staves leaves barline spans in disarray 2015-07-13 19:31:17 -06:00
Marc Sabatella
b76068485e fix #68806: bad barline span with hidden/invisible staves 2015-07-13 13:56:55 -06:00
ws
b8adcc617d fix #50921 Reduce stretch has bad effect on other measure as soon as stretch factor reaches 0 2015-06-17 09:56:12 +02:00
Marc Sabatella
3e7f828e74 fix #65041: breath interferes with chord symbol spacing 2015-06-12 13:09:06 -06:00
Marc Sabatella
b4bdcddc9d fix #64911: space before start repeat 2015-06-11 23:04:43 -06:00
Werner Schweer
adfaf36671 Merge pull request #2045 from MarcSabatella/63711-atonal-naturals
fix #63711: no naturals on change to atonal key signature
2015-06-10 10:11:44 +02:00
Marc Sabatella
9f9eb54f4e fix #64506: temporary corruption on add of measure repeat 2015-06-09 14:25:02 -06:00
lasconic
b433fdd302 fix #64206: Repeat Measure sign in one staff of multi-stave inst. causes repeated playback of all staves 2015-06-08 18:54:57 +02:00
Marc Sabatella
432e14b300 fix #63711: no naturals on change to atonal key signature 2015-06-06 13:26:13 -06:00
lasconic
33797cd6c5 fix #63561: TAB - Modified stem direction - don't work properly 2015-06-03 15:24:07 +02:00
lasconic
bf735e6a97 fix #50921: 'Reduce stretch' has bad effect on other measures as soon as stretch factor reaches 0 2015-05-30 16:08:46 +02:00
lasconic
61eed11401 fix all warnings on Mac OSX. Hopefully without side effects on other platforms. 2015-05-05 18:28:39 +02:00
lasconic
7def880b6d fix #58571: Rehearsal marks in scores created in MuseScore 1.3 not treated as such 2015-05-02 12:03:39 +02:00
ws
892e5887f9 fix #57861 bad import of & in part name 2015-04-27 13:03:52 +02:00
Marc Sabatella
9385df24bd fix #56146: bad read/layout for 1.3 score with invalid symbol tick 2015-04-12 14:14:41 -06:00
ws
b3769043ce fix #54346 Clef in part is offseted when system text is present in pickup 2015-04-10 13:23:18 +02:00
ws
a7d72aed4b Revert "add missing test files"
This reverts commit 06cdfc968f.
2015-04-10 13:05:17 +02:00
ws
06cdfc968f add missing test files 2015-04-10 12:49:29 +02:00
ws
3e8cb5b2e5 fix #54556 Multimeasure clef position bug 2015-04-09 13:48:56 +02:00
ws
03c13fa33e fix reading of xml tag breakMultiMeasureRest and 'irregular' 2015-04-08 11:58:33 +02:00
ws
fd0fe54097 remove RubberBand element 2015-03-31 17:35:18 +02:00
ws
772c691dcb update mtest 2015-03-30 12:38:30 +02:00
ws
41fa148894 fix #51881 Measure number mode not preserved on save/reload 2015-03-30 11:12:17 +02:00
ws
8282094dd6 code cleanups; rename instr() to instrument() 2015-03-26 13:11:46 +01:00
Marc Sabatella
6ae4987fd4 fix #50491: corruption changing length of measure back to nominal 2015-03-12 18:07:34 -06:00
Marc Sabatella
74753d04e1 fix #35826: layout time sig on staff add 2015-03-10 22:31:47 -06:00
ws
75bd3ba77e fix slurs from staff n to staff n-1 2015-03-03 15:45:53 +01:00
lasconic
cebbef5cf5 fix barline translation in palette 2015-02-25 11:54:31 +01:00
Maurizio M. Gavioli
3331b668b8 Bar line user offset lost on score save and reload 2015-02-19 23:55:41 +01:00
ws
29ba6bb24d fix #46731 Wrong barline placement inside a measure (second try) 2015-02-19 13:36:46 +01:00
ws
329124c789 some layout optimizations/claenups 2015-02-19 10:33:46 +01:00
Nicolas Froment
fadb223d1b Merge pull request #1536 from mgavioli/glissando_v2
Glissando as a multi-segment line.
2015-02-18 15:23:22 +01:00
ws
e7591d1d63 fix regression in detecting multi measure rests 2015-02-18 12:26:26 +01:00
Maurizio M. Gavioli
f5d831a023 Glissando as a multi-segment line.
- Implemented as a sub-class of `SLine`.
- Anchor type changed from CHORD to NOTE: allows to attach glissando start and end points to individual notes, rather than generically to chords (with note within the chord chosen by the program).
- The Glissando element is now stored in the `Note::_spannerFor` list.
- `Chord::_glissando` has been removed and replaced by a `bool _endsGlissando`, recording whether the chord is at the end of glissando (as gliss.-end chords require more space if mid-measure or system-initial).
- Debugger UI for `Chord` updated accordingly.
- Glissando in now save into score file as a spanner, within the initial note, and with appropriate `<endSpanner>` tag in the Glissando ending note.
- Existing scores with the old Glissando file format are correctly read back.

Notes:

- MusicXML import/export of the new Glissando implementation NOT IMPLEMENTED.
- This version can read scores from older versions, but older versions **cannot read** scored from this version (they do not expect a <Glissando> tag within a Note). Does this require a NEW FILE VERSION NUMBER?
- This implementation would allow rather easily to move the start and end anchors around (as for slurs) to override the note/chord chosen by the program when the glissando is initially created; but the UI for this is not implemented yet.
2015-02-18 12:21:56 +01:00
ws
ec8913a19b fix #45601 changing note value can lead to missing accidentals; simplify layout() 2015-02-17 20:22:38 +01:00
ws
50bc1b6dad fix undo of local time signature change 2015-02-16 09:44:39 +01:00
ws
c94d62d5a5 fix #23254 LAyout/undo issues with clef change after repeat barline 2015-02-14 16:24:52 +01:00
ws
8dacb7f27b fix #47141 Wrong results ion lined staves (Tab and standard) when dragging notes with mouse 2015-02-12 11:41:39 +01:00
ws
cf37ea318a fix #31696 Add Drumset checkbox to the Mixer 2015-02-11 13:17:06 +01:00
Marc Sabatella
d79bd3a502 fix #46401: breath segments placed too early 2015-02-06 22:32:34 -07:00
ws
8b747c1201 fix #22040 No impending save after making changes to Edit Drumset 2015-02-04 19:51:24 +01:00
Werner Schweer
e951b925e5 Merge pull request #1707 from MarcSabatella/section-pause
fix #37191: playback of breath & section break pauses
2015-02-02 10:30:45 +01:00
Werner Schweer
ac8c99ba2d Merge pull request #1692 from MarcSabatella/check-multi-voice
fix #9355: only offset rests / flip stems if multivoice visible
2015-02-02 10:10:46 +01:00
Marc Sabatella
4becc39ecb fix #37191: playback of breath & section break pauses 2015-01-29 14:57:36 -07:00
ws
3f5d291998 fix #6861: Changing from pitched to non-pitched instrument and undo retains note heads of the latter 2015-01-29 10:39:00 +01:00
Marc Sabatella
4b4ac70a78 fix #9355: only offset rests / flip stems if multivoice visible 2015-01-27 23:33:26 -07:00
ws
1634901bc9 fix #42466: Add a staff to an other which contains a local time signature causes a crash 2015-01-26 12:48:32 +01:00
Werner Schweer
69fcd6e94a Merge pull request #1677 from mgavioli/Fix_15022_29526_improve_graces_after_chord
Fix #15022 and #29526 - Improve layout of grace notes after chord
2015-01-26 10:36:59 +01:00
Werner Schweer
db768c4cbe Merge pull request #1671 from mgavioli/no_lyrics_syll_padding_in_measure
Do not expect padding for lyrics syllabic dashes in Measure layout
2015-01-26 10:32:41 +01:00
ws
898e4a3bc8 fix #45436: Multi-voice grace notes collide with bar line 2015-01-26 10:23:35 +01:00
Maurizio M. Gavioli
1d070a3e96 Fix #15022 and 29526 - Improve layout of grace notes after chord
An attempt to improve the layout of grace notes after chord. It probably does not cover all the possible interactions with other score elements, particularly in tight scores, but it should achieve reasonable results for common cases with a rather simple algorithm.

For some discussion and examples, see the original issue at http://musescore.org/en/node/15022 and the forum thread at http://musescore.org/en/node/45346
2015-01-25 23:00:59 +01:00
Maurizio M. Gavioli
a4a51787bb Do not expect padding for lyrics syllabi dashes in Measure layout
In `Measure::layoutX()` and in `Score::computeMinWidth()` there is code to add room for dash padding in lyrics syllables, with a reference to `System::layoutLyrics()`.

As `System_layoutLLyrics()` no longer exists and as `LyricsLineSegment::layout()` now adjusts (and occasionally skips) dash width to actual note distance, this is now redundant and may in some cases interfere with the `LyricsLineSegment::layout()` calculations.

Some tests with rather dense polyphonic scores did show that some space may be gained, without raising any evident 'crowding' problem.
2015-01-23 22:26:44 +01:00
Marc Sabatella
45b6bb4cf6 Merge pull request #1661 from MarcSabatella/44991-note-entry-accidental-state
fix #44991: wrong accidental for transposing instruments in note entry
2015-01-22 16:41:46 -07:00
Werner Schweer
de4961e10e Merge pull request #1663 from mgavioli/small_barlines_width_and_alignment_A
Bar Lines: Correct width and alignment in small staves NICE SOLUTION
2015-01-22 14:59:10 +01:00
Maurizio M. Gavioli
0ce91b6e4d Bar Lines: Correct width and alignment in small staves NICE SOLUTION
In small staves, some types of bar lines are drawn with small lines and some are not (mainly end bar lines). In addition all bar lines of a measure are left-aligned; when small and regular staves are mixed this looks untidy for mid-system bar lines and quite wrong for system-end bar lines. See http://musescore.org/en/node/44966 for a discussion and an example.

This patch tries to achieve the best-looking possible result:
- it lays out and draws all bar lines in small staves with small widths
- it right-aligns end bar lines, end-repeat bar lines and any bar line at system end
- it left-aligns start-repeat bar lines
- it centre-aligns any other bar line.
2015-01-22 02:18:49 +01:00
Marc Sabatella
e3181a8af6 fix #44991: wrong accidental for transposing instruments in note entry 2015-01-21 10:31:12 -07:00
ws
69febbce94 fix #44676: Change of duration of measures including grace notes (acciaccatura) causes a crash in tab staff 2015-01-21 11:57:57 +01:00
ws
16764d4614 fix #44466: Crash extending volta over mmrest starting a new system + other cleanups 2015-01-19 12:41:16 +01:00
ws
1b51e5832a Merge branch 'master' of github.com:musescore/MuseScore 2015-01-12 14:07:17 +01:00
ws
69dd28e7df preparations for changing division value 2015-01-12 14:07:05 +01:00
Maurizio M. Gavioli
c69d2a9262 Lyrics multi-system melisma and dashes
Implements melisma and dash lines for lyrics spanning several systems.

The melisma and dash line is based on the `SLine` class and its segments on the `LineSegment` class. Both the whole line and its segments are not selectable, marked as generated and not saved in the score file, which is not changed in any way.

For very wide dash segments, several dashes are drawn; the distance between the dashes is not configurable.

Lyrics layout code in `Measure` class and in `layout.cpp` file has been commented out as the lyrics line layout is all contained in the lyrics.cpp file

The line is registered with the `Score` (to have its layout delayed until all elements are positioned) with a mechanism similar to other `Spanner`'s, but in a different container (`_unmanagedSpanner`), as the owning `Lyrics` should decide when create, register, unregister and delete its line.

The line segments are registered with the `System` they belong to (to have them drawn), in the same way as other `Spanner`'s.

There is code for using the dash metrics of the lyrics font, but it is turned off via a conditional directive, as there does not seem to be a reliable way to determine the dash metrics; conventional values (determined by trials and errors and based on my taste!) are used when the conditional directive is off.
2015-01-11 10:16:19 +01:00
Werner Schweer
24e0c1ff6b Merge pull request #1587 from MarcSabatella/33476-scan-mmrest
fix #33476: select similar and other mmrest issues
2015-01-02 08:46:23 +01:00
Marc Sabatella
0b48254691 slightly more conservative hyphen padding 2014-12-31 17:01:17 -07:00
Marc Sabatella
77e3a87ebf fix #42261: add space before melisma 2014-12-30 23:45:35 -07:00
Marc Sabatella
a03cd4bfd0 fix #33476: select similar and other mmrest issues 2014-12-29 16:59:01 -07:00
lasconic
b1040d8588 fix #41516: Voltas & repeat text do not migrate to top when instrument raised to top of the score 2014-12-20 20:56:40 +01:00
Marc Sabatella
9d7185d89a fix #32231: width of initial measure & other measures with key signatures in continuous view 2014-12-13 17:43:17 -07:00
Nicolas Froment
3fca04120b Merge pull request #1510 from MarcSabatella/40846-ctrl-barline
fix #40846: require Ctrl+drag to create staff-only barline change
2014-12-10 19:44:19 +00:00
ws
8ff4a8f95e fix #29931: Custom key signatures do not show 2014-12-08 18:02:29 +01:00
ws
e835aa54f1 make systemBarLineType a property 2014-12-08 13:36:52 +01:00
Werner Schweer
e4e377a36b Merge pull request #1316 from mgavioli/system_initial_barline_style
Style of the initial bar line of a system.
2014-12-08 13:03:03 +01:00
Marc Sabatella
d3b8157be6 fix #40846: require Ctrl+drag to create staff-only barline change 2014-12-06 16:11:50 -07:00
ws
f3071ac9d0 fix #29931: Custom key signatures do not show 2014-12-04 14:40:26 +01:00
lasconic
8c179655c5 fix mtest 2014-11-28 22:35:25 +01:00
lasconic
c61c9aee68 fix #40036: Tremolo through stem on grace note all eighths in 1.3 score 2014-11-28 19:56:09 +01:00
Marc Sabatella
ff6f2016b9 fix #35661: bad breath position if no tick tag 2014-11-26 16:40:51 -07:00
lasconic
edcaa098a3 fix #31221 2014-11-25 16:53:43 +01:00
Marc Sabatella
58e5a74588 fix #8924: native support for slash notation 2014-11-17 22:02:12 -07:00
ws
666ea12d00 fix #38486 2014-11-12 15:01:36 +01:00
Nicolas Froment
1e8c3a35c9 Merge pull request #1439 from MarcSabatella/38501-cross-staff-gliss
fix #38501: cheap partial fix for cross-staff and cross-system gliss
2014-11-11 13:33:51 +00:00
lasconic
0f3c18d850 fix #38736: take 2 2014-11-10 12:33:32 +00:00
lasconic
8f3c1d3b7b fix #38736: joining some scores via album feature leads to crash 2014-11-10 11:27:08 +00:00
Marc Sabatella
98235e52b2 fix #38501: cheap partial fix for start position of cross-staff and cross-system gliss 2014-11-07 13:23:07 -07:00
ws
6e8ed9b196 addition to fix #37651: complete layout calculations 2014-10-28 15:22:39 +01:00
ws
aa05b92793 fix #37651 2014-10-28 14:41:27 +01:00
ws
4be8014426 fix #37666 2014-10-28 11:47:04 +01:00
ws
fc3ea8e434 fix #29931 2014-10-23 17:00:23 +02:00
Werner Schweer
386775aae4 Merge pull request #1361 from mgavioli/Fix_useless_non-generated_normal_barlines_in_old_scores
Fix bar line generated status when reading old scores
2014-10-13 12:38:34 +02:00
ws
5b6af43bee fix visualization of keysig drop target 2014-10-13 11:23:22 +02:00
ws
986f35d149 fix for mmrest + start repeat 2014-10-10 14:24:37 +02:00
ws
9b8c7c67ee fix #35496 2014-10-10 11:52:44 +02:00
ws
e853dbf4fd fix #33381 2014-10-10 11:15:48 +02:00
Maurizio M. Gavioli
2e14f40b43 Fix bar line generated status when reading old scores
In old scores (1.x and transitional 2.0 scores, including templates and "My First Score"), regular bar lines are often needlessly stored in score files.

These bar lines are read back as non-generated, and may misbehave; for instance, may generate an extra 'courtesy' start-repeat at system end, if an start-repeat is added at the first measure of next system.

This fix normalizes bar line flags if, while reading them back, they are found to be normal.

Note: only a single line of code is changed in Measure::read() methods; the large number of affected files is due to test fixing.
2014-10-08 11:43:46 +02:00
ws
abf64419bb fix #14548 2014-10-08 10:57:24 +02:00
AntonioBL
853af91b2c fix #30681 2014-10-06 18:44:08 +02:00
ws
a614472df7 fix #34876 2014-10-04 18:22:52 +02:00
Nicolas Froment
6006fb6ea6 Merge pull request #1330 from MarcSabatella/33246-hyphen-melisma-space
Spacing of melisma syllables
2014-09-29 18:00:23 +02:00
ws
74065ff7f4 fix #33616 2014-09-29 11:58:44 +02:00
ws
705bd2c315 fix delete nested tuplet in linked stave context 2014-09-29 09:39:45 +02:00
ws
a0d7ad6644 remove ChangeHairpin(); remove unecessary calls to updateHairpin() 2014-09-24 11:19:07 +02:00
Marc Sabatella
ab15653628 avoid overlaps of melisma syllables, extenders, and hyphens 2014-09-22 11:56:32 -06:00
Marc Sabatella
fa7fb047df fix #31901: voice of lyric in 1.3 score ignored 2014-09-21 11:49:09 -06:00
Maurizio M. Gavioli
5621af1c2b Style of the initial bar line of a system.
In some engraving styles (mainly jazz), a double system initial bar line is used at structural articulations of the piece.

The PR supports this style, by adding a `_systemInitialBarLineStyle` variable to the `Measure` class which controls the style of the system bar line when the measure is the first of the system and by default it is set to NORMAL. This variable is not accessed directly; rather it is controlled by manipulating the system bar line. A system bar line can be edited:

- by dropping on it a bar line style from the palette (structural styles, like any repeat or END are ignored);
- by selecting it and double clicking a bar line style from the palette (same note as above).

It can be reset:

- by undo;
- by dropping on it (or selecting and double clicking) a NORMAL bar line style from the palette;
- by selecting and deleting it.

As the system bar line style is stored in the measure, if the first measure of a system changes (because of some other editing), the system bar line style will follow accordingly.
2014-09-16 13:20:15 +02:00
Maurizio M. Gavioli
e7465e9b7c Fix Measure::read() as indicated by failing tests. 2014-09-12 12:52:18 +02:00
Maurizio M. Gavioli
cbfebb38ec Bar lines: Fix custom span and generated management.
This PR should complete the revision of bar line flag managements.

- Make sure single bar line span changes affect both the `_customSpan` and the `_generated` flags.
- Make sure that manually bringing a custom-spanned bar line to default span resets the `_customSpan` flag and, if no other customization is in effect. the `_generated` flag.
- Deleting a measure bar line resets it to default configuration.
- Fix a missing initialization of `Measure::_endBarLineColor` variable.
- To simplify tests and debug, check boxes for the `BarLine::_customSpan` and the `BarLine::_customSubtype` have been added to the debugger dialogue box.

As far as system-initial bar lines are concerned, they were made un-editable by a recent commit (https://github.com/musescore/MuseScore/pull/1300). This PR add a few consistency changes:

- system-initial bar lines do not accept drops;
- they are not saved to score output files and are ignored when reading from them;
- their internal `_customSybtype` and _customSpan` flags are always false;
- they do not show up in the Inspector (if a system bar line is selected, the Inspector remains blank)

This PR DOES NOT include the special system-initial double bar management recently discussed. This will be part of a specific PR in the next days.

Together with previous PR's, this should ensure that:

- bar lines are written to a score output file only when some customization is in effect which cannot be reconstructed when reading back;
- any measure bar line can be edited;
- any measure bar line user edit is saved, written to the score file and read back properly;
- no system bar line edit is possible.
2014-09-11 01:31:10 +02:00
Nicolas Froment
957d26e98b Merge pull request #1285 from MarcSabatella/32441-empty-key
fix #32441: bad layout with empty key signature
2014-09-09 22:04:14 +02:00
Marc Sabatella
107772a987 fix #32441: bad layout with empty key signature 2014-09-07 15:40:23 -06:00
Maurizio M. Gavioli
91e88fe9fa Bar lines: fixing custom type and generated management
There are some inconsistencies in the current management of bar line `_generated` flag and user-modified type:

- Bar lines created by the New Score Wizard are flagged as non-generated, as well as bar lines of measures manually **appended** by the user, while bar lines of measures **inserted** are flagged as generated.
- If a generated bar line is individually changed of typed, it remains flagged as generated, it is not saved and the change is lost upon saving and re-loading.
- The management of the internal flag `BarLine::_customSubtype` is not always consistent.
- The `Measure::_endBarLineGenerated` flag was not always restored properly by undo.

This PR introduces the following fixes:

- The `_generated` flag is consistently used for bar lines whose type can be reconstructed from the context and then do not need to be saved to the output file.
- Normal bar lines are **always** created as generated: initially created by the Wizard, manually appended or inserted.
- Bar lines with custom type (i.e. different from the type which can be expected according to the bar line context) are always flagged as non-generated, ensuring the custom type is written to the output file.
- The `Measure::_endBarLineGenerated` flag is stored by `ChangeEndBarLineType()` and restore upon undo.
- Some test reference scores, based on the inconsistent bar line `_generated` flag, have been uniformed.

Notes:

- Tests about measure (and then bar line) appending, inserting and relative undo's are already included in the `tst_parts` test suite.
- Some inconsistencies remain in the management of custom bar line span and of system-initial bar lines: for the sake of simplicity, they will be dealt with in separate PR's.
2014-09-06 10:36:35 +02:00
ws
bab5bd83b2 fix #30966 2014-08-29 10:35:17 +02:00
ws
0af0091e11 fix #30961 2014-08-27 14:36:42 +02:00
ws
4cc20f8679 fix #29911 2014-08-26 21:01:21 +02:00
ws
e72678a075 fix #30836 2014-08-26 15:07:40 +02:00
ws
26dfd95eb9 fix #30431 2014-08-25 19:31:07 +02:00
ws
9b27beff0c fix #30586 2014-08-25 12:29:46 +02:00
lasconic
cacad697f9 fix #30581: Crash on load of 1.3 score with parts and measure number on all staves 2014-08-24 10:41:30 +02:00
Andrei Tuicu
c3ff25358b fix 30281
Fix readability
Optimize string allocation
	modified:   libmscore/accidental.cpp
	modified:   libmscore/ambitus.cpp
	modified:   libmscore/articulation.cpp
	modified:   libmscore/barline.cpp
	modified:   libmscore/chord.cpp
	modified:   libmscore/chordline.cpp
	modified:   libmscore/chordrest.cpp
	modified:   libmscore/dynamic.cpp
	modified:   libmscore/fingering.cpp
	modified:   libmscore/hairpin.cpp
	modified:   libmscore/harmony.cpp
	modified:   libmscore/jump.cpp
	modified:   libmscore/keysig.cpp
	modified:   libmscore/marker.cpp
	modified:   libmscore/measure.cpp
	modified:   libmscore/note.cpp
	modified:   libmscore/ottava.cpp
	modified:   libmscore/rest.cpp
	modified:   libmscore/score.h
	modified:   libmscore/tempotext.cpp
	modified:   libmscore/text.cpp
	modified:   libmscore/timesig.cpp
	modified:   libmscore/tremolo.cpp
	modified:   libmscore/trill.cpp
	modified:   libmscore/volta.cpp
	modified:   mscore/scoreaccessibility.cpp
2014-08-21 20:33:11 +03:00
ws
8547e27734 fix #30041 2014-08-21 15:01:54 +02:00
Dag Henning Liodden Sørbø
b33a828174 fix #21257 : Breath is placed correctly when dropped on a note in other voice than default 2014-08-20 17:00:52 +02:00
Andrei Tuicu
6460485d3f Score accessibility system.
Provides screen-reader feedback for the selected element.
2014-08-19 00:09:13 +03:00
Nicolas Froment
11be7ba1b8 Merge pull request #1146 from andreituicu/next_element_command
Next element command
2014-08-17 17:13:39 +02:00
Andrei Tuicu
9caa98b130 Added 4 new navigation commands:
- next element
- previous element
- first element
- last element
2014-08-17 17:25:21 +03:00
Joachim Schmitz
facd9bce0b fix 2 compiler warnings
and convert enum DrumsetKi9nd into an enum class in the due course
2014-08-17 12:50:22 +02:00
ws
6d46589c56 fix #29431 2014-08-13 21:01:21 +02:00
ws
f8c8747691 fix #23700 2014-08-13 17:45:53 +02:00
ws
9e93f15037 fix #29511 2014-08-13 15:42:55 +02:00
ws
0c44719a58 fix #29241 2014-08-11 15:26:29 +02:00
ws
a2a87a90c8 move Jump & Marker from Segment to Measure 2014-08-05 20:40:43 +02:00
ws
2f8b654ef0 fix #28936 2014-08-05 16:09:14 +02:00
Nicolas Froment
b6b99527d4 Merge pull request #1093 from MarcSabatella/28881-rest-space
fix #28881: bad spacing of full measure rest in multivoice context
2014-08-04 11:19:51 +02:00
Marc Sabatella
6c9234ad63 fix #25409: always at least 4sp below lyrics 2014-08-03 22:01:41 -06:00
Marc Sabatella
42f8ece19d fix #28881: bad spacing of full measure rest in multivoice context 2014-08-03 21:02:37 -06:00
ws
499a0f4464 ignore empty text element when reading score 2014-07-31 13:45:05 +02:00
ws
bc891168eb fix #25876 2014-07-29 18:49:13 +02:00
ws
ec344a3cf9 fix #25876 2014-07-28 15:54:58 +02:00
ws
e8e5f99c71 fix #28331 2014-07-27 15:06:49 +02:00
ws
66fcc1628c fix #28306 2014-07-27 12:39:00 +02:00
ws
f97a8b22c6 cleaner clef/cleflist implementation 2014-07-25 17:13:42 +02:00
ws
26bb716f25 link section break in parts 2014-07-24 12:37:08 +02:00
ws
28a31ccddd fix #27901 2014-07-21 14:28:37 +02:00
ws
17910f7441 remove id from spanner class 2014-07-21 14:28:37 +02:00
ws
1e94611118 partial fix for #18510 2014-07-17 15:28:02 +02:00
Bartlomiej Lewandowski
b76327c6f9 Refactored common code from measure and score scanElements to segment 2014-07-16 17:44:03 +02:00
ws
a2c0bf6188 fix #26476 2014-07-15 12:49:51 +02:00
ws
7aa55d072e fix #25941 2014-07-02 09:56:05 +02:00
Joachim Schmitz
29d17dae5c rename LayoutBreak::LayoutBreakType to LayoutBreak::Type 2014-06-26 11:57:45 +02:00
Joachim Schmitz
e6e7436177 move SegmentType to Segment::Type and make int again
needed to make it available to the plugin framework
and the memory saved is not worth the performance penalty
2014-06-26 11:57:39 +02:00
Joachim Schmitz
75623c53dc move ElementType to Element::Type
needed to make it available to the Plugin framework
2014-06-26 11:57:35 +02:00
Maurizio M. Gavioli
396c3324a8 Fix reading of measures with custom bar line sub-type.
If a measure has, in one staff, a bar line with a custom sub-type, the sub-type is applied to the bar lines of all the staves of this measure.

Fixed in `Measure::read()`.
2014-06-25 10:19:37 +02:00
Joachim Schmitz
83a72f49d9 small step further in converting enum Repeat into enum class
not there yet, as at least overloaded operators for |, &, |=, &= and ~ would be needed to make this fully working. And even then it'd require lots of explict casting. This is most probably not be worth the price...
2014-06-24 14:46:48 +02:00
ws
b4066a7976 stronger typing for key 2014-06-20 17:07:22 +02:00
ws
7e4c70a50a fix #19332 2014-06-19 15:27:44 +02:00
ws
5fc08d094b update Volta 2014-06-19 11:34:28 +02:00
Joachim Schmitz
843356beb7 disable unused local variables 2014-06-10 09:27:51 +02:00
ws
9a6d909a29 fix #25945 2014-06-05 11:37:21 +02:00
ws
e8be73f41b fix transposition when changing instrument 2014-06-04 10:40:26 +02:00
ws
b7dd5af499 update KeySig implementation 2014-06-03 15:28:10 +02:00
ws
e1b1246e0c make SegmentType an global enum class 2014-06-01 20:24:29 +02:00
lasconic
8c7a103d8b fix #25905: Joined scores in album lose offset information 2014-05-30 21:46:27 +02:00
ws
3ae79f8b3e fix #25238 2014-05-30 17:25:52 +02:00
Nicolas Froment
e4ca2a3d23 Merge pull request #936 from Jojo-Schmitz/enum-class
convert as many "enum" as possible to "enum class", and make them ": char" in the due course #4
2014-05-30 15:39:43 +02:00
Nicolas Froment
1ac9d5e7a6 Merge pull request #928 from MarcSabatella/25648-move-accidentals
fix layout issues with offset chords & notes
2014-05-30 15:37:55 +02:00
Joachim Schmitz
562c92e2bc convert enum PlayMode into enum class
and make enum LayoutFlag a ": char" (making it an enum class requires
more work, as it is used for flags)
2014-05-30 13:37:35 +02:00
Joachim Schmitz
6c3c437b55 convert enum LayoutMode into enum class 2014-05-30 13:37:34 +02:00
Joachim Schmitz
f76946c2cf convert unnamed enum into enum class IconType
and change to a better sentinel for end of list.
Also move the Q_DECLARE_METATYPE(Ms::ValueType) nearer to its
definition.

This should conclude the work on the enums in libmsore/mscore.h.
2014-05-30 13:37:32 +02:00
Joachim Schmitz
eac6e60fbd convert enum BarLineType into enum class 2014-05-30 13:37:31 +02:00
Joachim Schmitz
79474e3fcc convert unnamed enum into enum TextStyleType
more work needed to make it an enum class
2014-05-30 13:37:30 +02:00
ws
401f48fcd7 fix #25884 2014-05-29 14:04:14 +02:00
Marc Sabatella
c26d619282 fix #15125: spacing of lyric on offset note 2014-05-27 15:27:26 -06:00
Marc Sabatella
69e4c2170b fix #25809: space before initial chord with grace note after 2014-05-27 15:27:23 -06:00
Marc Sabatella
fbc676111d fix #25803: account for user offset during chord layout 2014-05-27 15:27:22 -06:00
Joachim Schmitz
76db7c6f66 convert enum AccidentalVal into enum class 2014-05-27 11:41:07 +02:00
Joachim Schmitz
641a7a5a91 convert enum NoteType into enum class 2014-05-27 10:35:28 +02:00
Joachim Schmitz
826c956013 convert enum SelectType into enum class 2014-05-27 10:34:08 +02:00
Joachim Schmitz
c79ae39d0e convert enum Anchor into enum class 2014-05-26 20:48:27 +02:00
Joachim Schmitz
7f1b612615 convert enum P_ID into enum class 2014-05-26 18:18:01 +02:00
Joachim Schmitz
0b43247956 convert enum StyleIdx into enum class 2014-05-26 15:31:36 +02:00
Joachim Schmitz
906ba4aafd convert enum SpacerType into enum class 2014-05-26 12:46:24 +02:00
Joachim Schmitz
183461757e convert enum TremoloType into enum class
and fix a minor white-space damage caused by 0f28d75 and 2ae0940
2014-05-26 12:27:39 +02:00
Joachim Schmitz
6c6c6ad22c convert unnamed enum to enum Repeat
and make it ": char". Making it a class requires more work,
unfortunatly.
2014-05-23 12:10:15 +02:00
Joachim Schmitz
931e837c5e convert enum ElementType into enum class 2014-05-23 10:35:27 +02:00
Joachim Schmitz
a1c6c8c493 improve enum ElementFlag
more work needed to convert it into a class, same issue as with
ArticulationShowIn.
2014-05-23 10:35:22 +02:00
Joachim Schmitz
2ae0940bdd convert enum LayoutBreakType to enum class 2014-05-23 10:35:13 +02:00
Joachim Schmitz
27f8ca023f convert enum DurationType to enum class 2014-05-23 10:34:57 +02:00
lasconic
78c0207779 fix #25478: deleting an instrument causes rehearsal marks to vanish, also fix volta for the same bug 2014-05-23 09:50:53 +02:00
lasconic
fbdf9b7070 fix measure number visibility when top staff is hidden 2014-05-22 22:51:26 +02:00
ws
c66fe22021 fix #25422 next try 2014-05-22 16:18:35 +02:00
ws
085492df90 fix #17535 2014-05-21 20:08:50 +02:00
ws
fb0e15eb10 update measure properties + parts 2014-05-20 17:59:32 +02:00
lasconic
b5e8c777c3 ignore user stretch in float layout 2014-05-17 18:40:05 +02:00
ws
e3e4c091a0 fix #24146 2014-05-13 19:40:42 +02:00
lasconic
0f2695c3e3 fix #25703: wrong clef for 1.3 scores with odd clef change 2014-05-12 17:59:24 +02:00
ws
02d0fcca12 fix #25646 2014-05-08 17:59:24 +02:00
ws
e97e4c9340 fix mtest 2014-05-05 17:56:13 +02:00
ws
10c9ea02dc fix #25594 2014-05-05 16:38:48 +02:00
Joachim Schmitz
2e889b818c removing 2 qDebug() calls
followng some discussion on IRC
2014-04-30 17:03:08 +02:00
ws
f9059a269b remove stafftype subclasses 2014-04-30 13:39:16 +02:00
Marc Sabatella
d5a2141a3f add style parameter to control space to barline 2014-04-28 16:06:28 -06:00
Marc Sabatella
e6722713a6 correct measure width calculation 2014-04-28 16:06:26 -06:00
Marc Sabatella
2185d1c6be fix #25278: chords won't overlap barline 2014-04-28 16:06:25 -06:00
Maurizio M. Gavioli
a14f78159d Merge pull request #809 from mgavioli/fix_25165_pickup_meas_with_irreg_metre_measure_rest_crashes
Fix #25165 - crash when changing measure with whole measure rest
2014-04-28 11:59:55 +02:00
ws
9b552b409e fix #25151 2014-04-24 17:09:42 +02:00
ws
5a02b9363c fix #25151 2014-04-24 10:58:50 +02:00
ws
f754f4a7a6 fix #25253 2014-04-23 20:59:46 +02:00
Joachim Schmitz
d6135aa604 change a printf to a qDebug
and removing an unneeded \n
2014-04-23 13:48:13 +02:00
ws
5fb40769fa fix #25434 2014-04-22 17:02:03 +02:00
ws
549b0c0187 fix #25436 2014-04-18 11:44:08 +02:00
Werner Schweer
cbdfe78142 Merge pull request #840 from mgavioli/Fix_14576_hiding_courtesy_timesigs_corrupts_scores
Fix #14576 : hiding courtesy time sig corrupts score
2014-04-16 15:37:43 +02:00
Maurizio M. Gavioli
80f44c368f Fix compilation errors ( :( ). 2014-04-16 09:35:23 +02:00
Maurizio M. Gavioli
4a9c174d8d Fix #14576 : hiding courtesy time sig corrupts score
See http://musescore.org/en/node/14576 for discussion and examples.

1) Edited courtesy time sig (in any parameter: visibility, colour, text, ...) are saved to the score
2) When read back from file, such a time sig is not recognized as courtesy time sig
3) If the edited courtesy time sig no longer is at the end of a system, it is not removed.

The straight approach could have been to disable any editing of courtesy time sig. Rather than loosing this flexibility, I tried to improve the management of courtesy sigs:

1) not changed
2) when reading a time sig, if not at the beginning of a measure, now it is turned into a courtesy time sig
3) courtesy time sig removal now depends on its position in the system and not on the generated status.

This patch also do the same changes, in the same code areas, for courtesy key signs, as they behave in a very similar way.
2014-04-16 00:55:11 +02:00
Marc Sabatella
58722589b5 don't set stretchDistance after time signature 2014-04-14 22:45:44 -06:00
Marc Sabatella
448ff548d0 fix tests 2014-04-14 22:45:43 -06:00
Marc Sabatella
cc2d769183 fix #25342: space from time signature to accidental 2014-04-14 22:45:40 -06:00
Marc Sabatella
edbeaeccde fix #25341: not enough space before chord with accidental and offset note 2014-04-14 22:45:39 -06:00
Maurizio M. Gavioli
0a556afa3a Merge pull request #824 from mgavioli/fix_ambitus_layout
Fix ambitus layout
2014-04-10 21:06:52 +02:00
ws
e534cccef8 bug fixes for concert pitch switch 2014-04-09 16:09:21 +02:00
Maurizio M. Gavioli
1d8d0eac9e Fixes to ambitus:
- Fix missing adjustReadPos() for ambitus in Maesure::layoutX()

- Reduce left margin in there are accidentals
2014-04-09 12:45:28 +02:00
Maurizio M. Gavioli
390b4ced3e Fix layout of ambitus elements with accidentals.
Ambitus elements with accidental(s) are laid out misaligned with ambitus elements without accidental(s).

The new algorithm aligns the leftmost note heads of each ambitus and places accidentals accordingly.
2014-04-09 12:45:28 +02:00
ws
d280091f22 implement separate tpc values for transposed view 2014-04-09 09:40:48 +02:00
Maurizio M. Gavioli
c67fa1c659 Tick where to place the newly added rests was wrong. 2014-03-29 14:03:41 +01:00
Maurizio M. Gavioli
663ed4fe7c Fix #25165 - crash when changing rest measure duration to or from irregular time.
When the actual duration of a measure is changed and either the starting or ending duration cannot be represented with a simple value (for instance 5/4) and the measure contains a single whole measure rest, a division by 0 results. See http://musescore.org/en/node/25165 for examples, discussion and analysis.

Fixed.

If the new measure value is different from the current time sig, rest(s) to represent the actual measure values are used instead of whole measure rests.
2014-03-28 23:30:57 +01:00
ws
ef3a7da47c fix #25052 2014-03-26 11:02:23 +01:00
ws
ca71cda77e fix #25130 2014-03-26 08:12:10 +01:00
ws
759e40b0a7 #24654 2014-03-25 18:34:14 +01:00
ws
4b2d8f8d76 fix #21242 2014-03-24 17:05:12 +01:00
ws
d211d8c775 fix #25017 2014-03-15 12:58:07 +01:00
lasconic
63de5a3711 option to disable loading of parts and images 2014-03-04 17:40:23 +01:00
Joachim Schmitz
4f8f63f91e fix #23366: more fixes for capitalization
and some more fixes.
2014-03-04 07:44:56 +01:00
lasconic
3af29a9555 fix multimeasure rests and hidden part 2014-03-03 14:54:53 +01:00
ws
fd66e91bc0 link frames 2014-02-28 14:25:47 +01:00
ws
82c8dc5b72 fix #23380 2014-02-26 19:06:42 +01:00
ws
46bdce7a2a fix #24572 2014-02-24 13:53:54 +01:00
lasconic
4d7c88ef07 fix #24654: too much space after barline in measure with accidental and multiple voices 2014-02-21 14:32:50 +01:00
Geoff Lehr
7d239cb687 fix 6055 : when setting the measure length, unless the length is equal to the current time signature 2014-02-17 15:06:11 -07:00
Geoff Lehr
f5edcedd28 fix 6055 - add Ctrl+Shift+0 as command to convert measures containing only rests into full measure rests, even if they are pickup measures 2014-02-17 11:07:56 -07:00
Geoff Lehr
f3d6252008 When adding and instrument to a score with a pickup bar (anacrusis), set the displayed duration to the pickup length and not a full measure rest 2014-02-16 22:11:36 -07:00
lasconic
1a26ef4d35 fix: undo of change actual duration to 8/4 doesn't undo rest shape change 2014-02-11 17:42:22 +01:00
lasconic
afaaa16066 fix #24072: Changing measure actual duration shifts all subsequent spanners 2014-02-11 17:39:44 +01:00
Mark Stanton
4cd0e03a91 Read prior version mscx files correctly by defaulting to single voice
slurs
2014-01-23 22:13:33 +00:00
Mark Stanton
aa2e677bc6 Corrected both reading and writing.
A slur is not equivalent to most of the other spanner elements since it
is related to specific voices, not once but twice.
2014-01-21 21:30:59 +00:00
Mark Stanton
129e12271b Fix for issue #24339
Slurs between voices will now save and restore properly.
The MuseScore debugger has not been fixed to display the cross-voice
property of such slurs.
2014-01-20 18:33:48 +00:00
Mark Stanton
c3dde85b10 Partial fix for issue #24245.
This fix works for slurs starting and ending in the same voice.
2014-01-18 17:19:46 +00:00
ws
fa70cab643 fix segment type in debugger; fix start repeat barline 2014-01-07 11:42:17 +01:00
ws
92b23265b9 no gui in converter mode; more robust reading of bad score files 2013-12-31 12:33:57 +01:00
Maurizio M. Gavioli
59ed3553b0 Segment elements in voices other 1 no longer shown.
A typo in a recent commit prevented elements in voices other than 1 to be displayed.

Fixed.
2013-12-28 19:44:59 +01:00
Maurizio M. Gavioli
2774c60360 If the span data of a staff indicate a multiple span and a bar line is custom-shortened to span less staves, the 'uncovered' staves lack their bar line(s) 2013-12-28 15:18:09 +01:00
Maurizio M. Gavioli
b5e1b3d4e9 Make start-repeat bar lines to follow all staff span data.
Start-repeat bar lines only follow the staff span value, but not the spanFrom and spanTo values.
2013-12-28 15:18:09 +01:00
Maurizio M. Gavioli
f978323d82 Fix #6107 : bar lines and brackets disappearing when some of the staff they span is hidden
Fixed by analyzing brackets and bar line spans rather than only relying on start and stop staff Y offset (which is not set if the staff is not shown).

Note: there are still issues with measure numbers, but these belong more to system items than to bar lining.
2013-12-28 10:24:35 +01:00
Maurizio M. Gavioli
2acd24ba1c Finish renaming of Tablature class to StringData
Renames also the files hoding the class itself:
- libmscore/tablature.cpp => stringdata.cpp
- libmscore/tablature.h => stringdata.h

No actual change in the code, only updated references to stringdata.h in #include's.
2013-12-05 21:37:28 +01:00
ws
f5cfb12dc5 revert PR #566 2013-11-27 11:51:16 +01:00
Werner Schweer
784aa2f9ad Merge pull request #566 from Isensee/23543-update_accidental
fix #23543: additional update for acidentals
2013-11-26 06:14:30 -08:00
Maurizio M. Gavioli
41588b2bc1 Renamed element to "Ambitus" 2013-11-25 12:17:12 +01:00
Maurizio M. Gavioli
794612ce0f Rename to Part Range 2013-11-24 23:32:03 +01:00
Maurizio M. Gavioli
f8ef6e6443 Initial implementation of a Range element to display a tune range 2013-11-24 23:30:44 +01:00
Isensee
3f40cbcf21 fix #23543: additional update for acidentals 2013-11-24 16:08:25 +01:00
lasconic
d5e8e5f0be fix #21458: Bar rests not presented correctly at line break before key and time signature change 2013-11-22 17:41:56 +01:00
Maurizio M. Gavioli
7ece5701a0 Fix #23371 : in TAB's grace chords are not fretted at all or fretted incorrectly.
Since the grace chords have been moved from a parent segment of their own to a parent chord, the fretting algorithm no longer 'sees' them correctly.

Fixed by extending the fretting algorithm to deal with chords not belonging to segments.
2013-11-03 01:17:46 +01:00
ws
c6cfc3fcf6 fixes for editing multi measure rests 2013-10-30 14:21:08 +01:00
ws
b32bdedba3 fix #23127 2013-10-25 12:17:42 +02:00
ws
3a6fa1fa08 fix #23230 2013-10-21 13:11:26 +02:00
ws
4c859d86e5 fix editing of bar number in staff != 0 2013-10-18 17:55:51 +02:00
ws
aa616648b8 fix #23140 2013-10-15 16:42:22 +02:00
ws
524e4742ef any spanner breaks multi measure rest 2013-10-15 15:39:32 +02:00
ws
835ef3d5b6 fix #23164 2013-10-14 15:35:00 +02:00
ws
397ef6172a allow slurs from higher track to lower 2013-10-13 13:06:32 +02:00
ws
e9672f0b46 implement up/down keys to move anchor for slurs 2013-10-13 11:37:15 +02:00
wschweer
51a6f6e7cc expose LineBreakType to plugins 2013-10-05 23:13:33 +02:00
lasconic
0ceaaf1056 more fixes for 1.3 slurs import 2013-10-01 09:31:04 +02:00
lasconic
c351315265 fix some crash with invalid drumset 2013-09-29 00:55:37 +02:00
ws
eee9f5fa17 add track2 to spanner 2013-09-27 11:20:12 +02:00
lasconic
3226ca62b0 fix #124912: Mass insert single measure repeats 2013-09-26 20:07:58 +02:00
ws
d4017f3d44 fix #22855 2013-09-25 10:13:00 +02:00
ws
7769088c66 change mm rest alignment (vtest mmrest-5) 2013-09-20 15:03:35 +02:00
ws
528d2976c2 fix regressions for new mm rest implementation 2013-09-20 12:59:31 +02:00
ws
3a23fc9709 better mm rest layout 2013-09-19 17:39:18 +02:00
ws
5800ba4771 more fixes&tests for mm rests 2013-09-19 17:17:22 +02:00
ws
750c75fef7 add fix&test for measure repeat 2013-09-19 16:27:29 +02:00
ws
b000104ee1 change full measure rest alignment 2013-09-19 15:49:39 +02:00
ws
239ffd7456 change implementation of multi measure rests 2013-09-19 15:08:54 +02:00
ws
1f41a8570f fix for measure rest layout 2013-09-17 09:21:21 +02:00
ws
3b0442ebc3 fix mm rest layout 2013-09-16 20:15:36 +02:00
Maurizio M. Gavioli
3ed3546e76 Rename Tablature class to StringData
Refactoring the following names:

Classes:
Tablature => StringData

Member variables and methods:
Instrument::tablature() => stringData()
Instrument::setTablature() => setStringdata()
InstrumentTemplate::tablature => stringData
InstrumentData::_tablature => _stringData
InstrumentData::tablature() => stringData()
InstrumentData::setTablature() => setStringData()

There is no change in logic or program behaviour, only renaming.
2013-09-15 18:43:48 +02:00
lasconic
0d824483e5 fix #22654 2013-09-10 15:11:30 +02:00
lasconic
a08e3aa16d fix #22637: align multimeasure rest and repeat measure correctly 2013-09-10 13:11:56 +02:00
lasconic
b44d1ad5a8 fix #22627: MuseScore doesn't allow thick and thin brackets on the same system 2013-09-09 11:31:07 +02:00
lasconic
62803b8f5e fix #22559: Measure numbers, if set to all staves cannot later be unset 2013-09-06 14:11:05 +02:00
lasconic
65cf846042 fix #22537: Nested tuplets in 1.3 score incorrectly imported 2013-09-05 19:02:43 +02:00
lasconic
0e2368c051 fix drawing and layouting of repeat measure sign 2013-09-04 10:49:33 +02:00
ws
154c33d036 increase distance of chords if both have ledger lines 2013-09-02 12:14:02 +02:00
ws
9dba0be445 updates&fixes for tie editing 2013-08-22 12:18:37 +02:00
ws
d5964f81dd allow ties to connect to note in same or different voice 2013-08-21 12:00:12 +02:00
Maurizio M. Gavioli
073cfec588 Re-factor presets and staff types.
1) Built-in staff types have been removed.

2) Presets are internally used as source for the staff types of a new score, to match data in Instruments.xml and as reference to check for modifications.

3) Each new score is given by default one staff type for each preset with the same name.

4) The Instrument page of the New Score Wizard lists (under the name of "Staff types") the default staff types applicable to the instrument (actually it lists the preset, as the score does not have any staff type yet).

5) The "Add | Instruments" dlg box lists all the staff types applicable to the instrument: = to the list of 4) + any user-created staff type.

6) The Staff Properties dlg box lists all the staff types applicable to the instrument: = list in 5)

7) The Staff Type Editor lists all the staff types

This should ensure consistency among the several lists of staff types and avoid duplication of similar items

Terminology:

7) A new staff type created in the editor is named by default with the group name ("Standard-", "Perc-", "Tab-") + the index of the new type in its group + the suffix "[*]" marking a user customisation. The user is anyway able to rename it, if he want.

8) The pitched staff type has been renamed everywhere (hopefully!) to "Standard"

9) The term 'preset' have been removed from the UI, except from the Staff Type Editor where it keeps its meaning of ready-made collections of parameters

The commit affects many files, but a fair number of them have only changes in names of literals. The files with significant code changes are:
libmscore/score.cpp
libmscore/stafftype.cpp/.h
mscore/editstafftype.cpp (code for naming a new staff type)
mscore/instrdialog.cpp (building type list)

Note: as score files store staff type indications as integer indices and the number and order of new default staff types is different from the old built-in types, there is a compatibility issue with old 2.0 score which use percussion and tab staves. In Score::read() (libmscore/scorefile.cpp), there is a rudimentary attempt to cope with this.Old scores will need manual fix anyway. There should not be any (new) compatibility issue with 1.x scores, as they did not use staff types.
2013-08-18 11:55:31 +02:00
ws
0d1c84aebf fix #21964 2013-07-24 14:33:46 +02:00
ws
74a2fb2178 fix regression: full measure rest layout blocks 2013-07-19 16:45:25 +02:00
ws
497892dc5b fix possible crash in measure rest layout 2013-07-19 12:13:58 +02:00
ws
31c7874c71 fix #21911 2013-07-19 11:25:25 +02:00
ws
6c03d00352 fix layout of multimeasure rests 2013-07-18 15:54:26 +02:00
ws
f21a599ee6 new style parameter multiMeasureRestMargin; fix #2834 2013-07-17 12:18:10 +02:00
ws
58c07cc8e3 fix #21835 2013-07-16 09:03:47 +02:00
lasconic
ebbfcee866 fix import of reduceable time sig 2013-07-15 15:40:32 +02:00
ws
d0b29ababa add new style parameter 'barAccidentatalDistance' 2013-07-15 11:57:07 +02:00
ws
6383c012dd fix #21283 2013-07-15 07:53:16 +02:00
ws
7cf70a66b7 fix for clef in middle of measure 2013-07-12 18:41:33 +02:00
ws
3f63dcd6d4 use interval tree for list of spanners 2013-07-05 11:24:14 +02:00
ws
f7f46859f7 fix #21619 2013-06-28 17:46:40 +02:00
lasconic
5036e8ca1d fix #12367: volta and parts. + volta and multimeasure rest. + volta and invisible staff 2013-06-27 18:31:00 +02:00
AntonioBL
3d9dd09597 fix 1.x tremolo between 2 notes import 2013-06-27 10:03:36 +02:00
lasconic
723bcbd2e4 fix #21608: Multi-voice notes in the wrong place 2013-06-26 18:38:05 +02:00
lasconic
1b35202700 fix #21665: Incorrect values when pasting 2013-06-26 14:55:55 +02:00
ws
7f9c245ada fix regressions 2013-06-25 19:52:00 +02:00
ws
f227ab77d1 fix import regressions; remove debug code 2013-06-25 14:29:18 +02:00