Commit graph

191 commits

Author SHA1 Message Date
Igor Korsukov
45b9887603 changed code style 2020-05-28 09:50:45 +02:00
anatoly-os
9a6f17a471
Merge pull request #5634 from Jojo-Schmitz/selection-filter
Split Selection filter for Dynamics/Hairpins and Articulations/Ornaments
2020-04-21 22:42:30 +03:00
Igor Korsukov
69df3f9656 fixed collision between drag and cmds next*, prev* 2020-03-24 12:56:07 +02:00
Joachim Schmitz
b1ab9574cc Use C++ casts 2020-03-03 15:49:37 +01:00
MarcSabatella
b5d53248ab fix #301436: invalid selection when navigating with mmrests
Resolves: https://musescore.org/en/node/301436

The accessibility navigation commands
(Alt+Left/Right, also Ctrl+Alt+Shift+Left/Right)
were not properly checking for mmrests,
resulting in selection of elements in the underlying measures
that were not valid in the current layout.
This adds the necessary checks.
Mostly just a matter of adding "MM" to various function calls.
In a couple of places, the appropriate function did not exist,
so I added it.
Also corrected errors in Ctrl+Alt+Shift+Left/Right
that occurs when going past the end of a staff,
the code to wrap around to the next staff this case well.
In part this is because the implementation of barlines changed
since the code was written.
Barlines are per-staff now even when spanned,
so the use and management of prevTrack is no longer appropriate.
2020-02-21 12:23:26 -07:00
Matt McClinch
40191074a3 fix #301174: Undo selects an extra measure
Resolves: https://musescore.org/en/node/301174.

