Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(52)

Delta Between Two Patch Sets: lily/grob.cc

Issue 6498077: Approximates cross-staff slurs in VerticalAxisGroup vertical-skylines. Base URL: http://git.savannah.gnu.org/gitweb/?p=lilypond.git/trunk/
Left Patch Set: Uses grob cause Created 12 years, 6 months ago
Right Patch Set: Better approximations Created 12 years, 6 months ago
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
Left: Side by side diff | Download
Right: Side by side diff | Download
« no previous file with change/comment | « lily/figured-bass-position-engraver.cc ('k') | lily/include/axis-group-interface.hh » ('j') | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
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) 1997--2012 Han-Wen Nienhuys <hanwen@xs4all.nl> 4 Copyright (C) 1997--2012 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 356 matching lines...) Expand 10 before | Expand all | Expand 10 after
367 /* we simulate positioning-done if we are the child of a VerticalAlignment, 367 /* we simulate positioning-done if we are the child of a VerticalAlignment,
368 but only if we don't have a cached offset. If we do have a cached offset, 368 but only if we don't have a cached offset. If we do have a cached offset,
369 it probably means that the Alignment was fixed and it has already been 369 it probably means that the Alignment was fixed and it has already been
370 calculated. 370 calculated.
371 */ 371 */
372 if (Grob *p = get_parent (Y_AXIS)) 372 if (Grob *p = get_parent (Y_AXIS))
373 { 373 {
374 Real trans = 0; 374 Real trans = 0;
375 if (Align_interface::has_interface (p) && !dim_cache_[Y_AXIS].offset_) 375 if (Align_interface::has_interface (p) && !dim_cache_[Y_AXIS].offset_)
376 trans = Align_interface::get_pure_child_y_translation (p, this, start, e nd); 376 trans = Align_interface::get_pure_child_y_translation (p, this, start, e nd);
377 377 //printf ("%s O T %4.4f %4.4f\n", name().c_str(), off, trans);
378 return off + trans + p->pure_relative_y_coordinate (refp, start, end); 378 return off + trans + p->pure_relative_y_coordinate (refp, start, end);
379 } 379 }
380 return off; 380 return off;
381 } 381 }
382 382
383 /* Invoke callbacks to get offset relative to parent. */ 383 /* Invoke callbacks to get offset relative to parent. */
384 Real 384 Real
385 Grob::get_offset (Axis a) const 385 Grob::get_offset (Axis a) const
386 { 386 {
387 if (dim_cache_[a].offset_) 387 if (dim_cache_[a].offset_)
(...skipping 572 matching lines...) Expand 10 before | Expand all | Expand 10 after
960 if (Align_interface::has_interface (commony)) 960 if (Align_interface::has_interface (commony))
961 return true; 961 return true;
962 962
963 for (Grob *g = this; g && g != commony; g = g->get_parent (Y_AXIS)) 963 for (Grob *g = this; g && g != commony; g = g->get_parent (Y_AXIS))
964 if (Align_interface::has_interface (g)) 964 if (Align_interface::has_interface (g))
965 return true; 965 return true;
966 966
967 return false; 967 return false;
968 } 968 }
969 969
LEFTRIGHT

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b