Salome HOME
Issue #3058: Avoid recursive call of object redisplay
[modules/shaper.git] / src / SketchPlugin / plugin-Sketch.xml
1 <plugin>
2   <workbench id="Sketch">
3     <group id="Linear geometry">
4       <feature
5         id="Sketch"
6         nested="SketchPoint SketchIntersectionPoint SketchLine
7                 SketchCircle SketchMacroCircle SketchArc SketchMacroArc
8                 SketchEllipse SketchMacroEllipse SketchEllipticArc SketchMacroEllipticArc
9                 SketchRectangle
10                 SketchProjection
11                 SketchConstraintLength SketchConstraintRadius SketchConstraintDistance SketchConstraintDistanceHorizontal SketchConstraintDistanceVertical
12                 SketchConstraintParallel SketchConstraintPerpendicular
13                 SketchConstraintRigid SketchConstraintHorizontal SketchConstraintVertical
14                 SketchConstraintEqual SketchConstraintTangent
15                 SketchFillet SketchSplit SketchTrim
16                 SketchConstraintCoincidence SketchConstraintCoincidenceInternal
17                 SketchConstraintMirror SketchConstraintAngle
18                 SketchMultiRotation SketchMultiTranslation
19                 SketchConstraintCollinear SketchConstraintMiddle"
20         when_nested="accept abort"
21         title="Sketch"
22         tooltip="Create sketch"
23         icon="icons/Sketch/sketch.png"
24         helpfile="SketchPlugin.html">
25         <sketch-start-label id="External" geometrical_selection="true" title="Select a plane on which to create a sketch" tooltip="Select a plane on which to create a sketch">
26           <validator id="GeomValidators_Face" parameters="plane"/>
27         </sketch-start-label>
28         <!-- <label id="SolverDOF"/>  -->
29         <label id="SolverError" styleSheet="color : red; font : bold"/>
30         <validator id="SketchPlugin_SolverErrorValidator"/>
31       </feature>
32
33       <!-- SketchPoint -->
34       <feature id="SketchPoint" title="Point" tooltip="Create point" icon="icons/Sketch/point.png"
35                 helpfile="pointFeature.html">
36         <sketch-2dpoint_selector id="PointCoordinates" accept_expressions="0" title="Point" tooltip="Point coordinates"
37                                  enable_value="enable_by_preferences"/>
38         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0" change_visual_attributes="true"/>
39       </feature>
40
41       <!-- SketchLine -->
42       <feature id="SketchLine" title="Line" tooltip="Create line" icon="icons/Sketch/line.png"
43                helpfile="lineFeature.html">
44         <sketch-2dpoint_selector id="StartPoint" accept_expressions="0" title="Start point" tooltip="Start point coordinates"
45                                  enable_value="enable_by_preferences"/>
46         <sketch-2dpoint_selector id="EndPoint" accept_expressions="0" title="End point" tooltip="End point coordinates"
47                                  enable_value="enable_by_preferences"/>
48         <labelvalue id="LineLength" accept_expressions="0" label="Length" default="computed" icon="icons/Sketch/distance_value.png"
49                      tooltip="Line length" obligatory="0" enable_value="false"/>
50         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0" change_visual_attributes="true"/>
51         <validator id="GeomValidators_Different" parameters="StartPoint,EndPoint"/>
52       </feature>
53     </group>
54     <group id="Conical geometry">
55       <!-- SketchCircle is a hidden feature. It is created inside SketchMacroCircle. -->
56       <feature id="SketchCircle"
57                title="Circle"
58                tooltip="Create circle"
59                icon="icons/Sketch/circle.png"
60                internal="1">
61         <sketch-2dpoint_selector id="circle_center"
62                                  title="Center"
63                                  tooltip="Center coordinates"
64                                  accept_expressions="0"
65                                  enable_value="enable_by_preferences"/>
66         <labelvalue id="circle_radius"
67                     icon="icons/Sketch/radius.png"
68                     label="Radius"
69                     tooltip="Set radius"
70                     default="computed"
71                     accept_expressions="0"
72                     enable_value="enable_by_preferences">
73         </labelvalue>
74         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0" change_visual_attributes="true"/>
75       </feature>
76       <!-- SketchMacroCircle -->
77       <feature id="SketchMacroCircle"
78                icon="icons/Sketch/circle.png"
79                title="Circle"
80                tooltip="Create circle"
81                helpfile="circleFeature.html">
82         <toolbox id="circle_type" modified_in_edit="edit_circle_type">
83           <box id="circle_type_by_center_and_passed_points"
84                icon="icons/Sketch/circle_pt_rad_32x32.png"
85                title="Center and passed points">
86             <sketch-2dpoint_selector id="center_point"
87                                      reference_attribute="center_point_ref"
88                                      title="Center point"
89                                      tooltip="Center point coordinates"
90                                      accept_expressions="0"
91                                      enable_value="enable_by_preferences"/>
92             <sketch-2dpoint_selector id="passed_point"
93                                      reference_attribute="passed_point_ref"
94                                      title="Passed point"
95                                      tooltip="Passed point coordinates"
96                                      accept_expressions="0"
97                                      enable_value="enable_by_preferences">
98               <validator id="SketchPlugin_CirclePassedPointValidator"/>
99             </sketch-2dpoint_selector>
100             <validator id="GeomValidators_Different" parameters="center_point_ref,passed_point_ref"/>
101           </box>
102           <box id="circle_type_by_three_points"
103                icon="icons/Sketch/circle_3pt_32x32.png"
104                title="Three points">
105             <sketch-2dpoint_selector id="first_point"
106                                      reference_attribute="first_point_ref"
107                                      title="First point"
108                                      tooltip="First point"
109                                      accept_expressions="0"
110                                      enable_value="enable_by_preferences"/>
111             <sketch-2dpoint_selector id="second_point"
112                                      reference_attribute="second_point_ref"
113                                      title="Second point"
114                                      tooltip="Second point"
115                                      accept_expressions="0"
116                                      enable_value="enable_by_preferences">
117               <validator id="SketchPlugin_DifferentReference" parameters="first_point_ref,second_point_ref"/>
118             </sketch-2dpoint_selector>
119             <sketch-2dpoint_selector id="third_point"
120                                      reference_attribute="third_point_ref"
121                                      title="Third point"
122                                      tooltip="Third point"
123                                      accept_expressions="0"
124                                      enable_value="enable_by_preferences">
125               <validator id="SketchPlugin_DifferentReference" parameters="first_point_ref,second_point_ref,third_point_ref"/>
126               <validator id="SketchPlugin_ThirdPointValidator" parameters="third_point_ref"/>
127             </sketch-2dpoint_selector>
128             <validator id="GeomValidators_Different" parameters="first_point_ref,second_point_ref,third_point_ref"/>
129           </box>
130         </toolbox>
131         <labelvalue id="circle_radius"
132                     icon="icons/Sketch/radius.png"
133                     label="Radius"
134                     tooltip="Set radius"
135                     default="computed"
136                     accept_expressions="0"
137                     obligatory="0"
138                     enable_value="enable_by_preferences">
139         </labelvalue>
140         <boolvalue id="Auxiliary"
141                    tooltip="Construction element"
142                    label="Auxiliary"
143                    default="false"
144                    obligatory="0"
145                    change_visual_attributes="true"/>
146       </feature>
147
148       <!-- SketchArc -->
149       <feature id="SketchArc"
150                icon="icons/Sketch/arc.png"
151                title="Arc"
152                tooltip="Create arc"
153                internal="1">
154         <sketch-2dpoint_selector id="center_point"
155                                  title="Center"
156                                  tooltip="Center of a circle"
157                                  accept_expressions="0"
158                                  enable_value="enable_by_preferences"/>
159         <sketch-2dpoint_selector id="start_point"
160                                  title="Start point"
161                                  tooltip="Start point"
162                                  accept_expressions="0"
163                                  enable_value="enable_by_preferences"/>
164         <sketch-2dpoint_selector id="end_point"
165                                  title="End point"
166                                  tooltip="End point"
167                                  accept_expressions="0"
168                                  enable_value="enable_by_preferences"/>
169         <validator id="GeomValidators_Different" parameters="center_point,start_point,end_point"/>
170         <labelvalue id="radius"
171                     icon="icons/Sketch/radius.png"
172                     label="Radius"
173                     tooltip="Set radius"
174                     accept_expressions="0"
175                     min="0"
176                     default="0"
177                     obligatory="0"
178                     enable_value="enable_by_preferences">
179         </labelvalue>
180         <labelvalue id="angle"
181                     icon="icons/Sketch/angle.png"
182                     label="Angle"
183                     tooltip="Set angle"
184                     default="0"
185                     use_reset="false"
186                     obligatory="0"
187                     enable_value="enable_by_preferences"/>
188         <boolvalue id="Auxiliary"
189                    label="Auxiliary"
190                    tooltip="Construction element"
191                    default="false"
192                    obligatory="0"
193                    change_visual_attributes="true"/>
194       </feature>
195
196       <!-- SketchMacroArc -->
197       <feature
198         id="SketchMacroArc"
199         title="Arc"
200         tooltip="Create arc"
201         icon="icons/Sketch/arc.png"
202         helpfile="arcFeature.html">
203         <toolbox id="arc_type" modified_in_edit="edit_arc_type">
204           <box id="by_center_and_points"
205                icon="icons/Sketch/arc_base_32x32.png"
206                title="Center and two points">
207             <sketch-2dpoint_selector id="center_point"
208                                      reference_attribute="center_point_ref"
209                                      title="Center point"
210                                      tooltip="Center of a circle"
211                                      accept_expressions="0"
212                                      enable_value="enable_by_preferences" />
213             <sketch-2dpoint_selector id="start_point_1"
214                                      reference_attribute="start_point_ref"
215                                      title="Start point"
216                                      tooltip="Start point"
217                                      accept_expressions="0"
218                                      enable_value="enable_by_preferences"/>
219             <sketch-2dpoint_selector id="end_point_1"
220                                      reference_attribute="end_point_ref"
221                                      title="End point"
222                                      tooltip="End point"
223                                      accept_expressions="0"
224                                      enable_value="enable_by_preferences">
225               <validator id="SketchPlugin_ArcEndPointValidator" parameters="end_point_ref"/>
226               <validator id="SketchPlugin_ArcEndPointIntersectionValidator" parameters="end_point_ref"/>
227             </sketch-2dpoint_selector>
228             <validator id="GeomValidators_Different" parameters="center_point,start_point_1,end_point_1"/>
229           </box>
230           <box id="by_three_points"
231                icon="icons/Sketch/arc_3pt_32x32.png"
232                title="Three points on arc">
233             <sketch-2dpoint_selector id="start_point_2"
234                                      reference_attribute="start_point_ref"
235                                      title="Start point"
236                                      tooltip="Start point"
237                                      accept_expressions="0"
238                                      enable_value="enable_by_preferences"/>
239             <sketch-2dpoint_selector id="end_point_2"
240                                      reference_attribute="end_point_ref"
241                                      title="End point"
242                                      tooltip="End point"
243                                      accept_expressions="0"
244                                      enable_value="enable_by_preferences">
245               <validator id="GeomValidators_Different" parameters="start_point_2,end_point_2"/>
246               <validator id="SketchPlugin_DifferentPointReference" parameters="start_point_ref,end_point_ref"/>
247             </sketch-2dpoint_selector>
248             <sketch-2dpoint_selector id="passed_point"
249                                      reference_attribute="passed_point_ref"
250                                      title="Passed point"
251                                      tooltip="Passed point"
252                                      accept_expressions="0"
253                                      enable_value="enable_by_preferences">
254               <validator id="SketchPlugin_DifferentReference" parameters="start_point_ref,end_point_ref,passed_point_ref"/>
255               <validator id="SketchPlugin_ThirdPointValidator" parameters="passed_point_ref"/>
256             </sketch-2dpoint_selector>
257             <validator id="GeomValidators_Different" parameters="start_point_2,end_point_2,passed_point"/>
258           </box>
259           <box id="by_tangent_edge"
260                icon="icons/Sketch/arc_tang_32x32.png"
261                title="Tangent with edge">
262             <sketch_shape_selector id="tangent_point"
263                                    label="Tangent point"
264                                    tooltip="Select point on line"
265                                    shape_types="vertex">
266               <validator id="SketchPlugin_ArcTangentPoint"/>
267             </sketch_shape_selector>
268             <sketch-2dpoint_selector id="end_point_3"
269                                      reference_attribute="end_point_ref"
270                                      title="End point"
271                                      tooltip="End point"
272                                      accept_expressions="0"
273                                      enable_value="enable_by_preferences">
274               <validator id="SketchPlugin_ArcEndPointValidator" parameters="end_point_ref"/>
275             </sketch-2dpoint_selector>
276           </box>
277           <box id="by_transversal_line"
278                icon="icons/Sketch/arc_perp_32x32.png"
279                title="Perpendicular to line">
280             <sketch_shape_selector id="tangent_point"
281                                    label="Point on the perpendicular line"
282                                    tooltip="Select point on line"
283                                    shape_types="vertex">
284               <validator id="SketchPlugin_ArcTransversalPoint"/>
285             </sketch_shape_selector>
286             <sketch-2dpoint_selector id="end_point_3"
287                                      reference_attribute="end_point_ref"
288                                      title="End point"
289                                      tooltip="End point"
290                                      accept_expressions="0"
291                                      enable_value="enable_by_preferences">
292               <validator id="SketchPlugin_ArcEndPointValidator" parameters="end_point_ref"/>
293             </sketch-2dpoint_selector>
294           </box>
295         </toolbox>
296         <labelvalue id="radius"
297                     icon="icons/Sketch/radius.png"
298                     label="Radius"
299                     tooltip="Set radius"
300                     accept_expressions="0"
301                     min="0"
302                     default="0"
303                     obligatory="0"
304                     enable_value="enable_by_preferences">
305         </labelvalue>
306         <labelvalue id="angle"
307                     icon="icons/Sketch/angle.png"
308                     label="Angle"
309                     tooltip="Set angle"
310                     default="0"
311                     use_reset="false"
312                     obligatory="0"
313                     enable_value="enable_by_preferences"/>
314         <boolvalue id="Auxiliary"
315                    label="Auxiliary"
316                    tooltip="Construction element"
317                    default="false"
318                    obligatory="0"
319                    change_visual_attributes="true"/>
320       </feature>
321
322       <!--  SketchFillet  -->
323       <feature id="SketchFillet"
324                title="Fillet"
325                tooltip="Create constraint defining fillet between two connected segments"
326                icon="icons/Sketch/fillet.png"
327                helpfile="filletFeature.html">
328         <sketch_shape_selector id="fillet_point"
329                                label="Point"
330                                tooltip="Select point for fillet (should be shared by two entities only)"
331                                shape_types="vertex">
332           <validator id="SketchPlugin_FilletVertexValidator"/>
333         </sketch_shape_selector>
334         <!--<validator id="PartSet_FilletSelection"/>-->
335       </feature>
336
337       <!-- SketchEllipse is a hidden feature. It is created inside SketchMacroEllipse. -->
338       <feature id="SketchEllipse"
339                title="Ellipse"
340                tooltip="Create ellipse"
341                icon="icons/Sketch/ellipse.png"
342                internal="1">
343         <sketch-2dpoint_selector id="ellipse_center"
344                                  title="Center"
345                                  tooltip="Center coordinates"
346                                  accept_expressions="0"
347                                  enable_value="enable_by_preferences"/>
348         <sketch-2dpoint_selector id="ellipse_first_focus"
349                                  title="First focus"
350                                  tooltip="Focus coordinates"
351                                  accept_expressions="0"
352                                  enable_value="enable_by_preferences"/>
353         <sketch-2dpoint_selector id="ellipse_second_focus"
354                                  title="Second focus"
355                                  tooltip="Focus coordinates"
356                                  accept_expressions="0"
357                                  enable_value="enable_by_preferences"/>
358         <sketch-2dpoint_selector id="ellipse_major_axis_start_point"
359                                  title="Major axis start"
360                                  tooltip="Coordinates of point on negative direction of major axis"
361                                  accept_expressions="0"
362                                  enable_value="enable_by_preferences"/>
363         <sketch-2dpoint_selector id="ellipse_major_axis_end_point"
364                                  title="Major axis end"
365                                  tooltip="Coordinates of point on positive direction of major axis"
366                                  accept_expressions="0"
367                                  enable_value="enable_by_preferences"/>
368         <sketch-2dpoint_selector id="ellipse_minor_axis_start_point"
369                                  title="Minor axis start"
370                                  tooltip="Coordinates of point on negative direction of minor axis"
371                                  accept_expressions="0"
372                                  enable_value="enable_by_preferences"/>
373         <sketch-2dpoint_selector id="ellipse_minor_axis_end_point"
374                                  title="Minor axis end"
375                                  tooltip="Coordinates of point on positive direction of minor axis"
376                                  accept_expressions="0"
377                                  enable_value="enable_by_preferences"/>
378         <labelvalue id="ellipse_major_radius"
379                     icon="icons/Sketch/radius_major.png"
380                     label="Major radius"
381                     tooltip="Set major radius"
382                     default="computed"
383                     accept_expressions="0"
384                     enable_value="enable_by_preferences">
385         </labelvalue>
386         <labelvalue id="ellipse_minor_radius"
387                     icon="icons/Sketch/radius_minor.png"
388                     label="Minor radius"
389                     tooltip="Set minor radius"
390                     default="computed"
391                     accept_expressions="0"
392                     enable_value="enable_by_preferences">
393         </labelvalue>
394         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0" change_visual_attributes="true"/>
395       </feature>
396       <!-- SketchMacroEllipse -->
397       <feature id="SketchMacroEllipse"
398                icon="icons/Sketch/ellipse.png"
399                title="Ellipse"
400                tooltip="Create ellipse"
401                helpfile="ellipseFeature.html">
402         <toolbox id="ellipse_type" modified_in_edit="edit_ellipse_type">
403           <box id="by_center_axis_point"
404                icon="icons/Sketch/ellipse_cent_rad_32x32.png"
405                title="Center, major semi-axis and passing point">
406             <sketch-2dpoint_selector id="first_point"
407                                      reference_attribute="first_point_ref"
408                                      title="Center point"
409                                      tooltip="Center point coordinates"
410                                      accept_expressions="0"
411                                      enable_value="enable_by_preferences"/>
412             <sketch-2dpoint_selector id="second_point"
413                                      reference_attribute="second_point_ref"
414                                      title="Major axis point"
415                                      tooltip="Major axis point coordinates"
416                                      accept_expressions="0"
417                                      enable_value="enable_by_preferences"/>
418             <sketch-2dpoint_selector id="passed_point"
419                                      reference_attribute="passed_point_ref"
420                                      title="Passed point"
421                                      tooltip="Passed point coordinates"
422                                      accept_expressions="0"
423                                      enable_value="enable_by_preferences"/>
424           </box>
425           <box id="by_major_axis_and_point"
426                icon="icons/Sketch/ellipse_axes_32x32.png"
427                title="Major axis and passing point">
428             <sketch-2dpoint_selector id="first_point_1"
429                                      reference_attribute="first_point_ref_1"
430                                      title="Major axis start point"
431                                      tooltip="Major axis start point coordinates"
432                                      accept_expressions="0"
433                                      enable_value="enable_by_preferences"/>
434             <sketch-2dpoint_selector id="second_point_1"
435                                      reference_attribute="second_point_ref_1"
436                                      title="Major axis end point"
437                                      tooltip="Major axis end point coordinates"
438                                      accept_expressions="0"
439                                      enable_value="enable_by_preferences"/>
440             <sketch-2dpoint_selector id="passed_point_1"
441                                      reference_attribute="passed_point_ref_1"
442                                      title="Passed point"
443                                      tooltip="Passed point coordinates"
444                                      accept_expressions="0"
445                                      enable_value="enable_by_preferences"/>
446           </box>
447         </toolbox>
448         <labelvalue id="major_radius"
449                     icon="icons/Sketch/radius_major.png"
450                     label="Major radius"
451                     tooltip="Set major radius"
452                     default="computed"
453                     accept_expressions="0"
454                     obligatory="0"
455                     enable_value="enable_by_preferences">
456         </labelvalue>
457         <labelvalue id="minor_radius"
458                     icon="icons/Sketch/radius_minor.png"
459                     label="Minor radius"
460                     tooltip="Set minor radius"
461                     default="computed"
462                     accept_expressions="0"
463                     obligatory="0"
464                     enable_value="enable_by_preferences">
465         </labelvalue>
466         <boolvalue id="Auxiliary"
467                    tooltip="Construction element"
468                    label="Auxiliary"
469                    default="false"
470                    obligatory="0"
471                    change_visual_attributes="true"/>
472       </feature>
473
474       <!-- SketchEllipticArc is a hidden feature. It is created inside SketchMacroEllipse. -->
475       <feature id="SketchEllipticArc"
476                title="Elliptic arc"
477                tooltip="Create elliptic arc"
478                icon="icons/Sketch/elliptic_arc.png"
479                internal="1">
480         <sketch-2dpoint_selector id="ellipse_center"
481                                  title="Center"
482                                  tooltip="Center coordinates"
483                                  accept_expressions="0"
484                                  enable_value="enable_by_preferences"/>
485         <sketch-2dpoint_selector id="ellipse_first_focus"
486                                  title="First focus"
487                                  tooltip="Focus coordinates"
488                                  accept_expressions="0"
489                                  enable_value="enable_by_preferences"/>
490         <sketch-2dpoint_selector id="ellipse_second_focus"
491                                  title="Second focus"
492                                  tooltip="Focus coordinates"
493                                  accept_expressions="0"
494                                  enable_value="enable_by_preferences"/>
495         <sketch-2dpoint_selector id="ellipse_major_axis_start_point"
496                                  title="Major axis start"
497                                  tooltip="Coordinates of point on negative direction of major axis"
498                                  accept_expressions="0"
499                                  enable_value="enable_by_preferences"/>
500         <sketch-2dpoint_selector id="ellipse_major_axis_end_point"
501                                  title="Major axis end"
502                                  tooltip="Coordinates of point on positive direction of major axis"
503                                  accept_expressions="0"
504                                  enable_value="enable_by_preferences"/>
505         <sketch-2dpoint_selector id="ellipse_minor_axis_start_point"
506                                  title="Minor axis start"
507                                  tooltip="Coordinates of point on negative direction of minor axis"
508                                  accept_expressions="0"
509                                  enable_value="enable_by_preferences"/>
510         <sketch-2dpoint_selector id="ellipse_minor_axis_end_point"
511                                  title="Minor axis end"
512                                  tooltip="Coordinates of point on positive direction of minor axis"
513                                  accept_expressions="0"
514                                  enable_value="enable_by_preferences"/>
515         <sketch-2dpoint_selector id="start_point"
516                                  title="Start point"
517                                  tooltip="Arc start point coordinates"
518                                  accept_expressions="0"
519                                  enable_value="enable_by_preferences"/>
520         <sketch-2dpoint_selector id="end_point"
521                                  title="End point"
522                                  tooltip="Arc end point coordinates"
523                                  accept_expressions="0"
524                                  enable_value="enable_by_preferences"/>
525         <labelvalue id="ellipse_major_radius"
526                     icon="icons/Sketch/radius_major.png"
527                     label="Major radius"
528                     tooltip="Set major radius"
529                     default="computed"
530                     accept_expressions="0"
531                     enable_value="enable_by_preferences">
532         </labelvalue>
533         <labelvalue id="ellipse_minor_radius"
534                     icon="icons/Sketch/radius_minor.png"
535                     label="Minor radius"
536                     tooltip="Set minor radius"
537                     default="computed"
538                     accept_expressions="0"
539                     enable_value="enable_by_preferences">
540         </labelvalue>
541         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0" change_visual_attributes="true"/>
542       </feature>
543       <!-- SketchMacroEllipticArc -->
544       <feature id="SketchMacroEllipticArc"
545                icon="icons/Sketch/elliptic_arc.png"
546                title="Elliptic arc"
547                tooltip="Create elliptic arc"
548                helpfile="ellipseFeature.html">
549         <sketch-2dpoint_selector id="center"
550                                  reference_attribute="center_ref"
551                                  title="Center point"
552                                  tooltip="Center point coordinates"
553                                  accept_expressions="0"
554                                  enable_value="enable_by_preferences"/>
555         <sketch-2dpoint_selector id="major_axis_point"
556                                  reference_attribute="major_axis_point_ref"
557                                  title="Major axis point"
558                                  tooltip="Major axis point coordinates"
559                                  accept_expressions="0"
560                                  enable_value="enable_by_preferences"/>
561         <sketch-2dpoint_selector id="start_point"
562                                  reference_attribute="start_point_ref"
563                                  title="Start point"
564                                  tooltip="Arc start point coordinates"
565                                  accept_expressions="0"
566                                  enable_value="enable_by_preferences"/>
567         <sketch-2dpoint_selector id="end_point"
568                                  reference_attribute="end_point_ref"
569                                  title="End point"
570                                  tooltip="Arc end point coordinates"
571                                  accept_expressions="0"
572                                  enable_value="enable_by_preferences"/>
573         <labelvalue id="major_radius"
574                     icon="icons/Sketch/radius_major.png"
575                     label="Major radius"
576                     tooltip="Set major radius"
577                     default="computed"
578                     accept_expressions="0"
579                     obligatory="0"
580                     enable_value="enable_by_preferences">
581         </labelvalue>
582         <labelvalue id="minor_radius"
583                     icon="icons/Sketch/radius_minor.png"
584                     label="Minor radius"
585                     tooltip="Set minor radius"
586                     default="computed"
587                     accept_expressions="0"
588                     obligatory="0"
589                     enable_value="enable_by_preferences">
590         </labelvalue>
591         <boolvalue id="Auxiliary"
592                    tooltip="Construction element"
593                    label="Auxiliary"
594                    default="false"
595                    obligatory="0"
596                    change_visual_attributes="true"/>
597       </feature>
598     </group>
599
600     <group id="Segmentation">
601       <!--  SketchSplit  -->
602       <feature id="SketchSplit" title="Split"
603                tooltip="Cut selected segment arc or circle on existing coincident points"
604                icon="icons/Sketch/split.png"
605                helpfile="splitFeature.html">
606         <sketch_feature_point_selector
607             id="SelectedObject"
608             selection_attributes="SelectedObject SelectedPoint PreviewObject PreviewPoint"
609             label="Segment"
610             tooltip="Select segment for split"
611             shape_types="edge"
612             use_external="false">
613           <validator id="SketchPlugin_SplitValidator"/>
614         </sketch_feature_point_selector>
615         <validator id="PartSet_SplitSelection"/>
616       </feature>
617       <!--  SketchTrim  -->
618       <feature id="SketchTrim" title="Trim"
619                tooltip="Trim selected segment arc or circle on intersection points nearest to the graphic selection"
620                icon="icons/Sketch/trim.png"
621                helpfile="trimFeature.html">
622         <sketch_feature_point_selector
623             id="SelectedObject"
624             selection_attributes="SelectedObject SelectedPoint PreviewObject PreviewPoint"
625             label="Segment"
626             tooltip="Select segment for trim"
627             shape_types="edge"
628             use_external="false">
629           <validator id="SketchPlugin_TrimValidator"/>
630         </sketch_feature_point_selector>
631         <validator id="PartSet_SplitSelection"/>
632       </feature>
633     </group>
634
635     <group id="Projection">
636       <!-- Projected feature -->
637       <feature
638         id="SketchProjection"
639         title="Projection"
640         tooltip="Project feature onto sketch plane"
641         icon="icons/Sketch/projection.png"
642         helpfile="projectionFeature.html">
643         <sketch_shape_selector
644               id="ExternalFeature"
645               label="Object"
646               tooltip="Select external edge or vertex."
647               shape_types="edge vertex"
648               use_external="true"
649               can_create_external="false"
650               use_sketch_plane="false">
651           <validator id="SketchPlugin_ProjectionValidator"/>
652         </sketch_shape_selector>
653         <boolvalue id="IncludeToResult" label="Include into the sketch result" default="true" tooltip="Include projected feature into the sketch result"
654                    change_visual_attributes="true"/>
655         <validator id="PartSet_ProjectionSelection"/>
656       </feature>
657
658       <!-- Intersection Point -->
659       <feature
660         id="SketchIntersectionPoint"
661         title="Intersection"
662         tooltip="Intersect edge with sketch plane"
663         icon="icons/Sketch/intersection.png"
664         helpfile="intersectionFeature.html">
665         <sketch_shape_selector
666               id="ExternalFeature"
667               label="Object"
668               tooltip="Select external edge."
669               shape_types="edge"
670               use_external="true"
671               can_create_external="false"
672               use_sketch_plane="false">
673           <validator id="SketchPlugin_IntersectionValidator"/>
674         </sketch_shape_selector>
675         <boolvalue id="IncludeToResult" label="Include into the sketch result" default="true" tooltip="Include projected feature into the sketch result"
676                    change_visual_attributes="true"/>
677         <validator id="PartSet_IntersectionSelection"/>
678       </feature>
679     </group>
680
681     <group id="Replication">
682       <!--  SketchConstraintMirror  -->
683       <feature
684         id="SketchConstraintMirror"
685         title="Mirror copy" icon="icons/Sketch/mirror.png"
686         tooltip="Create constraint, mirroring group of objects"
687         helpfile="mirrorFeature.html">
688         <sketch_shape_selector id="ConstraintEntityA"
689             label="Mirror line" tooltip="Select mirror line" shape_types="edge">
690           <validator id="GeomValidators_ShapeType" parameters="line"/>
691           <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityC"/>
692         </sketch_shape_selector>
693         <sketch_multi_selector id="ConstraintMirrorList"
694             label="Segments"
695             tooltip="Select list of objects to be mirrored"
696             shape_types="Edges"
697             use_external="true"
698             greed ="true">
699           <validator id="SketchPlugin_MirrorAttr" />
700         </sketch_multi_selector>
701         <validator id="PartSet_MultyTranslationSelection" />
702       </feature>
703
704       <!--  SketchMultiTranslation  -->
705       <feature
706         id="SketchMultiTranslation"
707         title="Linear copy" icon="icons/Sketch/translate.png"
708         tooltip="Copy objects and move"
709         helpfile="translationFeature.html">
710         <sketch_multi_selector id="MultiTranslationList"
711             label="Segments"
712             tooltip="Select list of objects to be translated"
713             shape_types="Edges"
714             use_external="true"
715             greed ="true">
716           <validator id="SketchPlugin_CopyValidator" />
717         </sketch_multi_selector>
718         <toolbox id="ValueType">
719           <box id="SingleValue" title="Single value" icon="icons/Sketch/translate_32x32.png">
720             <groupbox title="Direction">
721               <sketch_shape_selector
722                     id="MultiTranslationStartPoint"
723                     label="Start point"
724                     tooltip="Start point of translation"
725                     shape_types="vertex">
726                 <validator id="PartSet_DifferentObjects"/>
727                 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
728                 <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
729               </sketch_shape_selector>
730               <sketch_shape_selector
731                     id="MultiTranslationEndPoint"
732                     label="End point"
733                     tooltip="Final point of translation"
734                     shape_types="vertex">
735                 <validator id="PartSet_DifferentObjects"/>
736                 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
737                 <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
738               </sketch_shape_selector>
739             </groupbox>
740           </box>
741           <box id="FullValue" title="Full value" icon="icons/Sketch/translate_full_32x32.png">
742             <groupbox title="Direction">
743               <sketch_shape_selector
744                     id="MultiTranslationStartPoint"
745                     label="Start point"
746                     tooltip="Start point of translation"
747                     shape_types="vertex">
748                 <validator id="PartSet_DifferentObjects"/>
749                 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
750                 <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
751               </sketch_shape_selector>
752               <sketch_shape_selector
753                     id="MultiTranslationEndPoint"
754                     label="End point"
755                     tooltip="Final point of translation"
756                     shape_types="vertex">
757                 <validator id="PartSet_DifferentObjects"/>
758                 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
759                 <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
760               </sketch_shape_selector>
761             </groupbox>
762           </box>
763         </toolbox>
764         <integervalue id="MultiTranslationObjects"
765             label="Total number of objects"
766             tooltip="Total number of objects"
767             default="2" min="2" use_reset="false">
768           <validator id="GeomValidators_Positive" parameters="1"/>
769         </integervalue>
770         <validator id="PartSet_MultyTranslationSelection" />
771       </feature>
772
773       <!--  SketchMultiRotation  -->
774       <feature
775         id="SketchMultiRotation"
776         title="Angular copy" icon="icons/Sketch/rotate.png"
777         tooltip="Copy objects and rotate"
778         helpfile="rotationFeature.html">
779         <sketch_multi_selector id="MultiRotationList"
780             label="Segments"
781             tooltip="Select list of objects to be rotated"
782             shape_types="Edges"
783             use_external="true"
784             greed ="true">
785           <validator id="SketchPlugin_CopyValidator" />
786         </sketch_multi_selector>
787         <sketch_shape_selector
788               id="MultiRotationCenter"
789               label="Center of rotation"
790               tooltip="Center of rotation"
791               shape_types="vertex">
792           <validator id="GeomValidators_ShapeType" parameters="vertex"/>
793           <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
794         </sketch_shape_selector>
795         <toolbox id="AngleType">
796           <box id="FullAngle" title="Full angle" icon="icons/Sketch/angle_up_full_32x32.png">
797             <doublevalue id="MultiRotationAngle"
798                          label="Angle"
799                          icon="icons/Sketch/angle.png"
800                          tooltip="Rotation angle"
801                          default="360" min="0" max="360"
802                          use_reset="false">
803               <validator id="SketchPlugin_MultiRotationAngleValidator" />
804             </doublevalue>
805             <boolvalue id="MultiRotationReversed"
806                        label="Reversed"
807                        tooltip="Reverse angular copy"
808                        default="false"
809                        obligatory="0"/>
810           </box>
811           <box id="SingleAngle" title="Single angle" icon="icons/Sketch/angle_up_32x32.png">
812             <doublevalue id="MultiRotationAngle"
813                          label="Angle"
814                          icon="icons/Sketch/angle.png"
815                          tooltip="Rotation angle"
816                          default="90" min="0" max="360"
817                          use_reset="false">
818               <validator id="SketchPlugin_MultiRotationAngleValidator" />
819             </doublevalue>
820             <boolvalue id="MultiRotationReversed"
821                        label="Reversed"
822                        tooltip="Reverse angular copy"
823                        default="false"
824                        obligatory="0"/>
825           </box>
826         </toolbox>
827         <integervalue id="MultiRotationObjects"
828             label="Total number of objects"
829             tooltip="Total number of objects"
830             default="4" min="2" use_reset="false">
831           <validator id="GeomValidators_Positive" parameters="1"/>
832         </integervalue>
833         <validator id="PartSet_MultyTranslationSelection" />
834       </feature>
835     </group>
836
837     <group id="Dimensional constraints">
838       <!--  SketchConstraintDistance  -->
839       <feature
840         id="SketchConstraintDistance"
841         title="Distance"
842         tooltip="Set fixed distance from a point to an object"
843         icon="icons/Sketch/distance.png"
844         helpfile="distanceFeature.html">
845         <label title="Select objects for distance definition. Following objects can be accepted: point, line or arc end point, center of circle or arc."/>
846         <sketch_shape_selector
847               id="ConstraintEntityA"
848               label="First object"
849               tooltip="Select point, line end point, line, center of circle or arc."
850               shape_types="edge vertex">
851           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
852           <validator id="PartSet_DifferentObjects"/>
853           <validator id="GeomValidators_ShapeType" parameters="vertex,line"/>
854           <validator id="PartSet_DifferentPoints" parameters="ConstraintEntityB"/>
855         </sketch_shape_selector>
856         <sketch_shape_selector
857           id="ConstraintEntityB"
858           label="Second object"
859           tooltip="Select point, line end point, line, center of circle or arc."
860           shape_types="edge vertex">
861           <validator id="PartSet_DifferentObjects"/>
862           <validator id="SketchPlugin_DistanceAttr" parameters="ConstraintEntityA"/>
863           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
864           <validator id="GeomValidators_ShapeType" parameters="vertex,line"/>
865           <validator id="PartSet_DifferentPoints" parameters="ConstraintEntityA"/>
866         </sketch_shape_selector>
867         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
868
869         <doublevalue_editor label="Value" tooltip="Distance" id="ConstraintValue" default="computed" min="0">
870           <validator id="GeomValidators_Positive"/>
871         </doublevalue_editor>
872
873         <module_choice id="LocationType"
874           widget_type="radiobuttons"
875           buttons_dir="horizontal"
876           label="Text location"
877           tooltip="Relative location of the text"
878           string_list="Left Automatic Right"
879           icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
880           default="1"
881           />
882
883         <boolvalue id="SignedDistance" label="Keep orientation" default="true" tooltip="Keep distance orientation" obligatory="0"/>
884         <validator id="PartSet_DistanceSelection"/>
885       </feature>
886
887       <!--  SketchConstraintDistanceHorizontal  -->
888       <feature
889         id="SketchConstraintDistanceHorizontal"
890         title="Horizontal Distance"
891         tooltip="Set horizontal distance between two points"
892         icon="icons/Sketch/distance_h.png"
893         helpfile="horizontalDistFeature.html">
894         <label title="Select points for distance definition."/>
895         <sketch_shape_selector
896               id="ConstraintEntityA"
897               label="First point"
898               tooltip="Select point."
899               shape_types="vertex">
900           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
901           <validator id="PartSet_DifferentObjects"/>
902           <validator id="GeomValidators_ShapeType" parameters="vertex"/>
903         </sketch_shape_selector>
904         <sketch_shape_selector
905           id="ConstraintEntityB"
906           label="Second point"
907           tooltip="Select point."
908           shape_types="vertex">
909           <validator id="PartSet_DifferentObjects"/>
910           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
911           <validator id="GeomValidators_ShapeType" parameters="vertex"/>
912         </sketch_shape_selector>
913         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
914
915         <doublevalue_editor label="Value" tooltip="Distance" id="DistanceValue" default="computed" min="0">
916           <validator id="GeomValidators_Positive"/>
917         </doublevalue_editor>
918
919         <module_choice id="LocationType"
920           widget_type="radiobuttons"
921           buttons_dir="horizontal"
922           label="Text location"
923           tooltip="Relative location of the text"
924           string_list="Left Automatic Right"
925           icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
926           default="1"
927           />
928
929         <validator id="PartSet_DistanceSelection"/>
930       </feature>
931
932       <!--  SketchConstraintDistanceVertical  -->
933       <feature
934         id="SketchConstraintDistanceVertical"
935         title="Vertical Distance"
936         tooltip="Set vertical distance between two points"
937         icon="icons/Sketch/distance_v.png"
938         helpfile="verticalDistFeature.html">
939         <label title="Select points for distance definition."/>
940         <sketch_shape_selector
941               id="ConstraintEntityA"
942               label="First point"
943               tooltip="Select point."
944               shape_types="vertex">
945           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
946           <validator id="PartSet_DifferentObjects"/>
947           <validator id="GeomValidators_ShapeType" parameters="vertex"/>
948         </sketch_shape_selector>
949         <sketch_shape_selector
950           id="ConstraintEntityB"
951           label="Second point"
952           tooltip="Select point."
953           shape_types="vertex">
954           <validator id="PartSet_DifferentObjects"/>
955           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
956           <validator id="GeomValidators_ShapeType" parameters="vertex"/>
957         </sketch_shape_selector>
958         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
959
960         <doublevalue_editor label="Value" tooltip="Distance" id="DistanceValue" default="computed" min="0">
961           <validator id="GeomValidators_Positive"/>
962         </doublevalue_editor>
963
964         <module_choice id="LocationType"
965           widget_type="radiobuttons"
966           buttons_dir="horizontal"
967           label="Text location"
968           tooltip="Relative location of the text"
969           string_list="Left Automatic Right"
970           icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
971           default="1"
972           />
973
974         <validator id="PartSet_DistanceSelection"/>
975       </feature>
976
977       <!--  SketchConstraintLength  -->
978       <feature id="SketchConstraintLength" title="Length" tooltip="Set fixed length of a line segment" icon="icons/Sketch/length.png"
979                helpfile="lengthFeature.html">
980         <label title="Select a line on which to calculate length" tooltip="Select a line on which to calculate length"/>
981         <shape_selector id="ConstraintEntityA" label="Line" tooltip="Select a line" shape_types="edge" >
982           <validator id="GeomValidators_ShapeType" parameters="line"/>
983           <validator id="SketchPlugin_SketchFeatureValidator"/>
984         </shape_selector>
985         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
986         <doublevalue_editor label="Value" tooltip="Length" id="ConstraintValue" default="computed">
987           <validator id="GeomValidators_Positive"/>
988         </doublevalue_editor>
989         <module_choice id="LocationType"
990           widget_type="radiobuttons"
991           buttons_dir="horizontal"
992           label="Text location"
993           tooltip="Relative location of the text"
994           string_list="Left Automatic Right"
995           icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
996           default="1"
997           />
998         <validator id="PartSet_LengthSelection"/>
999       </feature>
1000
1001       <!--  SketchConstraintAngle  -->
1002       <feature id="SketchConstraintAngle" title="Angle" tooltip="Set fixed angle between two line segments" icon="icons/Sketch/angle_constr.png"
1003                helpfile="angleFeature.html">
1004         <sketch_shape_selector id="ConstraintEntityA" label="Line 1" tooltip="Select a line" shape_types="edge" >
1005           <validator id="GeomValidators_ShapeType" parameters="line"/>
1006           <validator id="PartSet_DifferentObjects"/>
1007           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1008         </sketch_shape_selector>
1009         <sketch_shape_selector id="ConstraintEntityB" label="Line 2" tooltip="Select a line" shape_types="edge" >
1010           <validator id="GeomValidators_ShapeType" parameters="line"/>
1011           <validator id="PartSet_DifferentObjects"/>
1012           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1013         </sketch_shape_selector>
1014         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
1015         <doublevalue_editor label="Value" tooltip="Angle" id="AngleValue" default="computed" min="0" max="360" />
1016         <validator id="PartSet_AngleSelection"/>
1017         <module_choice id="AngleType"
1018           widget_type="radiobuttons"
1019           buttons_dir="horizontal"
1020           label="Angle type"
1021           tooltip="Type of angle"
1022           string_list="Direct Complementary Additional"
1023           icons_list="icons/Sketch/angle_direct.png icons/Sketch/angle_complementary.png icons/Sketch/angle_backward.png"
1024           default="0"
1025           />
1026
1027         <module_choice id="LocationType"
1028           widget_type="radiobuttons"
1029           buttons_dir="horizontal"
1030           label="Text location"
1031           tooltip="Relative location of the text"
1032           string_list="Left Automatic Right"
1033           icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
1034           default="1"
1035           />
1036
1037       </feature>
1038
1039       <!--  SketchConstraintRadius  -->
1040       <feature id="SketchConstraintRadius" title="Radius" tooltip="Set fixed radius of a circle or an arc" icon="icons/Sketch/radius_constr.png"
1041                helpfile="radiusFeature.html">
1042         <label title="Select a circle or an arc on which to calculate radius" tooltip="Select a circle or an arc on which to calculate radius"/>
1043         <shape_selector id="ConstraintEntityA" label="Circle or Arc" tooltip="Select a circle or an arc"
1044             shape_types="edge">
1045           <validator id="GeomValidators_ShapeType" parameters="circle"/>
1046         </shape_selector>
1047         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
1048         <doublevalue_editor label="Value" tooltip="Radius" id="ConstraintValue" default="computed">
1049           <validator id="GeomValidators_Positive"/>
1050         </doublevalue_editor>
1051
1052         <module_choice id="LocationType"
1053           widget_type="radiobuttons"
1054           buttons_dir="horizontal"
1055           label="Text location"
1056           tooltip="Relative location of the text"
1057           string_list="Left Automatic Right"
1058           icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
1059           default="1"
1060           />
1061
1062         <validator id="PartSet_RadiusSelection"/>
1063       </feature>
1064
1065     </group>
1066
1067     <group id="Geometrical constraints">
1068
1069       <!--  SketchConstraintHorizontal  -->
1070       <feature id="SketchConstraintHorizontal" title="Horizontal" tooltip="Create constraint defining horizontal line" icon="icons/Sketch/horisontal.png"
1071                helpfile="horizontalFeature.html">
1072         <sketch_shape_selector id="ConstraintEntityA"
1073             label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
1074           <validator id="GeomValidators_ShapeType" parameters="line"/>
1075           <validator id="SketchPlugin_HasNoConstraint" parameters="SketchConstraintHorizontal,SketchConstraintVertical"/>
1076         </sketch_shape_selector>
1077         <validator id="PartSet_HVDirSelection"/>
1078       </feature>
1079
1080       <!--  SketchConstraintVertical  -->
1081       <feature id="SketchConstraintVertical" title="Vertical" tooltip="Create constraint defining vertical line" icon="icons/Sketch/vertical.png"
1082                helpfile="verticalFeature.html">
1083         <sketch_shape_selector id="ConstraintEntityA"
1084             label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
1085           <validator id="GeomValidators_ShapeType" parameters="line"/>
1086           <validator id="SketchPlugin_HasNoConstraint" parameters="SketchConstraintHorizontal,SketchConstraintVertical"/>
1087         </sketch_shape_selector>
1088         <validator id="PartSet_HVDirSelection"/>
1089       </feature>
1090
1091       <!--  SketchConstraintRigid  -->
1092       <feature id="SketchConstraintRigid" title="Fixed" tooltip="Fix an object" icon="icons/Sketch/fixed.png"
1093                helpfile="rigidFeature.html">
1094         <sketch_shape_selector id="ConstraintEntityA" label="Object"
1095                         tooltip="Select point, curve or its boundary point."
1096                         shape_types="edge vertex">
1097           <validator id="GeomValidators_ShapeType" parameters="vertex,edge"/>
1098           <validator id="SketchPlugin_NotFixed"/>
1099         </sketch_shape_selector>
1100         <validator id="PartSet_RigidSelection"/>
1101       </feature>
1102
1103       <!--  SketchConstraintParallel  -->
1104       <feature id="SketchConstraintParallel" title="Parallel" tooltip="Create constraint defining two parallel lines"
1105                icon="icons/Sketch/parallel.png" helpfile="parallelFeature.html">
1106         <sketch_shape_selector id="ConstraintEntityA"
1107             label="First line" tooltip="Select a line" shape_types="edge">
1108           <validator id="GeomValidators_ShapeType" parameters="line"/>
1109           <validator id="PartSet_DifferentObjects"/>
1110           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1111         </sketch_shape_selector>
1112
1113         <sketch_shape_selector id="ConstraintEntityB" label="Second line" tooltip="Select a line"
1114             shape_types="edge">
1115             <validator id="GeomValidators_ShapeType" parameters="line"/>
1116             <validator id="PartSet_DifferentObjects"/>
1117             <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1118         </sketch_shape_selector>
1119         <validator id="PartSet_ParallelSelection"/>
1120       </feature>
1121
1122       <!--  SketchConstraintPerpendicular  -->
1123       <feature id="SketchConstraintPerpendicular" title="Perpendicular"
1124                tooltip="Create constraint defining two orthogonal objects"
1125                icon="icons/Sketch/perpendicular.png"
1126                helpfile="perpendicularFeature.html">
1127         <sketch_shape_selector id="ConstraintEntityA"
1128             label="First object" tooltip="Select line or arc"
1129             shape_types="edge">
1130           <validator id="PartSet_DifferentObjects"/>
1131           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1132           <validator id="SketchPlugin_PerpendicularAttr" parameters="ConstraintEntityB"/>
1133           <validator id="GeomValidators_ShapeType" parameters="edge"/>
1134         </sketch_shape_selector>
1135
1136         <sketch_shape_selector id="ConstraintEntityB"
1137             label="Second object" tooltip="Select line or arc"
1138             shape_types="edge">
1139           <validator id="PartSet_DifferentObjects"/>
1140           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1141           <validator id="SketchPlugin_PerpendicularAttr" parameters="ConstraintEntityA"/>
1142           <validator id="GeomValidators_ShapeType" parameters="edge"/>
1143         </sketch_shape_selector>
1144         <validator id="PartSet_PerpendicularSelection"/>
1145       </feature>
1146
1147       <!--  SketchConstraintTangent  -->
1148       <feature id="SketchConstraintTangent" title="Tangent" tooltip="Create constraint defining tangency of two segments with common coincident point" icon="icons/Sketch/tangent.png"
1149                helpfile="tangentFeature.html">
1150         <sketch_shape_selector id="ConstraintEntityA"
1151             label="First object" tooltip="Select line or arc" shape_types="edge">
1152           <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityB"/>
1153           <validator id="PartSet_DifferentObjects"/>
1154         </sketch_shape_selector>
1155
1156         <sketch_shape_selector id="ConstraintEntityB"
1157             label="Second object" tooltip="Select line or arc" shape_types="edge">
1158           <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityA"/>
1159           <validator id="PartSet_DifferentObjects"/>
1160         </sketch_shape_selector>
1161         <validator id="PartSet_TangentSelection"/>
1162       </feature>
1163
1164       <!--  SketchConstraintCoincidence  -->
1165       <feature id="SketchConstraintCoincidence" title="Coincident" tooltip="Create constraint for the coincidence of two points or point on line or circle" icon="icons/Sketch/coincedence.png"
1166                helpfile="coincedenceFeature.html">
1167         <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex edge">
1168           <validator id="PartSet_DifferentObjects"/>
1169           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1170         </sketch_shape_selector>
1171         <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex edge">
1172           <validator id="PartSet_DifferentObjects"/>
1173           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1174           <validator id="SketchPlugin_CoincidenceAttr" parameters="ConstraintEntityA"/>
1175         </sketch_shape_selector>
1176         <validator id="PartSet_CoincidentSelection"/>
1177       </feature>
1178       <!--  SketchConstraintCoincidenceInternal  -->
1179       <feature id="SketchConstraintCoincidenceInternal" title="Internal Coincidence" tooltip="Internal coincidence" icon="icons/Sketch/coincedence.png"
1180                helpfile="coincedenceFeature.html" internal="1">
1181         <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex">
1182           <validator id="PartSet_DifferentObjects"/>
1183           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1184         </sketch_shape_selector>
1185         <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex">
1186           <validator id="PartSet_DifferentObjects"/>
1187           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1188           <validator id="SketchPlugin_CoincidenceAttr" parameters="ConstraintEntityA"/>
1189         </sketch_shape_selector>
1190         <validator id="PartSet_CoincidentSelection"/>
1191       </feature>
1192
1193       <!--  SketchConstraintMiddle  -->
1194       <feature id="SketchConstraintMiddle" title="Middle point" tooltip="Create constraint for setting middle point on a line"
1195                icon="icons/Sketch/middlepoint.png"
1196                helpfile="middleFeature.html">
1197         <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex edge">
1198           <validator id="PartSet_DifferentObjects"/>
1199           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1200           <validator id="SketchPlugin_MiddlePointAttr" parameters="ConstraintEntityB"/>
1201         </sketch_shape_selector>
1202         <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex edge">
1203           <validator id="PartSet_DifferentObjects"/>
1204           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1205           <validator id="SketchPlugin_MiddlePointAttr" parameters="ConstraintEntityA"/>
1206         </sketch_shape_selector>
1207         <validator id="PartSet_MiddlePointSelection"/>
1208       </feature>
1209
1210       <!--  SketchConstraintEqual  -->
1211       <feature id="SketchConstraintEqual" title="Equal"
1212         tooltip="Create constraint defining equal lengths of two lines or line and arc or equal radiuses of two arcs or two circles or arc and circle"
1213         icon="icons/Sketch/equal.png"
1214                helpfile="equalFeature.html">
1215         <sketch_shape_selector id="ConstraintEntityA"
1216             label="First object" tooltip="Select edge" shape_types="edge">
1217           <validator id="PartSet_DifferentObjects"/>
1218           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1219         </sketch_shape_selector>
1220
1221         <sketch_shape_selector id="ConstraintEntityB"
1222             label="Second object" tooltip="Select edge" shape_types="edge">
1223           <validator id="SketchPlugin_EqualAttr" parameters="ConstraintEntityA"/>
1224           <validator id="PartSet_DifferentObjects"/>
1225           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1226         </sketch_shape_selector>
1227         <validator id="PartSet_EqualSelection"/>
1228       </feature>
1229
1230       <!--  SketchConstraintCollinear  -->
1231       <feature id="SketchConstraintCollinear" title="Collinear" tooltip="Create constraint defining collinearity of two lines"
1232                icon="icons/Sketch/collinear.png"
1233                helpfile="collinearFeature.html">
1234         <sketch_shape_selector id="ConstraintEntityA"
1235             label="First line" tooltip="Select a line" shape_types="edge">
1236           <validator id="GeomValidators_ShapeType" parameters="line"/>
1237           <validator id="PartSet_DifferentObjects"/>
1238         </sketch_shape_selector>
1239
1240         <sketch_shape_selector id="ConstraintEntityB"
1241             label="Second line" tooltip="Select a line" shape_types="edge">
1242           <validator id="GeomValidators_ShapeType" parameters="line"/>
1243           <validator id="PartSet_DifferentObjects"/>
1244         </sketch_shape_selector>
1245         <validator id="PartSet_CollinearSelection"/>
1246       </feature>
1247     </group>
1248   </workbench>
1249 </plugin>