yushiro / svg-edit

Automatically exported from code.google.com/p/svg-edit
MIT License
0 stars 0 forks source link

Library of SVG Objects - (compatible with rectangle) #541

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
We need a plugin for including SVG objects from an internal or hosted library. 
First type of objects 
(and the easiest to include) would be those that need as input only the width, 
height and initial 
anchor point (as a rectangle would need)

I will start the contents of this library with some objects from google drawing 
application for google 
docs (compatible with a square). I will also prefer a coloring scheme based on 
shades of grey.

Feel free to contribute with more.

Original issue reported on code.google.com by Christia...@gmail.com on 19 Apr 2010 at 4:13

GoogleCodeExporter commented 9 years ago
Agreed, should definitely have this for 2.6. Wouldn't this really just be a 
library
of premade paths, though? 

Original comment by adeve...@gmail.com on 19 Apr 2010 at 5:46

GoogleCodeExporter commented 9 years ago
this case: of objects compatible with rectangle, would be in fact a library of 
premade paths, but i was thinking 
around the lines of having objects that are not compatible with rectangle in 
the future (that is to say: that require 
more data than the anchor point and width and height)
the diference from library of objects/premade paths and a library of files 
would be that these objects will be very 
easy to access (no import svg menu, provide URL, etc..) please see how google 
has done it in their drawing tool

Original comment by Christia...@gmail.com on 19 Apr 2010 at 6:15

GoogleCodeExporter commented 9 years ago
Svg-lib Tool Icon

Original comment by Christia...@gmail.com on 19 Apr 2010 at 9:56

Attachments:

GoogleCodeExporter commented 9 years ago
rev 2

Original comment by Christia...@gmail.com on 19 Apr 2010 at 10:07

Attachments:

GoogleCodeExporter commented 9 years ago
for the paths I propose the following format:

for the source of the form:

<svg width="300" height="300" xmlns="http://www.w3.org/2000/svg">
 <g>
  <title>Layer 1</title>
  <path id="heart" d="m150,73c61,-175 300,0 0,225c-300,-225 -61,-400 0,-225z" fill="#e0e0e0" 
stroke="#000000" stroke-width="2" stroke-linejoin="round"/>
 </g>
</svg>

we will record only: lib_path['heart'] = 'm150,73c61,-175 300,0 0,225c-300,-225 
-61,-400 0,-225z';

so for all path designs we keep constant:

- svg dimensions: 300x300
- fill="#e0e0e0" stroke="#000000" stroke-width="2" stroke-linejoin="round"
- we try to have the path centered horizontally and vertically and as close to 
the margins as possible
- we try to have integer coordinates for path nodes (code as short as possible)

Original comment by Christia...@gmail.com on 19 Apr 2010 at 10:30

Attachments:

GoogleCodeExporter commented 9 years ago
so:

lib_path['heart'] = 'm150,73c61,-175 300,0 0,225c-300,-225 -61,-400 0,-225z';
lib_path['frame'] = 'm0,0l300,0l0,300l-300,0zm35,-265l0,230l230,0l0,-230z';
lib_path['donut'] = 'm1,150l0,0c0,-82.29042 66.70958,-149 
149,-149l0,0c39.51724,0 77.41599,15.69816 
105.35889,43.64108c27.94293,27.94293 43.64111,65.84165 
43.64111,105.35892l0,0c0,82.29041 -
66.70958,149 -149,149l0,0c-82.29041,0 -149,-66.70959 
-149,-149zm74.5,0l0,0c0,41.1452 
33.35481,74.5 74.5,74.5c41.14522,0 74.5,-33.3548 74.5,-74.5c0,-41.1452 
-33.3548,-74.5 -74.5,-
74.5l0,0c-41.14519,0 -74.5,33.35481 -74.5,74.5z'; //feel welcome to simplify 
this code

Original comment by Christia...@gmail.com on 19 Apr 2010 at 11:00

GoogleCodeExporter commented 9 years ago
lib_path["triangle"] = "m1,280.375l149,-260.75l149,260.75z";
lib_path["right_triangle"] = "m1,299l0,-298l298,298z";
lib_path["diamond"] = "m1,150l149,-149l149,149l-149,149l-149,-149z";

