<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - Make cropping handles for images (as in Draw/Impress) available for all LibreOffice applications"
href="https://bugs.freedesktop.org/show_bug.cgi?id=34555#c51">Comment # 51</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - Make cropping handles for images (as in Draw/Impress) available for all LibreOffice applications"
href="https://bugs.freedesktop.org/show_bug.cgi?id=34555">bug 34555</a>
from <span class="vcard"><a class="email" href="mailto:phil.jung@free.fr" title="Philippe Jung <phil.jung@free.fr>"> <span class="fn">Philippe Jung</span></a>
</span></b>
<pre>Hello,
I tried to work on this bug last year and I had something nearly working. But,
during this time, the code base changed (a lot) and I have no time for the
moment to rework it. So I would like to share what I found. I will attach the
patch "as is" to this ticket. It is not working at all with current trunk.
Basically, you have to use a virtual NbcCrop function on a parent that is
common to SwVirtDraw and SdrGraph
I am not going to detail every change I made in this ticket. Please read the
patch and if you have any question feel free to ask.
The crop code was in SdrDragCrop::EndSdrDrag. You have to move this code in
SdrGraphObj. Now in SdrDragCrop::EndSdrDrag call the crop virtual =>
getSdrDragView().CropMarkedObj
Now the problems I am facing:
1) cropping code has changed a lot in EndSdrDrag. Mine uses the old code. You
will have to adapt it
2) Regarding links, you can also consider Armin Le Grand web page
<a href="https://wiki.openoffice.org/wiki/Aw080_documentation">https://wiki.openoffice.org/wiki/Aw080_documentation</a>. This explains the
mathematical logic using transformation matrixes (If you "git blame" the
cropping code, this will point to "alg"). If I am not mistaken, these changes
come from evolution of OpenOffice merged into Libre Office.
3) I tried to contact alg and his advice is "I would suggest to *not* touch
SwVirtFlyDrawObj at all, it's dead code. It's a kind of proxy, try to get the
original SdrObject from it and modify that instead. Or better: just tunnel your
call to the original object."
Philippe</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>