[EMAIL PROTECTED] writes:
> Han-Wen Nienhuys wrote:
> 
> > No, and I don't think I well ever allow such functionality unless it
> > elegantly solves a pressing problem. What problem do you want to
> > solve?
> 
> For instance (c.f. patch I sent to you) check the parent of the grob and
> behave dependently on that.
> - If parent of staffgroup is staffgroup or choirstaff, move
> SystemStartDelimiter leftwards.
> 
> Any other suggestions of how to implement "clean" nested staff-groups?

Such things are done at C++ in engravers. For instance

        System_start_delimiter_engraver::acknowledge_grob (Grob_info inf)
        { [..]
         if (System_start_delimiter::has_interface (inf.elem_l_))
            {
              SCM gl = inf.elem_l_->get_grob_property ("glyph");
              SCM my_gl = delim_->get_grob_property ("glyph");

              /*
                UGH UGH
               */
              if (gh_symbol_p (gl) && gl  == ly_symbol2scm ("brace")
                  && gh_symbol_p (my_gl) && my_gl == ly_symbol2scm ("bracket"))
                inf.elem_l_->translate_axis ( -1.0, X_AXIS); // ugh
            }
        }

At some point, we may make this functionality available via Scheme,
but that won't happen in the near future.  You could extend the above
code to check for your case.

-- 

Han-Wen Nienhuys   |   [EMAIL PROTECTED]    | http://www.cs.uu.nl/~hanwen/


_______________________________________________
Gnu-music-discuss mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/gnu-music-discuss

Reply via email to