Original comment by Christia...@gmail.com on 19 Apr 2010 at 11:15

GoogleCodeExporter commented 9 years ago
lib_path["times"] = 
"m1.00089,73.36786l72.36697,-72.36697l76.87431,76.87368l76.87431,-
76.87368l72.36765,72.36697l-76.87433,76.87431l76.87433,76.87431l-72.36765,72.367
65l-76.87431,-
76.87433l-76.87431,76.87433l-72.36697,-72.36765l76.87368,-76.87431l-76.87368,-76
.87431z";
lib_path["arrow_up"] = 
"m1.49805,149.64304l148.50121,-148.00241l148.50121,148.00241l-
74.25061,0l0,148.71457l-148.5012,0l0,-148.71457z"; //feel welcome to simplify 
this code

Original comment by Christia...@gmail.com on 19 Apr 2010 at 11:26

GoogleCodeExporter commented 9 years ago
lib_path["flowchart_terminal"] = "m48.94167,99.12235l202.11729,0l0,0c26.47794,0 
47.9425,22.7794 
47.9425,50.8792c0,28.09979 -21.46457,50.87918 
-47.9425,50.87918l-202.11729,0l0,0c-26.47791,0 -
47.9425,-22.77939 -47.9425,-50.87918c0,-28.09981 21.46459,-50.8792 
47.9425,-50.8792z";
lib_path["flowchart_decision"] = 
"m0.99837,149.99953l148.79352,-102.86476l148.79387,102.86476l-
lib_path["vertical_scrool"] = "148.79387,102.86476l-148.79352,-102.86476z";
m37.375,261.625l0,-242.9375l0,0c0,-10.32083 8.36669,-18.6875 18.6875,-
18.6875l224.25,0c10.32083,0 18.6875,8.36667 18.6875,18.6875c0,10.32081 
-8.36667,18.6875 -
18.6875,18.6875l-18.6875,0l0,242.9375c0,10.32083 -8.36668,18.6875 
-18.6875,18.6875l-
224.25,0l0,0c-10.32083,0 -18.6875,-8.36667 -18.6875,-18.6875c0,-10.32083 
8.36667,-18.6875 
18.6875,-18.6875zm37.375,-261.625l0,0c10.32081,0 18.6875,8.36667 
18.6875,18.6875c0,10.32081 -
8.36669,18.6875 -18.6875,18.6875c-5.1604,0 -9.34375,-4.18335 
-9.34375,-9.34375c0,-5.16041 
4.18335,-9.34375 9.34375,-9.34375l18.6875,0m186.875,18.6875l-205.5625,0m-
37.375,224.25l0,0c5.1604,0 9.34375,4.18335 9.34375,9.34375c0,5.1604 
-4.18335,9.34375 -
9.34375,9.34375l18.6875,0m-18.6875,18.6875l0,0c10.32081,0 18.6875,-8.36667 
18.6875,-18.6875l0,-
18.6875"; //feel welcome to simplify this code

Original comment by Christia...@gmail.com on 19 Apr 2010 at 11:45

GoogleCodeExporter commented 9 years ago
lib_path["smiley"] = "m68.49886,214.78838q81.06408,55.67332 
161.93891,0m-144.36983,-109.9558c0,-
8.60432 6.97517,-15.57949 15.57948,-15.57949c8.60431,0 15.57948,6.97517 
15.57948,15.57949c0,8.60431 -6.97517,15.57947 -15.57948,15.57947c-8.60431,0 
-15.57948,-6.97516 
-15.57948,-15.57947m95.83109,0c0,-8.60432 6.97517,-15.57949 
15.57948,-15.57949c8.60431,0 
15.57947,6.97517 15.57947,15.57949c0,8.60431 -6.97516,15.57947 
-15.57947,15.57947c-8.60429,0 -
15.57948,-6.97516 -15.57948,-15.57947m-181.89903,44.73038l0,0c0,-82.60133 
66.96162,-149.56296 
149.56296,-149.56296c82.60135,0 149.56296,66.96162 
149.56296,149.56296c0,82.60135 -
66.96161,149.56296 -149.56296,149.56296c-82.60133,0 -149.56296,-66.96161 
-149.56296,-
149.56296zm0,0l0,0c0,-82.60133 66.96162,-149.56296 
149.56296,-149.56296c82.60135,0 
149.56296,66.96162 149.56296,149.56296c0,82.60135 -66.96161,149.56296 
-149.56296,149.56296c-
82.60133,0 -149.56296,-66.96161 -149.56296,-149.56296z";

