Commit graph

67 commits

Author SHA1 Message Date
Kumar Kartikay
a87cc9e6cc Create Score Tree Model
This commit adds virtual functions treeChild, treeParent and
treeChildCount to ScoreElement and implements them in most non-leaf-node
classes. An iterator is also added to ScoreElement class to iterate over
the children of any element.

In this model, Spanners, Beams and Ties are given a single parent, which
is the starting element of the spanner, beam or tie. Also, to ensure
consistency in the model, spanners, beams, and ties appear in the
children list only for their starting element. Children of spanner
elements are SpannerSegments, one for each system the spanner appears
in.
2020-06-23 12:44:57 +05:30
Igor Korsukov
b6dabf5e0b fixed ctor colon 2020-05-29 21:15:25 +02:00
Igor Korsukov
45b9887603 changed code style 2020-05-28 09:50:45 +02:00
anatoly-os
0c29dd98cd Merge pull request #6065 from dmitrio95/plugin-api-style-settings
Plugin API: add basic access to score style settings
2020-05-20 14:18:02 +02:00
Dmitri Ovodok
2f443cf898 Fix inability to horizontally move hairpin with its middle or left handle with mouse 2019-12-24 14:16:06 +02:00
Dmitri Ovodok
e2d78395fc Add missing isLasso() method 2019-12-24 14:14:21 +02:00
luz.paz
f31624d746 fix various typos
* Found via `codespell -q 3 -S ./share/locale,./thirdparty -L ba,cann,clas,dur,foto,iff,nd,ois,ot,pres,possibile,snaped,strack,tage,te,uint,thru,valu`  
* Some revisions made per feedback given during review.
* Follow-up typos for review  
* Add revisions per feedback
2019-12-19 06:13:30 -05:00
Dmitri Ovodok
cf80fd34df fix #297614: fix moving viewport to irrelevant position when editing spanner segment 2019-12-02 12:23:47 +02:00
Dmitri Ovodok
1e5c2c3655 Follow-up for 4af2cd0: correct text types conversions in exportxml 2019-06-17 11:07:46 +02:00
Dmitri Ovodok
814620476b Add sticking feature 2019-06-15 13:52:28 +02:00
L0uisc
39631a7c98 fix #70531 Restore keyboard nav in continuous view ending in vertical frame 2019-02-20 10:31:34 +02:00
Dmitri Ovodok
ea81a9338c Add a new QML plugins API
- Move Qml plugin engine out of libmscore
 - Add Pid::TICK handling to Element class
 - Make tick QML property correspond to absolute tick in all contexts
     That is a temporary solution though, a proper solution would
     require revising Pid::TICK handling
 - Move plugins API to api directory
 - Rename ElementW -> Element (PluginAPI namespace)
 - Remove Qt meta-object macros from Score in libmscore
 - Remove string-based access to properties from QML
 - Remove unused functions from Note
 - Rename QML properties names to camel case
     Two reasons:
       - They were named so in MuseScore 2.X.
       - Using underscored_names is less consistent with MuseScore
         coding style.
2019-01-24 17:36:05 +03:00
Dmitri Ovodok
f42943e90b fix #278722: do not delete spanner segments but reuse them 2018-11-26 01:59:02 +02: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
Dmitri Ovodok
37df9aa2cb Add silent flag to ScoreElement::name2type 2018-10-29 16:30:18 +02:00
ws
abc08ac1f1 fix millimeter offset handling for subtext etc. 2018-10-26 12:28:11 +02:00
ws
6dbff17ca7 fix compat114 issues 2018-10-26 10:41:30 +02:00
ws
84dbe94a74 fix styleChanged() 2018-10-25 16:27:18 +02:00
ws
8a42030a4c fix measure number layout 2018-10-24 10:40:19 +02:00
Dmitri Ovodok
ed82f1a66e More accurate type check for Rests conversion 2018-10-19 11:56:06 +03:00
ws
d77183b3bb refactoring of Element::userOff and TextBase::offset 2018-10-18 11:56:23 +02:00
Dmitri Ovodok
41366f5a5e Avoid using linked IDs (<lid>) when writing linked elements
This commit includes also the following changes needed for correct
work of the changed links reading code:
- Correct current reading position when reading multimeasure rests
- Assign track number for Fingering while reading MSCX
2018-08-16 19:10:29 +03: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
ws
411b463f7a refactoring of layout for linear layout mode 2018-08-16 16:43:07 +02:00
ws
4247e09755 fix #275102 Default A note is A3, but was A4 in 2.3.2 2018-08-09 15:36:37 +02:00
ws
8fac795067 rename _subStyle into _elementStyle 2018-08-02 13:27:20 +02:00
ws
10ebbb9080 update text style implementation 2018-08-01 11:46:35 +02:00
ws
3fc269fc8b update ottava styles and properties 2018-07-11 12:23:42 +02:00
ws
6f6e86a03c fix #272366 There are no System Text properties 2018-05-28 14:20:53 +02:00
wschweer
903817537c remove code duplication: LinkedStaves 2018-04-27 13:29:39 +02:00
ws
917561d5ce fix linking of text 2018-04-18 14:31:47 +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
e8ec15109c substyle update 2018-03-22 10:09:52 +01:00
ws
a92df56cc6 update Bend() 2018-03-22 10:09:52 +01: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
ws
01da75509f update properties&styles 2018-03-15 11:52:34 +01:00
ws
35265cd358 implement new fermata element 2018-01-16 13:38:28 +01:00
Werner Schweer
f26ebf688f fix #268110 2018-01-04 12:41:42 +01:00
Werner Schweer
c68c9455d7 fix #268065: System text crashes the program when opening a file 2018-01-03 16:16:12 +01:00
Werner Schweer
1943bd1ff1 replace most static_cast in libmscore 2017-12-20 16:49:58 +01:00
Werner Schweer
d92ef8b9d4 update properties/styles, update glissando 2017-12-13 15:50:04 +01:00
Werner Schweer
0e4211e2d0 update let ring, palm mute 2017-11-27 16:55:52 +01:00
Werner Schweer
e212f7d57e add new elements LetRing and Vibrato 2017-11-27 09:56:54 +01:00
Werner Schweer
4241b93649 update scripting interface 2017-06-22 12:42:14 +02:00
Werner Schweer
847d3656cf updates to scripting, text editing 2017-05-19 09:06:58 +02:00
Werner Schweer
ac41fa396e update edit infrastructure 2017-03-31 13:03:30 +02:00