Commit graph

32 commits

Author SHA1 Message Date
anatoly-os
5d7f50060e Merge pull request #6058 from dmitrio95/305017-plugin-cursor-addnote-regression
fix #305017: Cursor.addNote fails to add notes to existing chords in INPUT_STATE_INDEPENDENT mode
2020-05-12 03:41:04 +02:00
Dmitri Ovodok
bd979cf23b Allow plugins choose if Cursor is synchronised with score input state 2020-04-04 00:58:25 +03:00
Matt McClinch
573280f1ca fix #298121: Adding Intervals (above/below) should take into consideration the accidental toggle state
Resolves: https://musescore.org/en/node/298121.

In addition to making the "Add Interval" commands apply the highlighted accidental when in note input mode, I have corrected a few cases where I had chosen the wrong tpc to use to calculate the AccidentalType for a user accidental, given the current value of styleB(Sid::concertPitch).
2019-12-04 23:07:55 -05:00
Dmitri Ovodok
34d7d320c9
Merge pull request #5444 from mattmcclinch/296363-repitch-accidental
fix #296363: Accidental shortcuts do not work in Re-Pitch mode
2019-11-18 14:28:14 +02:00
Dmitri Ovodok
20fe03cf18
Merge pull request #5398 from mattmcclinch/276511-upside-down
fix #276511: Entering notes with mouse fails in Italian TAB
2019-11-18 14:05:17 +02:00
Matt McClinch
d9554e5028 fix #296363: Accidental shortcuts do not work in Re-Pitch mode
Resolves: https://musescore.org/en/node/296363.
2019-10-31 13:52:52 -04:00
Matt McClinch
50e964bca4 fix #296065: Toolbar accidentals don't respect changes to previous notes
Resolves: https://musescore.org/en/node/296065.

Only add a *forced* accidental if there is an accidental selected in the toolbar and the note value is the same as it would be without an accidental.
2019-10-24 18:36:19 -04:00
Matt McClinch
aeeb1ce452 fix #276511: Entering notes with mouse fails in Italian TAB 2019-10-17 17:35:44 -04:00
Matt McClinch
c07d2058bb Redesign note input workflow based on Tantacrul's suggestions.
See https://musescore.org/en/noteinput_redesign.

This implements most of the changes Tantacrul suggested in his document, except for the part on Tuplets.
2019-10-15 07:29:17 -04:00
ws
ec3be9a99a Replacd integer midi tick values by fractions.
- tick names a position on the time axis
- tick is always a Fraction()
- only Measure() and Segment() (and Tuplet?) have a tick value
- tick() for an generic element return only a sensible value if isMeasure() or isSegment() or isSegment(parent())

- "ticks" names a duration stored in a Fraction()
- the tick value for an Segment is relative to its measure

- rename "duration" to "ticks"
- rename afrac() to tick()
- rename rfrac() to rtick()
- rename some variables, changing "fraction" into "tick"
  (example: actualFraction() into actualTicks())

- Lyrics ticks are written as Fraction, on read if xmlreader sees a "/" it reads a fraction
  else midi ticks for backwards compatibility
2019-02-18 11:46:05 +01:00
Joachim Schmitz
1e24b4d60d fix MSVC/MinGW compiler warnings 2019-02-05 12:13:16 +01:00
Eric Fontaine
31a6aafaca fix #280364: measure start timewise input
Previous code crashed when doing a timewise insert at the beginning of
a measure. This was because the call to msMeasure->findFirst searches
for a segment at tick 0, but segment ticks had already been shifted
forward in time with the earlier call to InsertTime. Using
msMeasure->first(SegmentType::ChordRest) avoids that problem.

Second problem was a crash when inserting to beginning of a
multi-measure rest. This was fixed by testing for isMMRest() and using
the multi-measure rest if true.

I also had to change behavior to convert all measure-rests into normal
(non-measure) rests(s) of equivalent duration first before inserting
any additional space.  Unfortunately it would have been ideal to
simply keep measure rests and exapand them to fill the new space, but
I couldn't figure out a clean way to do that.  So I opted for the
simpler and safer method of converting them into...

Additional note from dmitrio95:
Added handling of situations where other tracks contain non-measure
rests or notes overlapping with the input area. Ensured that all
changes are undoable.
2018-12-21 17:06:54 +02:00
Dmitri Ovodok
2362307459 fix #120271: rework timewise insert to handle linked staves 2018-12-11 09:30:27 +02:00
Dmitri Ovodok
f4590ef5bf fix #276689: Add a timewise note input mode to MuseScore UI 2018-10-25 18:25:33 +03:00
Matt McClinch
dbae4d0e62 fix #276670: Crash on mouse press on tablature in Re-Pitch input mode 2018-10-06 09:31:41 -04:00
Joachim Schmitz
f7685e28c1 Fix some warnings C4456 and C4458 2018-08-17 15:06:15 +02:00
ws
33d1cd7fb4 rename StyleIdx -> Sid and P_ID -> Pid 2018-03-27 15:36:00 +02:00
Peter Jonas
b33682292b Porting real-time bug fixes from 2.X into master branch. 2018-03-21 00:26:40 +00:00
lasconic
e0915fcc4c fix #264073: Edition of fret numbers in TAB staff is not played in Note input mode 2018-03-17 14:06:27 +01:00
lasconic
aa87263e71 fix #246496: Crash when adding tie after entering notes in drums 2017-08-22 20:02:03 +02:00
lasconic
d72c3cf3b3 fix #198831: Regression: Cannot enter rests via mouse on drum staves 2017-07-19 16:22:34 +02:00
Werner Schweer
186c680c38 fix #195631 and other regressions 2017-05-03 16:20:04 +02:00
Werner Schweer
867f2582f6 move Segment::Type into SegmentType 2017-03-08 13:12:26 +01:00
Werner Schweer
3648dc5495 update album 2017-03-06 11:33:54 +01:00
lasconic
3340d623de fix #52841: No sound feedback in repitch mode when using MIDI or Piano Keyboard 2017-02-20 14:12:56 +01:00
Werner Schweer
88703a3259 interpret custom keys 2017-02-13 12:45:37 +01:00
Werner Schweer
660b393b98 change StaffType interface 2016-12-14 15:44:24 +01:00
Werner Schweer
c5434443c3 remove Excerpt from Staff 2016-12-14 15:40:26 +01:00
Werner Schweer
1f243b5ffc update global insert: combine tuplets 2016-12-06 09:36:02 +01:00
Werner Schweer
b8fe9e6332 global insert: handle generated ties 2016-12-03 20:27:51 +01:00
Werner Schweer
b502a5d377 implement framework for 'global insert' 2016-12-03 13:46:58 +01:00
Werner Schweer
a61cf1cccd add missing file 2016-12-01 15:16:42 +01:00