Commit graph

289 commits

Author SHA1 Message Date
Dmitri Ovodok
83fe78e58a fix #296171: fix triggerLayoutAll() for spanners
Fixup for 99c7b0d746
triggerLayout() and triggerLayoutAll() implementations in Element
have an optimization that allows to avoid triggering layout for
elements not yet added to a score by checking the element's parent.
This optimization is not suitable for spanners since they don't have
a parent even when added to a score. This commit adds a missing
implementation of Spanner::triggerLayoutAll() that takes this into
account.
2019-10-28 00:08:45 +02:00
Dmitri Ovodok
99c7b0d746 Add more information to setLayout() 2019-10-25 16:18:41 +02:00
Dmitri Ovodok
8a28bd8714 Add initial version of redesigned palettes 2019-08-31 14:16:19 +03:00
Dmitri Ovodok
f8718a8b42 Remove unused code
- Remove disabled and largely outdated continuous view layout code
 - Remove declarations of functions which have no definition
 - Remove unused global libmscore variables
 - Remove some excessive forward declarations
2019-08-03 15:52:09 +03:00
Marc Sabatella
d1b2714fac fix #291491: tuplet autoplace issues 2019-07-01 16:41:34 -06:00
Dmitri Ovodok
4594cbdffd Allow specifying placement for autoplace*Element() functions explicitly 2019-06-10 16:43:59 +02:00
Marc Sabatella
a27bc1f2f0 manage minDistance when moving away from staff 2019-05-14 17:32:34 -06:00
Marc Sabatella
ea2bc3d85a add spanners except hairpins, also fix fingerings 2019-05-09 22:46:59 -06:00
Marc Sabatella
cd8384f595 more refactoring; spanners next... 2019-05-09 22:46:59 -06:00
Marc Sabatella
e92aff138b partial refactor; lyrics, dynamics, fingering 2019-05-09 22:46:59 -06:00
Marc Sabatella
ef300d1cea implement minDistance per element 2019-05-09 22:46:58 -06:00
Marc Sabatella
e3d7986b22 working other than some undo glitches 2019-05-09 22:46:58 -06:00
Marc Sabatella
fafa6cadcc working version 2019-05-09 22:46:58 -06:00
Marc Sabatella
cf52824b67 remove ABS_OFFSET property + collect_artifacts 2019-05-09 22:46:58 -06:00
Marc Sabatella
77f908bc58 allow autoplaced elements to cross into skyline 2019-05-09 22:46:58 -06:00
Marc Sabatella
6b7f33ec64 fix #278999, fix #288474: autoplace customization 2019-05-01 07:52:11 -06:00
Dmitri Ovodok
c789322faa Allow copy-pasting hairpins and hairpin+dynamics combinations 2019-03-27 10:24:08 +02:00
anatoly-os
c2d382241e remove redundant TODOs 2019-03-07 13:37:26 +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
Dmitri Ovodok
acdc76f958 fix #280775: fix inserting text elements on MM rest via shortcut 2018-12-28 12:22:20 +03:00
Dmitri Ovodok
8e2ad3b40d Record placement related properties when autoplacement gets switched on 2018-11-26 01:59:12 +02:00
ws
d2e452040b fix #278099 Crash when inserting a symbol from master palette 2018-11-13 13:32:33 +01:00
Dmitri Ovodok
6ae48c8b32 Extend properties framework for score comparison related needs
This commit adds:
- ScoreElement::propertyId for obtaining property ID by its XML name
  within the context of the respective element
- ScoreElement::propertyUserValue to obtain values of the properties
  in a human-readable representation
2018-10-29 17:04:24 +02:00
Dmitri Ovodok
3eafcc57be Add type check and conversion functions for Element, Score, Part 2018-10-29 16:30:18 +02:00
ws
96af32eee7 fix regressions: layout of misc. elements 2018-10-25 15:44:21 +02:00
ws
4cc247ea4a fix text position in palette 2018-10-22 11:43:54 +02:00
ws
d77183b3bb refactoring of Element::userOff and TextBase::offset 2018-10-18 11:56:23 +02:00
Matt McClinch
6708adfeb5 fix #276869: Adding barline with ctrl+doubleclick does not create a split. 2018-10-11 22:23:55 -04:00
Dmitri Ovodok
c354eb24c3 Remove read300 functions 2018-09-19 01:57:37 +03:00
anatoly-os
588a4bad76 add TODOs to rename pos() and ipos()
Element::pos() and Element::ipos() unclear and error prone semantic led to 382b7d79d8.
SpannerSegment::pos2() and SpannerSegment::ipos2() are not good as well.
I didn't apply renaming because active work is in progress.
2018-09-18 21:55:21 +02:00
ws
58618db581 fix autoplacement for Jump and Marker 2018-09-12 12:05:17 +02:00
Dmitri Ovodok
2c28195c1c Add a framework to read/write connectors using relative positions instead of IDs
Try to reconnect broken connectors while reading MSCX files
2018-08-16 19:10:28 +03:00
Dmitri Ovodok
b4da00bae2 Miscellaneous changes used for MSCX format rework
Those changes include:
- Add a possibility to write comments to MSCX files
- Add Element::findMeasureBase and constant version of Element::findMeasure
- Store index of the currently read measure in XmlReader. Correct behaviour of MeasureBase::index.
- Minor spanners-related additions to elements creation and conversion
2018-08-16 19:08:45 +03:00
Dmitri Ovodok
55bef706b8 Add API for retrieving positions of elements in terms of fractions
Rename fpos -> rfrac
Merge Element::ftick with Element::afrac
2018-08-16 19:08:45 +03:00
Dmitri Ovodok
8fa920b7df Backup old MSC read functions, add a test for fileformats compatibility
Use old read functions for reading 1.x and 2.x fileformats

Assign version number 3.01 to the new MSCX format flavor
2018-08-16 19:08:45 +03:00
ws
10ebbb9080 update text style implementation 2018-08-01 11:46:35 +02:00
ws
10d1ae0529 add method propertyDelegate() to Element 2018-07-24 15:48:24 +02:00
ws
1fb2fc2d9b fix #264594 lyrics update 2018-07-19 13:03:38 +02:00
Matt McClinch
d0c189b622 fix #117066: Selecting notes in triplet quavers embedded in triplet crotchet 2018-07-12 22:57:20 -04:00
ws
175d5aadb3 cleanup ElementFlags interface, use more Placement properties on mxml import/export 2018-07-04 12:41:14 +02:00
ws
6b8a6461f3 fix #272380 Rehearsal marks from palette are not generated automatically 2018-06-19 14:00:00 +02:00
ws
6a4bcb2dd1 fix #272379 Incorrect empty rectangle for rehearsal marks 2018-06-01 12:22:39 +02:00
ws
984e6ee761 fix lineVisible property 2018-05-07 11:28:50 +02:00
ws
af29311ec4 remove Element->_readPos 2018-04-30 16:08:25 +02:00
ws
6d460f012b regression fixes for tuplet layout 2018-04-09 11:51:45 +02:00
ws
f9effbaf23 fix visual test regressions 2018-03-28 17:49:08 +02:00
ws
33d1cd7fb4 rename StyleIdx -> Sid and P_ID -> Pid 2018-03-27 15:36:00 +02:00
ws
6969419cfc update subStyle implementation 2018-03-21 14:05:43 +01:00
ws
1a4bd0feb9 add tuplet shape to segment/measure shape; properties update 2018-03-16 10:58:31 +01:00
luz.paz
dab3b5f056 Misc. typos follow up
Follow up to previous typo commit a8ac55c180
2018-02-19 19:30:12 -05:00