Original comment by Christia...@gmail.com on 19 Apr 2010 at 11:58

GoogleCodeExporter commented 9 years ago
lib_path["left_braket"] = "m174.24565,298.5c-13.39009,0 -24.24489,-1.80908 
-24.24489,-4.04065l0,-
140.4187c0,-2.23158 -10.85481,-4.04065 -24.2449,-4.04065l0,0c13.39009,0 
24.2449,-1.80907 24.2449,-
4.04065l0,-140.4187l0,0c0,-2.23159 10.8548,-4.04066 24.24489,-4.04066";

Original comment by Christia...@gmail.com on 20 Apr 2010 at 12:04

GoogleCodeExporter commented 9 years ago
lib_path["uml_actor"] = 
"m40.5,100l219,0m-108.99991,94.00006l107,105m-107.00009,-106.00006l-
100,106m99.5,-231l0,125m33.24219,-158.75781c0,18.35916 -14.88303,33.24219 
-33.24219,33.24219c-
18.35916,0 -33.2422,-14.88303 -33.2422,-33.24219c0.00002,-18.35915 
14.88304,-33.24219 33.2422,-
33.24219c18.35916,0 33.24219,14.88304 33.24219,33.24219z";

Original comment by Christia...@gmail.com on 20 Apr 2010 at 12:31

GoogleCodeExporter commented 9 years ago
lib_path["dialog_balloon_1"] = "m0.99786,35.96579l0,0c0,-19.31077 
15.28761,-34.96524 34.14583,-
34.96524l15.52084,0l0,0l74.50001,0l139.68748,0c9.05606,0 17.74118,3.68382 
24.14478,10.24108c6.40356,6.55726 10.00107,15.45081 
10.00107,24.72416l0,87.41311l0,0l0,52.44785l0,0c0,19.31078 -15.2876,34.96524 
-34.14584,34.96524l-
139.68748,0l-97.32507,88.90848l22.82506,-88.90848l-15.52084,0c-18.85822,0 
-34.14583,-15.65446 -
34.14583,-34.96524l0,0l0,-52.44785l0,0z";

Original comment by Christia...@gmail.com on 20 Apr 2010 at 12:37

GoogleCodeExporter commented 9 years ago
lib_path["cloud"] = "m182.05086,34.31005c-0.64743,0.02048 -1.27309,0.07504 
-1.92319,0.13979c-
10.40161,1.03605 -19.58215,7.63722 
-24.24597,17.4734l-2.47269,7.44367c0.53346,-2.57959 1.35258,-
5.08134 2.47269,-7.44367c-8.31731,-8.61741 -19.99149,-12.59487 
-31.52664,-10.72866c-
11.53516,1.8662 -21.55294,9.3505 -27.02773,20.19925c-15.45544,-9.51897 
-34.72095,-8.94245 -
49.62526,1.50272c-14.90431,10.44516 -22.84828,28.93916 
-20.43393,47.59753l1.57977,7.58346c-
0.71388,-2.48442 -1.24701,-5.01186 
-1.57977,-7.58346l-0.2404,0.69894c-12.95573,1.4119 -
23.58103,11.46413 -26.34088,24.91708c-2.75985,13.45294 2.9789,27.25658 
14.21789,34.21291l17.54914,4.26352c-6.1277,0.50439 -12.24542,-0.9808 
-17.54914,-4.26352c-
8.66903,9.71078 -10.6639,24.08736 -4.94535,35.96027c5.71854,11.87289 
17.93128,18.70935 
30.53069,17.15887l7.65843,-2.02692c-2.46413,1.0314 -5.02329,1.70264 -
7.65843,2.02692c7.15259,13.16728 19.01251,22.77237 
32.93468,26.5945c13.92217,3.82214 
28.70987,1.56322 41.03957,-6.25546c10.05858,15.86252 27.91113,24.19412 
45.81322,21.38742c17.90208,-2.8067 32.66954,-16.26563 
37.91438,-34.52742l1.82016,-10.20447c-
0.27254,3.46677 -0.86394,6.87508 -1.82016,10.20447c12.31329,8.07489 
27.80199,8.52994 
40.52443,1.18819c12.72244,-7.34175 20.6609,-21.34155 
20.77736,-36.58929l-4.56108,-22.7823l-
17.96776,-15.41455c13.89359,8.70317 22.6528,21.96329 
22.52884,38.19685c16.5202,0.17313 
30.55292,-13.98268 36.84976,-30.22897c6.29684,-16.24631 3.91486,-34.76801 
-6.2504,-
48.68089c4.21637,-10.35873 3.96622,-22.14172 
-0.68683,-32.29084c-4.65308,-10.14912 -13.23602,-
17.69244 -23.55914,-20.65356c-2.31018,-13.45141 -11.83276,-24.27162 
-24.41768,-27.81765c-
12.58492,-3.54603 -25.98557,0.82654 
-34.41142,11.25287l-5.11707,8.63186c1.30753,-3.12148 
3.01521,-6.03101 5.11707,-8.63186c-5.93959,-8.19432 -15.2556,-12.8181 
-24.96718,-12.51096z";

