-<!-- Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
+<!--
+Copyright (C) 2014-2017 CEA/DEN, EDF R&D
+
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public
+License as published by the Free Software Foundation; either
+version 2.1 of the License, or (at your option) any later version.
+
+This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+See http:##www.salome-platform.org/ or
+email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
+-->
<source>
- <multi_selector id="group_list"
- label="Select a sketch face"
- icon=":icons/sketch.png"
- tooltip="Select a sketch face"
- type_choice="Faces">
- <selection_filter id="SketchEntityFilter"/>
+ <sketch_launcher id="sketch"
+ attribute_list_id="base"
+ label="Select:<br />
+1. Planar face of non-sketch object or a plane. Sketch creation will be started.<br />
+2. An existing sketch face or contour. Extrusion will be filled by it.<br />
+3. An existing result shape of kind: wires/edge/vertices.Extrusion will be filled by it."
+ shape_types="vertices edges wires faces shells solids compsolids compounds">
+ <validator id="FeaturesPlugin_ValidatorCompositeLauncher" parameters="base,Sketch"/>
+ </sketch_launcher>
+ <multi_selector id="base"
+ label="Base objects:"
+ tooltip="Select a base objects"
+ type_choice="vertices edges wires faces shells compounds"
+ concealment="true">
+ <validator id="FeaturesPlugin_ValidatorBaseForGeneration" parameters="vertex,edge,wire,face,shell,compound"/>
</multi_selector>
- <doublevalue
- id="extrusion_size"
- label="Size"
- min="0"
- step="1.0"
- default="1"
- icon=":icons/dimension_v.png"
- tooltip="Height">
- <validator id="GeomValidators_Positive"/>
- </doublevalue>
- <boolvalue id="extrusion_reverse" label="Reverse" default="false" tooltip="Reverse default direction"/>
+ <shape_selector id="direction_object"
+ icon="icons/Features/axis.png"
+ label="Direction"
+ tooltip="Select an edge for direction"
+ shape_types="edge"
+ default="<base normal>">
+ <validator id="GeomValidators_ShapeType" parameters="empty,line"/>
+ </shape_selector>
+ <toolbox id="CreationMethod">
+ <box id="BySizes"
+ title="By sizes"
+ icon="icons/Features/dimension_up_down_32x32.png">
+ <groupbox>
+ <doublevalue id="to_size"
+ label="Size"
+ step="1.0"
+ default="10"
+ icon="icons/Features/dimension_up.png"
+ tooltip="To size"/>
+ </groupbox>
+ <groupbox>
+ <doublevalue id="from_size"
+ label="Size"
+ step="1.0"
+ default="0"
+ icon="icons/Features/dimension_down.png"
+ tooltip="From size"/>
+ </groupbox>
+ </box>
+ <box id="ByPlanesAndOffsets"
+ title="By bounding planes and offsets"
+ icon="icons/Features/plane_inverted_32x32.png">
+ <groupbox title="From">
+ <shape_selector id="from_object"
+ icon="icons/Features/plane.png"
+ label="Plane face"
+ tooltip="Bounding plane (select a planar face)"
+ shape_types="face"
+ default="<base sketch>">
+ <validator id="GeomValidators_Face" parameters="plane"/>
+ </shape_selector>
+ <doublevalue id="from_offset"
+ label="Offset"
+ step="1.0"
+ default="0"
+ icon="icons/Features/dimension_up_down.png"
+ tooltip="Offset for "from" bounding plane"/>
+ </groupbox>
+ <groupbox title="To">
+ <shape_selector id="to_object"
+ icon="icons/Features/plane_inverted.png"
+ label="Plane face"
+ tooltip="Bounding plane (select a planar face)"
+ shape_types="face"
+ default="<base sketch>">
+ <validator id="GeomValidators_Face" parameters="plane"/>
+ </shape_selector>
+ <doublevalue id="to_offset"
+ label="Offset"
+ step="1.0"
+ default="0"
+ icon="icons/Features/dimension_up_down.png"
+ tooltip="Offset for "to" bounding plane"/>
+ </groupbox>
+ </box>
+ </toolbox>
+ <validator id="GeomValidators_ZeroOffset" parameters="CreationMethod,BySizes,base,to_size,from_size,to_object,to_offset,from_object,from_offset"/>
+ <validator id="FeaturesPlugin_ValidatorExtrusionDir" parameters="base,direction_object"/>
+ <validator id="FeaturesPlugin_ValidatorBaseForGenerationSketchOrSketchObjects" parameters="base"/>
</source>