After adding a line callout shape, there are two drag points at the end of the line to control its start and end points. However, there is no way to control the distance between the line end and the beginning of the callout area. Now, there is some use to automatically-determined distance. However, users sometimes want the distance to be 0, i.e. for the line to connect to the callout area itself, either trivially, or via some embellishment, like a bar, or a pair of bars, e.g.: \ | ++-------+ \ | || | \______| || | | || | | || | | ++-------+ I would like to be able to control some of this - but currently, I control none of it.
The movement of the start tail is restricted because not its ODF definition as written to file is used, but an internal definition based on MS binary format. When you open the file markup and change the draw:type alltribute to draw:type="non-primitive" all points of the shape are freely moveable.
Created attachment 190933 [details] Modified Line Callout 2 in sample ODP As suggested by Regina, this is the Line Callout 2 shape, with the file's content.xml modified to have draw:type="non-primitive" instead of draw:type="line-callout-2". The custom shapes Regina provided in bug 157879 comment 12's attachment 190685 [details] have controls to do that as well.
Eyal's suggestion takes away the ability to use that drag point to move the box without moving the position of the end point of the line, which I assume many find useful and wouldn't like to see disappear. But that's in the current examples; there's probably a way to implement a way to have both interactions. Interestingly, if the original Line Callout 2 is saved as PPTX, you get what you want: the end point controls the distance. Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community Build ID: baecfd21797310bb15ab98ca3962445d99e397db CPU threads: 8; OS: Linux 5.15; UI render: default; VCL: gtk3 Locale: en-AU (en_AU.UTF-8); UI: en-US Calc: threaded
(In reply to Stéphane Guillou (stragu) from comment #2) > Created attachment 190933 [details] > Modified Line Callout 2 in sample ODP In the end it is just an ordinary shape with a connector attached. Piece of cake to create out-of-the-box and still not worth to add to core.
(In reply to Stéphane Guillou (stragu) from comment #3) > Eyal's suggestion takes away the ability to use that drag point to move the > box without moving the position of the end point of the line On the contrary, it _adds_ that ability, which today does not exist. If you introduce a Line Callout 2 or Line Callout 3, and move the box - the line endpoint moves with it, keeping its distance. If we allowed controlling the line endpoint, it would still move when you move the box - but you could move it back to wherever you wanted. (In reply to Heiko Tietze from comment #4) > In the end it is just an ordinary shape with a connector attached. ... but a kind of connector that we don't have available elsewhere: * Our connectors actually reach their end anchroing point, they don't stop short of it. * Regarding Line Callout 2: We don't have a jointed connector in which you can move the joint arbitrarily on both axes. > Piece of cake to create out-of-the-box and still not worth to add to core. But callouts _are_ in the core. I'm suggesting we make the ones already in the core more flexible.
(In reply to Eyal Rozenberg from comment #5) > (In reply to Stéphane Guillou (stragu) from comment #3) > > Eyal's suggestion takes away the ability to use that drag point to move the > > box without moving the position of the end point of the line > On the contrary, it _adds_ that ability, which today does not exist. If you > introduce a Line Callout 2 or Line Callout 3, and move the box - the line > endpoint moves with it, keeping its distance. You misunderstood me: I meant that it "takes away the ability to use that drag point to move the box without moving the position of the end point _at the other end_ of the line." The current behaviour is useful, to move the box without changing what the callout is connected to. But having both would be great.
The LineCallout1 has one handle at the tip of the line and a second handle near the rectangle. You can control the coordinates for both in the last page of the Position&Size dialog. The handle at the tip is "Control Point 1", the handle near the rectangle is "Control Point 2". The values in the field are relative to the top/left corner of the rectangle. When you first open the dialog, the field values do not show the actual positions. When you change the values in the "Control Point 2" fields the point moves to another position and still has the feature, that dragging the point moves the rectangle but keeps the tip of the line at its place. That does not work for LineCallout2 because the dialog has not enough fields. We should extend the dialog to contain all the handles of a shape. That would be an improvement for other shapes with more than two handles as well. [see also bug 145969 about improvements for that dialog.]
Seems you all agree with the request (except me). So let's do it.