Original comment by Christia...@gmail.com on 20 Apr 2010 at 12:48

GoogleCodeExporter commented 9 years ago
lib_path["cylinder"] = "m299.0007,83.77844c0,18.28676 -66.70958,33.11111 -
149.00002,33.11111m149.00002,-33.11111l0,0c0,18.28676 -66.70958,33.11111 
-149.00002,33.11111c-
82.29041,0 -148.99997,-14.82432 -148.99997,-33.11111m0,0l0,0c0,-18.28674 
66.70956,-33.1111 
148.99997,-33.1111c82.29044,0 149.00002,14.82436 
149.00002,33.1111l0,132.44449c0,18.28674 -
66.70958,33.11105 -149.00002,33.11105c-82.29041,0 -148.99997,-14.82431 
-148.99997,-33.11105z";

Original comment by Christia...@gmail.com on 20 Apr 2010 at 1:05

GoogleCodeExporter commented 9 years ago
lib_path["arrow_u_turn"] = "m1.00059,299.00055l0,-167.62497l0,0c0,-72.00411 
58.37087,-130.37499 
130.375,-130.37499l0,0l0,0c34.57759,0 67.73898,13.7359 
92.18906,38.18595c24.45006,24.45005 
38.18593,57.61144 
38.18593,92.18904l0,18.625l37.24997,0l-74.49995,74.50002l-74.50002,-
74.50002l37.25,0l0,-18.625c0,-30.8589 -25.0161,-55.87498 
-55.87498,-55.87498l0,0l0,0c-30.85892,0 -
55.875,25.01608 -55.875,55.87498l0,167.62497z";

Original comment by Christia...@gmail.com on 20 Apr 2010 at 1:14

GoogleCodeExporter commented 9 years ago
lib_path["arrow_left_up"] = 
"m0.99865,224.5l74.50004,-74.5l0,37.25l111.74991,0l0,-111.75l-37.25,0l74.5,-
74.5l74.5,74.5l-37.25,0l0,186.25l-186.24989,0l0,37.25l-74.50005,-74.5z";

Original comment by Christia...@gmail.com on 20 Apr 2010 at 1:18

GoogleCodeExporter commented 9 years ago
lib_path["maximize"] = 
"m1.00037,150.34581l55.30305,-55.30267l0,27.65093l22.17356,0l0,-
44.21833l44.21825,0l0,-22.17357l-27.65095,0l55.30267,-55.30292l55.3035,55.30292l
-
27.65175,0l0,22.17357l44.21835,0l0,44.21833l22.17357,0l0,-27.65093l55.30345,55.3
0267l-
55.30345,55.3035l0,-27.65175l-22.17357,0l0,44.21834l-44.21835,0l0,22.17355l27.65
175,0l-
55.3035,55.30348l-55.30267,-55.30348l27.65095,0l0,-22.17355l-44.21825,0l0,-44.21
834l-
22.17356,0l0,27.65175l-55.30305,-55.3035z";

