Salome HOME
Issue #1343 Improvement of Extrusion and Revolution operations: preview planes visual...
[modules/shaper.git] / src / FeaturesPlugin / extrusion_widget.xml
index 52808c76ec2770d0af893a922786fd2f2a0fd9d6..1cf80deb2e69c74f74affc28e89727802476df30 100644 (file)
@@ -1,17 +1,83 @@
 <!-- Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
 
 <source>
-  <shape_selector id="extrusion_face" 
-    label="Select a face" 
-    icon=":icons/sketch.png" 
-    tooltip="Select a face for extrusion"
-    activate="true"
-    shape_types="face"
-       object_types="construction"
-    use_subshapes="true"
-  />
-  <doublevalue id="extrusion_size" label="Size" min="0" step="1.0" default="1" icon=":icons/dimension_v.png" tooltip="Set size of extrusion">
-    <validator id="GeomValidators_Positive"/>
-  </doublevalue>
-  <boolvalue id="extrusion_reverse" label="Reverse" default="false" tooltip="Reverse default direction"/>
+  <sketch_launcher id="sketch"
+    attribute_list_id="base"
+    label="Select: 1. Planar face of non-sketch object or a plane. Sketch creation will be started.
+2. An existing sketch face or contour. Extrusion will be filled with them. 3.A shape on existing result: wires/edge/vertices.
+Extrusion will be filled with them"
+    icon=":icons/sketch.png"
+    tooltip="Create or edit a sketch"
+    shape_types="face objects">
+  </sketch_launcher>
+  <composite_multi_selector id="base"
+    label="Select a sketch face"
+    icon=":icons/sketch.png"
+    tooltip="Select a sketch face"
+    type_choice="Faces Objects">
+    <validator id="FeaturesPlugin_ValidatorExtrusionBase" parameters="Sketch"/>
+  </composite_multi_selector>
+  <toolbox id="CreationMethod">
+    <box id="BySizes" title="By sizes" icon=":icons/dimension_up_down_32x32.png">
+      <groupbox>
+        <doublevalue
+          id="to_size"
+          label="Size"
+          step="1.0"
+          default="10"
+          icon=":icons/dimension_up.png"
+          tooltip="To size">
+        </doublevalue>
+      </groupbox>
+      <groupbox>
+        <doublevalue
+          id="from_size"
+          label="Size"
+          step="1.0"
+          default="0"
+          icon=":icons/dimension_down.png"
+          tooltip="From size">
+        </doublevalue>
+      </groupbox>
+    </box>
+    <box id="ByPlanesAndOffsets" title="By bounding planes and offsets" icon=":icons/plane_inverted_32x32.png">
+      <groupbox title="From">
+        <shape_selector id="from_object"
+                        icon=":icons/plane.png"
+                        label="Plane face"
+                        tooltip="Bounding plane (select a planar face)"
+                        shape_types="face"
+                        default="&lt;base sketch&gt;">
+          <validator id="GeomValidators_Face" parameters="plane"/>
+        </shape_selector>
+        <doublevalue
+          id="from_offset"
+          label="Offset"
+          step="1.0"
+          default="0"
+          icon=":icons/dimension_up_down.png"
+          tooltip="Offset for bounding plane">
+        </doublevalue>
+      </groupbox>
+      <groupbox title="To">
+        <shape_selector id="to_object"
+                        icon=":icons/plane_inverted.png"
+                        label="Plane face"
+                        tooltip="Bounding plane (select a planar face)"
+                        shape_types="face"
+                        default="&lt;base sketch&gt;">
+          <validator id="GeomValidators_Face" parameters="plane"/>
+        </shape_selector>
+        <doublevalue
+          id="to_offset"
+          label="Offset"
+          step="1.0"
+          default="0"
+          icon=":icons/dimension_up_down.png"
+          tooltip="Offset for bounding plane">
+        </doublevalue>
+      </groupbox>
+    </box>
+  </toolbox>
+  <validator id="GeomValidators_ZeroOffset" parameters="CreationMethod,BySizes,base,to_size,from_size,to_object,to_offset,from_object,from_offset"/>
 </source>