lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Attach point-and-click link to custom stencil


From: Urs Liska
Subject: Re: Attach point-and-click link to custom stencil
Date: Mon, 13 Mar 2017 13:41:48 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Icedove/45.6.0


Am 13.03.2017 um 13:16 schrieb David Kastrup:
> Urs Liska <address@hidden> writes:
>
>> Am 13.03.2017 um 13:07 schrieb David Kastrup:
>>> Urs Liska <address@hidden> writes:
>>>
>>>> when writing a callback function to override a stencil, how can I attach
>>>> the original point-and-click link to the resulting graphics?
>>> Isn't it attached automatically?  I don't think the usual stencil
>>> callbacks bother with point-and-click info themselves.
>> It seems not, they are not clickable.
>> I'm calling the function with \override Tie.stencil = #arced-curve-stencil
>>
>> which is defined as
>>
>> #(define (arced-curve-stencil grob)
>>    ...
>>
>> and returns the result of a (ly:stencil-translate (ly:make-stencil call.
> The point-and-click area is rectangular and taken from the stencil's
> position and dimensions, so there is suspicion that they aren't what you
> want them to be.

OK. That means it could either be where the original grob would have
been printed or maybe originating before the stencil-translate is
applied. I'll investigate.

>
>>>> Is that even possible, as I'm not actually dealing with the grob
>>>> anymore (isn't it)?
>>>>
>>>> I know how to get the location from inside the ties and slurs I'm
>>>> dealing with, but I don't know how I can get this information back
>>>> into the resulting element in the PDF.
>>> With stencils, you should not need to do anything.  When calling
>>> ly:engraver-make-grob yourself, be sure to specify a good cause.  Then
>>> the originating event's point-and-click info will be automatically
>>> attached.
>> As usual the information about ly:engraver-make-grob on the
>> Scheme-functions page doesn't help me very much. All I would be able to
>> figure out is the cause, but what kind of "engraver instance" should I
>> be referring to here?
> The one passed to the engraver callback?

You mean what I refer to as "grob" in my example?

-- 
address@hidden
https://openlilylib.org
http://lilypondblog.org




reply via email to

[Prev in Thread] Current Thread [Next in Thread]