Original comment by Christia...@gmail.com on 20 Apr 2010 at 1:22

GoogleCodeExporter commented 9 years ago
lib_path["cross"] = "m0.99844,99.71339l98.71494,0l0,-
98.71495l101.26279,0l0,98.71495l98.71495,0l0,101.2628l-98.71495,0l0,98.71494l-10
1.26279,0l0,-
98.71494l-98.71494,0z";

Original comment by Christia...@gmail.com on 20 Apr 2010 at 1:26

GoogleCodeExporter commented 9 years ago
lib_path["plaque"] = "m-0.00197,49.94376l0,0c27.5829,0 49.94327,-22.36036 
49.94327,-
49.94327l199.76709,0l0,0c0,27.5829 22.36037,49.94327 
49.94325,49.94327l0,199.7671l0,0c-27.58289,0 -
49.94325,22.36034 -49.94325,49.94325l-199.76709,0c0,-27.58292 
-22.36037,-49.94325 -49.94327,-
49.94325z";

Original comment by Christia...@gmail.com on 20 Apr 2010 at 1:29

GoogleCodeExporter commented 9 years ago
lib_path["page"] = 
"m249.3298,298.99744l9.9335,-39.73413l39.73413,-9.93355l-49.66763,49.66768l-
248.33237,0l0,-298.00001l298.00001,0l0,248.33234";
lib_path["flowchart_preparation"] = "m1.00063,150.00006l59.58485,-
82.24058l178.75446,0l59.58505,82.24058l-59.58505,82.24086l-178.75446,0l-59.58485
,-82.24086z";
lib_path["flowchart_punched_tape"] = "m1.00047,30.80047l0,0c0,16.45808 
33.35479,29.8 
74.50001,29.8c41.1452,0 74.49998,-13.34192 74.49998,-29.8l0,0c0,-16.45809 
33.3548,-29.8 
74.50002,-29.8c41.14522,0 74.49998,13.34192 74.49998,29.8l0,238.4c0,-16.45808 
-33.35477,-
29.80002 -74.49998,-29.80002c-41.14522,0 -74.50002,13.34193 
-74.50002,29.80002c0,16.45807 -
33.35478,29.79999 -74.49998,29.79999c-41.14522,0 -74.50001,-13.34192 
-74.50001,-29.79999z";
lib_path["flowchart_data"] = 
"m1.00038,249.33351l59.60001,-198.66668l238.40001,0l-
59.60001,198.66668z";
lib_path["flowchart_connector_offpage"] = 
"m0.99775,0.99775l297.99984,0l0,238.39982l-
149.00002,59.60002l-148.99999,-59.60002l0.00017,-238.39982z";
lib_path["flowchart_card"] = 
"m1,60.5l59.5,-59.5l238.5,0l0,298l-298,0l0,-238.5z";
lib_path["flowchart_summing_junction"] = "m1.00045,150.00046l0,0c0,-82.29044 
66.70958,-149.00001 
149,-149.00001l0,0c39.51724,0 77.41599,15.69817 
105.35892,43.64109c27.9429,27.94291 
43.64108,65.84164 43.64108,105.35892l0,0c0,82.29044 -66.70958,149 
-149,149l0,0c-82.29045,0 -
149.00001,-66.70956 
-149.00001,-149zm43.6411,-105.35892l210.71783,210.71783m0,-210.71783l-
210.71783,210.71783m-43.64109,-105.35892l0,0c0,-82.29044 66.70958,-149.00001 
149,-
149.00001l0,0c39.51724,0 77.41599,15.69817 105.35892,43.6411c27.9429,27.94292 
43.64108,65.84164 
43.64108,105.35892l0,0c0,82.29042 -66.70958,148.99998 
-149,148.99998l0,0c-82.29044,0 -149,-
66.70956 -149,-148.99998z";

Original comment by Christia...@gmail.com on 20 Apr 2010 at 8:53

