OLD | NEW |
1 /* | 1 /* |
2 This file is part of LilyPond, the GNU music typesetter. | 2 This file is part of LilyPond, the GNU music typesetter. |
3 | 3 |
4 Copyright (C) 1998--2020 Han-Wen Nienhuys <hanwen@xs4all.nl> | 4 Copyright (C) 1998--2020 Han-Wen Nienhuys <hanwen@xs4all.nl> |
5 | 5 |
6 LilyPond is free software: you can redistribute it and/or modify | 6 LilyPond is free software: you can redistribute it and/or modify |
7 it under the terms of the GNU General Public License as published by | 7 it under the terms of the GNU General Public License as published by |
8 the Free Software Foundation, either version 3 of the License, or | 8 the Free Software Foundation, either version 3 of the License, or |
9 (at your option) any later version. | 9 (at your option) any later version. |
10 | 10 |
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
277 warning (_ ("placing below")); | 277 warning (_ ("placing below")); |
278 } | 278 } |
279 down.insert (down.end (), scripts->begin (), scripts->end ()); | 279 down.insert (down.end (), scripts->begin (), scripts->end ()); |
280 scripts->clear (); | 280 scripts->clear (); |
281 } | 281 } |
282 | 282 |
283 for (vsize i = 0; i < horiz.size (); i++) | 283 for (vsize i = 0; i < horiz.size (); i++) |
284 { | 284 { |
285 Finger_tuple ft = horiz[i]; | 285 Finger_tuple ft = horiz[i]; |
286 Grob *f = ft.script_; | 286 Grob *f = ft.script_; |
287 f->set_parent (ft.head_, X_AXIS); | 287 if (scm_is_true (get_property (f, "stencil"))) { |
288 f->set_parent (ft.head_, Y_AXIS); | 288 f->set_parent (ft.head_, X_AXIS); |
289 set_property (f, "avoid-slur", ly_symbol2scm ("inside")); | 289 f->set_parent (ft.head_, Y_AXIS); |
290 if (hordir == LEFT | 290 set_property (f, "avoid-slur", ly_symbol2scm ("inside")); |
291 && unsmob<Grob> (get_object (ft.head_, "accidental-grob"))) | 291 if (hordir == LEFT |
292 Side_position_interface::add_support (f, | 292 && unsmob<Grob> (get_object (ft.head_, "accidental-grob"))) |
293 unsmob<Grob> (get_object (ft.head_
, "accidental-grob"))); | 293 Side_position_interface::add_support (f, |
294 else if (Rhythmic_head::dot_count (ft.head_)) | 294 unsmob<Grob> (get_object (ft.hea
d_, "accidental-grob"))); |
295 for (vsize j = 0; j < heads_.size (); j++) | 295 else if (Rhythmic_head::dot_count (ft.head_)) |
296 if (Grob *d = unsmob<Grob> (get_object (heads_[j], "dot"))) | 296 for (vsize j = 0; j < heads_.size (); j++) |
297 Side_position_interface::add_support (f, d); | 297 if (Grob *d = unsmob<Grob> (get_object (heads_[j], "dot"))) |
| 298 Side_position_interface::add_support (f, d); |
298 | 299 |
299 if (horiz.size () > 1) /* -> FingeringColumn */ | 300 if (horiz.size () > 1) /* -> FingeringColumn */ |
300 { | 301 { |
301 Stencil *fs = f->get_stencil (); | 302 Stencil *fs = f->get_stencil (); |
302 fs->align_to (Y_AXIS, CENTER); | 303 fs->align_to (Y_AXIS, CENTER); |
303 } | 304 } |
304 else | 305 else |
305 { | 306 { |
306 SCM self_align_y | 307 SCM self_align_y |
307 = Self_alignment_interface::aligned_on_parent (f, Y_AXIS); | 308 = Self_alignment_interface::aligned_on_parent (f, Y_AXIS); |
308 SCM yoff = get_property (f, "Y-offset"); | 309 SCM yoff = get_property (f, "Y-offset"); |
309 if (scm_is_number (yoff)) | 310 if (scm_is_number (yoff)) |
310 self_align_y = scm_from_double (scm_to_double (self_align_y) | 311 self_align_y = scm_from_double (scm_to_double (self_align_y) |
311 + scm_to_double (yoff)); | 312 + scm_to_double (yoff)); |
312 set_property (f, "Y-offset", self_align_y); | 313 set_property (f, "Y-offset", self_align_y); |
313 } | 314 } |
314 | 315 |
315 Side_position_interface::set_axis (f, X_AXIS); | 316 Side_position_interface::set_axis (f, X_AXIS); |
316 | 317 |
317 set_property (f, "direction", scm_from_int (hordir)); | 318 set_property (f, "direction", scm_from_int (hordir)); |
| 319 } |
318 } | 320 } |
319 | 321 |
320 Drul_array< vector<Finger_tuple> > vertical (down, up); | 322 Drul_array< vector<Finger_tuple> > vertical (down, up); |
321 for (DOWN_and_UP (d)) | 323 for (DOWN_and_UP (d)) |
322 { | 324 { |
323 for (vsize i = 0; i < vertical[d].size (); i++) | 325 for (vsize i = 0; i < vertical[d].size (); i++) |
324 { | 326 { |
325 Finger_tuple ft = vertical[d][i]; | 327 Finger_tuple ft = vertical[d][i]; |
326 Grob *f = ft.script_; | 328 Grob *f = ft.script_; |
327 int finger_prio = robust_scm2int (get_property (f, "script-priority"),
200); | 329 int finger_prio = robust_scm2int (get_property (f, "script-priority"),
200); |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
430 | 432 |
431 /* read */ | 433 /* read */ |
432 "fingeringOrientations " | 434 "fingeringOrientations " |
433 "harmonicDots " | 435 "harmonicDots " |
434 "strokeFingerOrientations " | 436 "strokeFingerOrientations " |
435 "stringNumberOrientations ", | 437 "stringNumberOrientations ", |
436 | 438 |
437 /* write */ | 439 /* write */ |
438 "" | 440 "" |
439 ); | 441 ); |
OLD | NEW |