Commit graph

52 commits

Author SHA1 Message Date
Maurizio M. Gavioli
74ba9fe551 Short lyrics syllabic dash at end of system
When a syll. dash is too short to fit between two syllables, it is skipped. This looks badly at system end, where room for a short dash is usually available within the note-to-barline distance + barline width.

With this patch, a syll. dash at the end of a system is always drawn with at least the shortest acceptable length (or more, if more room is available), even if under normal conditions it would not fit. In a position where the in-word status of a syllable is not easy to guess, the occasional dash (very) slightly extending beyond the bar line seems more acceptable that no dash at all.

This patch also limits the `LyricsLine`-specific correction in `SLine::linePos()` to melisma only, using common processing for syllabic dash lines.
2015-01-19 21:30:26 +01:00
Werner Schweer
4541a02f20 Merge pull request #1638 from MarcSabatella/melisma-manual
melisma updates
2015-01-19 21:19:00 +01:00
Maurizio M. Gavioli
dd41b196fe Show melisma line after first underscore
While entering a melisma, the first underscore has no specific visual effect.

This patch displays a short melisma after the first underscore, by setting a conventional non-0 lyrics `_ticks` value.

Note: If no second underscore is entered (edit mode is exited or a new syllable is entered in the following chord), the short melisma is left behind as a left-over. It may be the case to reset to 0 the melisma ticks (= no melisma at all) for instance when the score is saved, or read back.
2015-01-19 17:50:05 +01:00
Marc Sabatella
c96f9f28eb partial fix for #44421: vertical position of melisma continuation 2015-01-16 10:42:55 -07:00
Marc Sabatella
46864a1407 melisma updates 2015-01-14 18:37:38 -07:00
Maurizio M. Gavioli
26222afb83 44156 addendum - melisma line length correction
The melisma line had an undershooting length correction; with the latest change, it is now too short.

Correction changed to overshoot the chord by `minNoteDistance`, as it is definitely less massive than the chord itself.

Also removed a useless test in `line.cpp`.
2015-01-13 01:07:22 +01:00
Marc Sabatella
fd2695808b fix #44196: hyphenated syllables always left-aligned 2015-01-12 13:51:37 -07:00
Marc Sabatella
27695a68b5 fix #44156: melisma line too long 2015-01-12 13:03:03 -07: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
Marc Sabatella
b1eed65018 fix #41721: bad layout of melisma lines in parts 2014-12-18 13:53:46 -07:00
Marc Sabatella
7013e0ad5d fix #40296: lyrics consisting of symbols offcenter 2014-11-30 08:05:19 -07:00
ws
e797d3b5f0 remove verse number from Lyric 2014-10-22 12:08:39 +02:00
Werner Schweer
da6215a3ac Merge pull request #1391 from MarcSabatella/36366-parse-verse
fix #36366: parse verse number, left align to syllable
2014-10-22 11:37:44 +02:00
Marc Sabatella
4f4e7b3a55 update 2014-10-19 14:36:08 -06:00
lasconic
dc48ff5bfa fix #37096: It is impossible to enter special characters from the F2 palette into lyrics 2014-10-19 15:16:24 +02:00
Marc Sabatella
0e9dd1a35e fix #36366: parse verse number, left align to syllable 2014-10-18 14:33:43 -06:00
Joachim Schmitz
e4ec8beb95 adjust default style for lyrics verse numbers
to match the default style of lyrics odd/even lines
2014-10-05 12:30:49 +02:00
Marc Sabatella
ab15653628 avoid overlaps of melisma syllables, extenders, and hyphens 2014-09-22 11:56:32 -06:00
Marc Sabatella
e2fdd254a7 fix #17190: left align hyphenated melismas 2014-09-09 07:12:18 -06:00
Marc Sabatella
425d438746 fix #32391: center lyrics under whole notes 2014-09-09 07:12:18 -06:00
ws
dcf963b3d6 fix #30906 2014-08-27 10:31:52 +02:00
Bartlomiej Lewandowski
cbaa128e4d Added comments and spaces 2014-08-15 22:49:59 +02:00
ws
6d46589c56 fix #29431 2014-08-13 21:01:21 +02:00
Bartlomiej Lewandowski
26da2e91ca Added filter for lyrics 2014-07-30 14:49:53 +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
Joachim Schmitz
25b79d460b convert enum AlignmentFlag into enum class 2014-06-24 14:46:47 +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
Joachim Schmitz
0b43247956 convert enum StyleIdx into enum class 2014-05-26 15:31:36 +02:00
Joachim Schmitz
e299478fcc convert enum Syllabic into enum class 2014-05-23 10:35:29 +02:00
Joachim Schmitz
931e837c5e convert enum ElementType into enum class 2014-05-23 10:35:27 +02:00
lasconic
da6e8929b5 fix #7885: Lyric pasting should break at hyphens 2014-03-22 14:54:15 +01:00
ws
5297c963dd textline+ottava updates 2014-03-10 10:50:32 +01:00
ws
e18298e127 fix lyrics editing 2014-02-19 12:18:44 +01:00
ws
863b1aaaad fix text formatting 2014-02-18 16:38:55 +01:00
ws
e6e7abbd6d smufl integration: articulation 2 2013-11-12 09:29:13 +01:00
ws
733c1934db smufl integration, part I 2013-11-12 09:29:12 +01:00
lasconic
62f56f70be replace Q_WS_* by Q_OS_* for Qt5 compatibility 2013-05-16 16:12:22 +02:00
ws
9ebabcc2e5 add namespace Ms 2013-05-13 19:43:59 +02:00
lasconic
14fbeb30d3 fix text style index/type association when creating new text 2013-04-11 13:30:34 +02:00
ws
220db94494 reorganize synthesizer; add zita1 reverb 2013-04-03 12:50:21 +02:00
ws
6310c5a099 remove QTextCursor and QTextDocument from Text interface 2013-02-18 12:56:09 +01:00
ws
73f2e81f2d fix slur regression 2013-01-21 20:21:41 +01:00
ws
bf1cbe2aa0 use QXmlStreamReader for xml parsing 2013-01-11 18:10:18 +01:00
Maurizio Gavioli
e3acbcebdc Set TextStyle AND TextStyleType 2012-11-01 01:07:38 +01:00
Maurizio Gavioli
301f4117d3 Allows different styles for lyrics, without forcing built-in LYRICS1 or LYRICS2.
This is mostly useful for applying custom styles to special lyric syllables.
2012-11-01 01:07:37 +01:00
Werner Schweer
4afe07da6c moved property Placement to Element; change musicxml import/export to use Placement property 2012-10-31 14:21:13 +01:00
Werner Schweer
2cbb3a93ff add Placement property to more elements 2012-10-31 11:48:12 +01:00
Werner Schweer
37aa63b841 enhance 1.2 import of lyrics 2012-10-29 17:14:05 +01:00
Werner Schweer
2381bf1122 create lyrics as styled text; relayout after lyrics edit 2012-10-25 14:50:17 +02:00
Werner Schweer
328c1102e7 update text editing; enable horizontal alignment options for lyrics 2012-10-25 13:52:24 +02:00