GoogleCodeExporter commented 9 years ago
lib_path["flowchart_or_junction"] = "m0.99865,149.9991l0,0c0,-82.29043 
66.70957,-149 149.00001,-
149l0,0c39.51724,0 77.41597,15.69817 105.3589,43.64109c27.94292,27.94292 
43.64107,65.84166 
43.64107,105.35891l0,0c0,82.29041 -66.70956,148.99998 
-148.99997,148.99998l0,0c-82.29044,0 -
149.00001,-66.70958 
-149.00001,-148.99998zm149.00001,-149l0,297.99998m-149.00001,-
148.99998l297.99998,0";
lib_path["flowchart_collate"] = 
"m0,1l299,0l-149.5,149l149.5,149l-299.00031,0l149.50031,-149l-149.5,-
149z";
lib_path["flowchart_sort"] = 
"m-0.0038,150.00102l299.00334,0m-299.00334,-0.00002l149.50209,-
150.00059l149.50131,150.00059l-149.50131,150.00018l-149.50209,-150.00018z";

Original comment by Christia...@gmail.com on 20 Apr 2010 at 9:17

GoogleCodeExporter commented 9 years ago
first package with the extension. unusable, but it contains all the data above

Original comment by Christia...@gmail.com on 20 Apr 2010 at 10:38

Attachments:

GoogleCodeExporter commented 9 years ago
50 paths. already a good-sized library.
flyout presentation of the paths could be done by a modified version of 
adeveria's svg-icon-loader...

Original comment by Christia...@gmail.com on 20 Apr 2010 at 11:59

Attachments:

GoogleCodeExporter commented 9 years ago
about 100 paths

Original comment by Christia...@gmail.com on 21 Apr 2010 at 10:36

Attachments:

GoogleCodeExporter commented 9 years ago
about 150 paths and corrected some of the previous ones. preview available 
thanks to adeveria.

Original comment by Christia...@gmail.com on 23 Apr 2010 at 12:09

Attachments:

GoogleCodeExporter commented 9 years ago
about 170 paths and the symbols from 
http://dryicons.com/free-icons/preview/symbolize-icons-set/

Original comment by Christia...@gmail.com on 23 Apr 2010 at 5:50

Attachments:

GoogleCodeExporter commented 9 years ago
some more paths

Original comment by Christia...@gmail.com on 8 May 2010 at 6:41

Attachments:

GoogleCodeExporter commented 9 years ago
Alright, a working extension for this has been made and included in r1627.

I've broken up the paths into individual files per category, and are loaded 
whenever one clicks on a category label (from the pathlib flyout). The load is 
only done once, they will appear instantly when selected after that.

I believe the usage and design is fairly intuitive, similar to the other 
flyouts, but allows clicking on categories, then clicking on icons for a better 
browsing experience. A single click on the library icon will just select the 
last selected icon.

Currently this extension just creates path elements, I think creating special 
objects with custom attributes (enter amount of polygon sides, for example) 
should be a new issue. However adding a "width" and "height" parameter for 
paths may be useful to add for this feature.

One known bug is that when drawing shapes and dragging from one side of the 
starting point to another causes the shape to incorrectly reposition...not a 
huge issue, but needs to be fixed.

What do people think of this implementation?

Original comment by adeve...@gmail.com on 9 Jul 2010 at 7:23

GoogleCodeExporter commented 9 years ago
I like very much what you have done so far with the paths data! Thank you.

There are several bugs: in firefox and chrome on macosx the position of the 
menu seems unnatural at the right of the presentation of the shapes. some paths 
do not fit the grid. i thought i provided all of them scaled correctly. am i 
wrong?

Original comment by Christia...@gmail.com on 9 Jul 2010 at 8:17

GoogleCodeExporter commented 9 years ago
I agree - this is awesome work as usual Alexis!  Very excited since it brings 
svg-edit pretty close to at par with Google Drawings :)

1) I agree that the categories on the right seems unnatural, though I think I 
see why you made that choice (much more convenient if you are in the category 
already to just choose the shape straight away.  The categories can't be 
horizontal tabs at the top of the flyout because there are too many categories.

One possibility is to make the flyout constant size and display the categories 
visually as tabs .  This might make it seem more natural.  But not sure.

2) Also, I think that the shape library button should either be above or below 
all the shape buttons (Rect, Ellipse, Path).  I would vote for below.

