Bug 126648 - Arrow Style sorting after size
Summary: Arrow Style sorting after size
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Draw (show other bugs)
Version:
(earliest affected)
6.4.0.0.alpha1+
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:7.0.0
Keywords:
Depends on:
Blocks: Shapes-Line
  Show dependency treegraph
 
Reported: 2019-07-31 22:25 UTC by andreas_k
Modified: 2022-08-21 07:19 UTC (History)
5 users (show)

See Also:
Crash report or crash signature:


Attachments
Arrows in 6.3 (9.53 KB, image/png)
2019-07-31 22:25 UTC, andreas_k
Details
arrow dialog from MSO (14.72 KB, image/png)
2019-08-01 10:59 UTC, andreas_k
Details
arrow styles proposal (3.36 MB, application/vnd.oasis.opendocument.graphics)
2019-08-01 13:40 UTC, andreas_k
Details
Arrow Styles List image (18.46 KB, image/png)
2019-08-05 15:03 UTC, andreas_k
Details
source code file stadard.soe (9.58 KB, application/xml)
2019-08-05 15:06 UTC, andreas_k
Details

Note You need to log in before you can comment on or make changes to this bug.
Description andreas_k 2019-07-31 22:25:22 UTC
Created attachment 153082 [details]
Arrows in 6.3

If you would like to use the arrow styles, it's very difficult to find out which arrow is smaler/larger. I suggest to sort the arrows according there size.

In addition Small Arrow is the largest arrow. I suggest to update the list and maybe have for some styles 3 different sizes small, normal, large. maybe for stuff that was needed for flowcharts or something like that, 5 sizes.

give me a go and I will see what I can do.
Comment 1 Heiko Tietze 2019-08-01 09:05:38 UTC
Not a fan of this idea. Most often used items have to be on top of (dropdown) lists. But open for other opinions.
Comment 2 andreas_k 2019-08-01 09:16:59 UTC
The idea is not only to have an sorted list, it's more that you have different arrow sizes next to each other so that you know the first one is ALWAYS the smalest one and than size increase.
Comment 3 Heiko Tietze 2019-08-01 10:03:03 UTC
I'm against bloating the list of arrows (and any other) by providing different sizes, colors etc. It's a piece of cake to make an arrow thin or big after you inserted it.
Comment 4 andreas_k 2019-08-01 10:15:44 UTC
I have to make an mockup to show what I think.
Comment 5 andreas_k 2019-08-01 10:59:54 UTC
Created attachment 153090 [details]
arrow dialog from MSO

6 different arrows BUT 9 different sizes.

LibO now has 29 different arrow styles.
Comment 6 andreas_k 2019-08-01 13:40:22 UTC
Created attachment 153092 [details]
arrow styles proposal

do arrow styles has extension support?

there are now 34 vs. 29 arrow styles (proposal/master). The big change is the arragement.