When restoring a range selection that ends on the last tick of a measure, make sure that it is not extended to the first tick of the next measure.
2020-02-15 13:42:29 -05:00
Joachim Schmitz
42b59d1be1 Split Selection filter for Dynamics/Hairpins and Articulations/Ornaments
as they had been split in the palettes too.
Fixed and added mtests too.
2020-01-23 19:48:25 +01:00
Howard-C
a2c2cdcd5a fix #284073: fermatas do not respond to selection filter 2019-11-19 18:59:06 +08:00
Joachim Schmitz
9bf62a17f7 fix #296271: Crash by undoing/redoing in main score a copy-paste made in the parts 2019-10-30 12:39:38 +01: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
Marc Sabatella
318534eb53 code cleanup for accessibility changes in PR5221 2019-09-17 13:33:44 +02:00
Marc Sabatella
ceaea1f149 fix #292510, fix #292928: navigation and screenreader support for frames
Added code to read the text within frames in accessibleExtraInfo(),
but also fixed the navigation to check for a frame
before moving to the next/previous measure.
Because frames will generally have a track of -1,
I also needed to take advantage of the tracking of the current track from a previous commit
so that nagivation continues on the correct track after passing through a frame.
I also needed to be careful to handle the -1.
2019-09-17 13:33:23 +02:00
Marc Sabatella
3feb03e11f fix #292269: remember last selection for alt+left/right
This change adds code to track the current tick and track on every new single selection.
If the selection is ever lost (including by pressing Esc),
then a currentCR can be constructed from this when the user resumes navigation via Alt+left/right.
2019-08-17 10:54:07 +02:00
Joachim Schmitz
7443719d87 fix #165621: Tremolo between 2 notes is copied even if unticked in selection filter
also change labels to a) plural and b) reflect better what they really
filter on
2019-07-30 13:38:48 +02:00
Matt McClinch
cd2d460907 fix #179251: Select all glissandos in Range Selection fails 2019-05-22 12:23:36 -04:00
Dmitri Ovodok
c789322faa Allow copy-pasting hairpins and hairpin+dynamics combinations 2019-03-27 10:24:08 +02: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
ws
00e60402f2 fix #276976 Crash on clicking on some measure in a corrupted score 2018-12-20 12:41:13 +01:00
Dmitri Ovodok
7664bcf4f5 fix #279448: deselect all elements on planning a delayed selection
This way selection will avoid containing elements that have pointers
to invalid elements (e.g. systems deleted on relayout).
2018-12-07 15:20:14 +02:00
Dmitri Ovodok
247802bb94 fix #87241, fix #279064: Remove elements from selection on destruction 2018-12-01 19:10:44 +02:00
Dmitri Ovodok
a56585c2b9 fix #277779: make single selection of notes and rests undoable
This is primarily intended for the note input mode.
Also add some tests relevant to selection.
2018-11-26 11:25:24 +02:00
Dmitri Ovodok
852a34daec fix #278355: do not select an incorrect range on delayed selection 2018-11-26 02:41:45 +02:00
Dmitri Ovodok
fa2c795d07 fix #173381, part 1: handle selection after MMRest reconstruction
Make selection made after paste operation be actually updated after
re-layout and, hence, after reconstructing multi-measure rests.
This is needed as reconstructing MMRests changes segments structure
of the score which leads selection to be in invalid state.
This commit adds also some tweaks to selection boundaries to work
around the fixed bug (which would not work alone without the
previously described changes).
2018-11-14 13:48:23 +02:00
Joachim Schmitz
474e8152cd fix #275218: fix MSVC C4456 warnings
reg. a declaration shadowing a previously declared local
variable,
"Warning C4456: declaration of 'XXX' hides previous local
declaration"
2018-09-27 17:38:19 +02:00
Dmitri Ovodok
0e67931325 Remove "clip" and "needFirstTick" boolean arguments to Score::writeSegments 2018-08-16 19:10:29 +03:00
Dmitri Ovodok
4fb9719d40 Get Score::pasteStaff working with the changed MSCX format
Trigger makeGap on paste right after reading voice offsets
2018-08-16 19:10:29 +03:00
anatoly-os
c07d825a42
Merge pull request #3775 from mattmcclinch/89016-dotted-rests
fix #89016: Disappearing dots (using NoteDot)
2018-08-14 11:45:05 +02:00
ws
10ebbb9080 update text style implementation 2018-08-01 11:46:35 +02:00
Matt McClinch
daa4802f33 fix #89016: Disappearing dots
Use NoteDot for the dots after rests, instead of the rest drawing its own dots, which were drawn outside of the rest's bbox.
2018-06-29 17:22:24 -04:00
ws
917561d5ce fix linking of text 2018-04-18 14:31:47 +02:00
luz.paz
dab3b5f056 Misc. typos follow up
Follow up to previous typo commit a8ac55c180
2018-02-19 19:30:12 -05:00
ws
9d9cd890d6 remove articulations from rest element 2018-01-17 13:25:23 +01:00
Werner Schweer
1943bd1ff1 replace most static_cast in libmscore 2017-12-20 16:49:58 +01:00
lasconic
e356a89e51 update for vibrato, it's now a first class Element. GPX import test for vibrato. 2017-11-30 13:25:25 +01:00
lasconic
51c3e4395c fix #245731: Slurs not obeying voices of Selection filter 2017-08-18 19:06:10 +02:00
Marc Sabatella
cc55a23d75 fix #175886: allow fretboards to be added to chord symbols 2017-06-12 16:30:47 -06:00
Werner Schweer
ac41fa396e update edit infrastructure 2017-03-31 13:03:30 +02:00
lasconic
752bafc8e9 fix #99146: File > Save Selection… leads to corrupt score if selection is not 4/4 and does not start with time signature 2017-03-09 23:55:10 +01:00
Werner Schweer
867f2582f6 move Segment::Type into SegmentType 2017-03-08 13:12:26 +01:00
lasconic
a5800b9243 fix #177116: Inability to select ties in a range selection if the last measure is also selected 2017-02-23 18:47:30 +01:00
Werner Schweer
251c298821 more complete SystemText impl. 2017-01-23 10:54:57 +01:00
Werner Schweer
1d4c6b2f21 move Element::type() to ScoreElement 2017-01-18 14:16:33 +01:00
Werner Schweer
0b1aea952f layout for movements 2017-01-05 11:28:45 +01:00
Werner Schweer
107343b1aa fix #148121, #138326; add provisions for global insert mode 2016-12-01 13:35:48 +01:00
Werner Schweer
c5f46bb208 rename Xml() -> XmlWriter() 2016-11-19 11:51:21 +01:00
Werner Schweer
bb7d535ce5 add score ptr to XmlReader and Xml 2016-11-19 10:31:14 +01:00
Werner Schweer
4e0b0dbae0 update layout code 2016-10-20 11:32:17 +02:00
werner
e3e2682004 fix #122551 Text line: inability to delete or change the 'Begin' text 2016-08-30 14:03:26 +02:00
werner
e967c0cfa3 first implementation of time delete 2016-08-22 09:37:58 +02:00
werner
9faf3f79e7 autoplace for lyrics 2016-08-17 12:52:35 +02:00