3) One final thing:  the icon for the shape library (lined cylinder).  I guess 
it's ok, but it's a little bit unintuitive that you *have* to choose a shape 
before that button can do anything.  But once you've chosen a shape, then it 
can be used to stamp things out.  What I'm saying is that I guess it's weird to 
me that the button operates in two different modes.  Google Drawings doesn't 
have to deal with this because it doesn't have a 'current drawing mode' 
concept.  You have to click the buttons for each thing you want to do.

The only thing I can think of to address this is to always make the user pick 
the shape when they click the button (and to never change the Shape Library 
button image).  This might seem like extra work for the user, but I'd argue 
that if the user wants to draw three octagons, they're intuitively going to 
want to draw one and then duplicate it two times.

Maybe not.

Anyway, if I think of anything else, I'll chime in.

Original comment by codedr...@gmail.com on 9 Jul 2010 at 8:28

GoogleCodeExporter commented 9 years ago
Thanks, glad you like! Thank you again for providing all the data! :)

I agree the positioning looks a bit odd and indeed unnatural, I'm certainly 
open for changing that. Still, it does make sense to me that the icons appear 
directly next the button that makes them appear, and thus the position of the 
categories made most sense around where it is. 

As for the paths not fitting, not sure...I didn't change any of the data myself 
(except the IDs a little), though I did notice a bug that I think was related 
to the version of SVG-edit you may have used when you made some of the paths. 
Can't remember the issue number, but it has to do with sub-paths appearing in 
the wrong place. They would import back into (that version of) SVG-edit looking 
correct, but any other viewer would show them wrong. There may be a fairly easy 
fix for that though, I'll look into it.

Original comment by adeve...@gmail.com on 9 Jul 2010 at 8:32

GoogleCodeExporter commented 9 years ago
Thanks Jeff, and excellent points. Will think about those too. Certainly agree 
about point #3, it's weird behaviour but the best I could come up with for now. 
Will have to experiment with that.

Original comment by adeve...@gmail.com on 9 Jul 2010 at 8:35

GoogleCodeExporter commented 9 years ago
Scratch my suggestion for #3, after playing with it, it feels quite natural to 
draw a series of shapes one after another.  It's particularly handy to draw a 
shape, change a color/stroke style then draw again without having to 
copy/paste, select, then change.

Another idea that occurred to me is maybe to show the currently selected shape 
as a smaller overlay on the Shape Library icon.  Or maybe the other way around 
(the 'star' icon is full-size for the button, but the 'shape library' icon is 
in a corner of the button).

Or maybe just ignore me altogether :)

Original comment by codedr...@gmail.com on 9 Jul 2010 at 8:37

GoogleCodeExporter commented 9 years ago
Heh, no, that occurred to me too, I'd be happy to try it!

Original comment by adeve...@gmail.com on 9 Jul 2010 at 8:38

GoogleCodeExporter commented 9 years ago
rather than having words for categories, why don't we have shapes? 
advantages:
-we don't have to translate those
-would be a natural progression from button to category to shape. the DB shape 
with the cylinder already is used to mean the root category
-if we want instead to use horizontal tabs, that will easily fit too

Original comment by Christia...@gmail.com on 10 Jul 2010 at 6:53

GoogleCodeExporter commented 9 years ago
I considered shapes, but was worried that it may become hard to pick a single 
shape to represent a category. It works for some things (like music), but less 
so for others, like electronics...anyone unfamiliar with any of the electronic 
symbols will have a hard time understanding what they are. Or take "objects", 
which object gets to represent all others? If we were to go with this, I'd 
still like the category names to be translated for the tooltips, which could be 
used in indentifying the category.

I'd also like to make it possible for people to include more categories, so 
there again a vertical list works better (could make it scrollable).

Original comment by adeve...@gmail.com on 12 Jul 2010 at 3:05

GoogleCodeExporter commented 9 years ago
Considering this fixed, any remaining issues can be filed separately.

Original comment by adeve...@gmail.com on 5 Oct 2010 at 10:37