for sure if we can have an second dropdown box with sizes that would be the better solution (but I think it's not possible, cause ordinary it's only one drop down menu with start, end arrow.
Comment 7 Heiko Tietze 2019-08-02 08:42:17 UTC
So what you do is 
* Rename Rounded Short Arrow to Arrow
* Rename Symmetric Arrow to Arrow Short
* Rename Small Arrow to Arrow Large
* Add Arrow Line Large
* Add Arrow Concave Short
* Add Arrow Concave Large

Can you give an example when those new arrow styles are needed?
Comment 8 andreas_k 2019-08-02 08:55:34 UTC
(In reply to Heiko Tietze from comment #7)
> So what you do is 
> * Rename Rounded Short Arrow to Arrow
Arrow is Arrow (I never change an default), Rounded short arrow was removed, cause it's to similar to arrow

> * Rename Symmetric Arrow to Arrow Short
I rename symmetric arrow to traingle cause this it the same

> * Rename Small Arrow to Arrow Large
rename cause small arrow is not small

> * Add Arrow Line Large
> * Add Arrow Concave Short
> * Add Arrow Concave Large

Arrow, Arrow Line and Arrow Concave is available in MSO so I suggest to have for them 3 sizes, normal, short and large. For sure we can also integrate square 45 and circle in 3 sizes, but as you said it will be to much.
Comment 9 andreas_k 2019-08-02 09:00:47 UTC
for sure the problem with different sizes can be solved when there is an dropdown menu in the dialog, but as it's not there we need from my point of view different sizes.
Comment 10 andreas_k 2019-08-02 14:37:43 UTC
I had a look into source file https://opengrok.libreoffice.org/xref/core/extras/source/palettes/standard.soe?r=b15fef02

Is there an reason that each viewbox is different? how the size will be defined? from the viewbox (and there size) it's not possible to define the arow size. And if there is somewhere an parameter for the size in the code, than it should be not to complicated to add an size drop down menu to the array dialog window.
Comment 11 Regina Henschel 2019-08-02 17:14:51 UTC
(In reply to andreas_k from comment #10)
> I had a look into source file
> https://opengrok.libreoffice.org/xref/core/extras/source/palettes/standard.
> soe?r=b15fef02
> 
> Is there an reason that each viewbox is different?

The viewBox defines a coordinate system for its content. It allows to exactly determine the position and and size of its content parts in regard to other content parts. Because it is pure vector graphic, it does not have any "size". The author of a marker can use a viewBox as he likes.

 how the size will be
> defined? from the viewbox (and there size) it's not possible to define the
> arow size.

The size is determined by the style of the object, which uses the arrow. The style has parts 'draw:marker-start="Circle" draw:marker-start-width="1cm"', for example. That means: Use the marker with name "Circle" and scale it so, that its width is 1cm. The rectangle given be the viewBox (third and forth value of it) is scaled with keeping ratio, so that the width of the viewBox is 1cm.

This width is set in the UI in the "Line" dialog for direct formatting or in a graphic style in tab "Line". The default width, when switching on a marker, is determined by the thickness of the line. When changing the line width the marker width is adapted automatically, but you can set a different value manually. 

 And if there is somewhere an parameter for the size in the code,
> than it should be not to complicated to add an size drop down menu to the
> array dialog window.

The drop-down menu for the type of the marker is not a good place for it. But I can think of a section in the side bar, which provides a simplified UI. Keep in mind, that you have the option "center" in addition to the width, and that in ODF you can use an arbitrary value for the width and use arbitrary paths for the marker, only that it needs to be closed.

The situation is different in OOXML. There you are restricted to a fix set of 6 marker types (incl. none) and a fix set of the three size values: large, medium, small. See 20.1.10.32 to 20.1.10.34 in the OOXML standard.
Comment 12 andreas_k 2019-08-02 18:28:44 UTC
Thanks for the Information l will do the best to give our users the best of odt.

Thanks
Comment 13 andreas_k 2019-08-02 22:03:14 UTC
what does CF mean? There is

CF Oee
CF Only One
CF Many
CF Many One
CF Zero One
CF Zero Many
Comment 14 V Stuart Foote 2019-08-02 22:54:53 UTC
(In reply to andreas_k from comment #13)
> what does CF mean? There is
> 
> CF Oee
> CF Only One
> CF Many
> CF Many One
> CF Zero One
> CF Zero Many

The "CF" was used for naming "Crows Foot" a.k.a Martin [1] symbology for -- Entity–relationship modeling [2]

=-ref-=
[1] https://en.wikipedia.org/wiki/James_Martin_(author)
[2] https://en.wikipedia.org/wiki/Entity%E2%80%93relationship_model
Comment 15 andreas_k 2019-08-05 15:03:29 UTC
Created attachment 153144 [details]
Arrow Styles List image
Comment 16 andreas_k 2019-08-05 15:06:49 UTC
Created attachment 153145 [details]
source code file stadard.soe

if extension support would be available, CF arrow styles will go to an extension.

All other arrows are inspired by LibO, Latex (Tikz), inkscape, ...

focus was on:
1. better overview (grouping)
2. use only arrows that works well within LibO (lines want change size, so area filled arrows are better)
3. standards in other applications
Comment 17 Heiko Tietze 2019-08-08 13:09:32 UTC
No objection so go for it.
Comment 18 Commit Notification 2020-04-09 19:52:20 UTC
andreas kainz committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/22a1557314ffa7c8ae57ebe5d0056893ed1103a8

tdf#126648 Update Arrow Style sorting after size and fill options

It will be available in 7.0.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 19 BogdanB 2020-05-02 21:27:59 UTC
Verified.

Very nice arranged! And also they are arranged at least for me from most often to never used.

Version: 7.0.0.0.alpha0+
Build ID: 05b87ae66ebccd06995cf530b860443ad9503b31
CPU threads: 4; OS: Linux 5.4; UI render: default; VCL: gtk3; 
Locale: ro-RO (ro_RO.UTF-8); UI-Language: en-US
TinderBox: Linux-rpm_deb-x86_64@86-TDF, Branch:master, Time: 2020-05-02_10:14:58
Calc: threaded