Code

Extensions. Consistency fix and UI improvements (Modify path submenu).
authorJazzyNico <nicoduf@yahoo.fr>
Mon, 6 Sep 2010 18:55:37 +0000 (20:55 +0200)
committerJazzyNico <nicoduf@yahoo.fr>
Mon, 6 Sep 2010 18:55:37 +0000 (20:55 +0200)
share/extensions/addnodes.inx
share/extensions/edge3d.inx
share/extensions/flatten.inx
share/extensions/fractalize.inx
share/extensions/interp_att_g.inx
share/extensions/interp_att_g.py
share/extensions/radiusrand.inx
share/extensions/radiusrand.py
share/extensions/straightseg.inx
share/extensions/whirl.inx

index f260f3df473d3155a64a8c2a950037ced244e165..b61d0a92dad5b56a790fe491122ab4314e481c58 100644 (file)
@@ -4,12 +4,12 @@
     <id>org.ekips.filter.addnodes</id>
     <dependency type="executable" location="extensions">addnodes.py</dependency>
     <dependency type="executable" location="extensions">inkex.py</dependency>
-    <param name="method" type="optiongroup" _gui-text="Division method">
-        <_option value="bymax">By max. segment length</_option>
-        <_option value="bynum">By number of segments</_option>
+    <param name="method" type="enum" _gui-text="Division method:">
+        <_item value="bymax">By max. segment length</_item>
+        <_item value="bynum">By number of segments</_item>
     </param>
-    <param name="max" type="float" min="0.1" max="10000.0" _gui-text="Maximum segment length (px)">10.0</param>
-    <param name="segments" type="int" min="1" max="1000" _gui-text="Number of segments">2</param>
+    <param name="max" type="float" min="0.1" max="10000.0" _gui-text="Maximum segment length (px):">10.0</param>
+    <param name="segments" type="int" min="1" max="1000" _gui-text="Number of segments:">2</param>
     <effect needs-live-preview="false">
         <object-type>path</object-type>
         <effects-menu>
index 9b287359ffca49d07c9873c9daca2f70b6939bdf..bc5f073ed12aeae3a8da550685a6f56a1d71c899 100644 (file)
@@ -1,30 +1,23 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <inkscape-extension xmlns="http://www.inkscape.org/namespace/inkscape/extension">
-  <_name>Edge 3D</_name>
-  <id>org.greygreen.inkscape.effects.edge3d</id>
-  <dependency type="executable" location="extensions">edge3d.py</dependency>
-  <dependency type="executable" location="extensions">inkex.py</dependency>
-  <param name="angle" type="float" min="0.0" max="360.0"
-        _gui-text="Illumination Angle">45</param>
-  <param name="shades" type="int" min="2" max="360"
-        _gui-text="Shades">2</param>
-  <param name="bw" type="boolean"
-        _gui-text="Only black and white">0</param>
-  <param name="thick" type="float" min="1.0" max="50.0"
-        _gui-text="Stroke width">10</param>
-  <param name="stddev" type="float" min="1.0" max="100.0"
-        _gui-text="Blur stdDeviation">5</param>
-  <param name="blurwidth" type="float" min="1.0" max="10.0"
-        _gui-text="Blur width">2</param>
-  <param name="blurheight" type="float" min="1.0" max="10.0"
-        _gui-text="Blur height">2</param>
-  <effect>
+    <_name>Edge 3D</_name>
+    <id>org.greygreen.inkscape.effects.edge3d</id>
+    <dependency type="executable" location="extensions">edge3d.py</dependency>
+    <dependency type="executable" location="extensions">inkex.py</dependency>
+    <param name="angle" type="float" min="0.0" max="360.0" _gui-text="Illumination Angle:">45</param>
+    <param name="shades" type="int" min="2" max="360" _gui-text="Shades:">2</param>
+    <param name="bw" type="boolean" _gui-text="Only black and white:">0</param>
+    <param name="thick" type="float" min="1.0" max="50.0" _gui-text="Stroke width:">10</param>
+    <param name="stddev" type="float" min="1.0" max="100.0" _gui-text="Blur stdDeviation:">5</param>
+    <param name="blurwidth" type="float" min="1.0" max="10.0" _gui-text="Blur width:">2</param>
+    <param name="blurheight" type="float" min="1.0" max="10.0" _gui-text="Blur height:">2</param>
+    <effect>
     <object-type>path</object-type>
-    <effects-menu>
-      <submenu _name="Modify Path"/>
-    </effects-menu>
-  </effect>
-  <script>
-    <command reldir="extensions" interpreter="python">edge3d.py</command>
-  </script>
+        <effects-menu>
+            <submenu _name="Modify Path"/>
+        </effects-menu>
+    </effect>
+    <script>
+        <command reldir="extensions" interpreter="python">edge3d.py</command>
+    </script>
 </inkscape-extension>
index 8167175d8de5a28030a4fbb46fb8a58169d4ecb1..4c8298623fbcfaf81e721ea77bc99af70ae08864 100644 (file)
@@ -4,7 +4,7 @@
    <id>org.ekips.filter.flatten</id>
        <dependency type="executable" location="extensions">flatten.py</dependency>
        <dependency type="executable" location="extensions">inkex.py</dependency>
-       <param name="flatness" type="float" min="0.0" max="1000.0" _gui-text="Flatness">10.0</param>
+       <param name="flatness" type="float" min="0.0" max="1000.0" _gui-text="Flatness:">10.0</param>
    <effect>
                <object-type>path</object-type>
                 <effects-menu>
index 189bb2afa92d26aad126647a4fc0bc7db237987b..4893189e83a348cc7a6c8b3550bbb76e8554a130 100755 (executable)
@@ -4,13 +4,13 @@
     <id>org.ekips.filter.fractalize</id>
        <dependency type="executable" location="extensions">fractalize.py</dependency>
        <dependency type="executable" location="extensions">inkex.py</dependency>
-        <param name="subdivs" type="int" _gui-text="Subdivisions">6</param>
-        <param name="smooth" type="float" _gui-text="Smoothness">4.0</param>
+    <param name="subdivs" type="int" _gui-text="Subdivisions:">6</param>
+    <param name="smooth" type="float" _gui-text="Smoothness:">4.0</param>
     <effect>
                <object-type>path</object-type>
                <effects-menu>
-                    <submenu _name="Modify Path"/>
-                </effects-menu>        
+            <submenu _name="Modify Path"/>
+        </effects-menu>        
     </effect>
     <script>
         <command reldir="extensions" interpreter="python">fractalize.py</command>
index cd78abccfa1fda61173aa6f2a2ada2e7e786351c..39c043519bd205a76bdf877a8aa3d1602d0d100d 100644 (file)
@@ -1,51 +1,57 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <inkscape-extension xmlns="http://www.inkscape.org/namespace/inkscape/extension">
-  <_name>Interpolate Attribute in a group</_name>
-  <id>org.inkscape.filter.interp-att-g</id>
-  <dependency type="executable" location="extensions">interp_att_g.py</dependency>
-  <dependency type="executable" location="extensions">inkex.py</dependency>
-  <_param name="intro" type="description">This effect applies a value for any interpolatable attribute for all elements inside the selected group or for all elements in a multiple selection</_param>
-  <param name="att" type="enum" _gui-text="Attribute to Interpolate">
-    <_item value="width">Width</_item>
-    <_item value="height">Height</_item>
-    <_item value="scale">Scale</_item>
-    <_item value="trans-x">Translate X</_item>
-    <_item value="trans-y">Translate Y</_item>
-    <_item value="fill">Fill</_item>
-    <_item value="opacity">Opacity</_item>
-    <_item value="other">Other</_item>
-  </param>
-  <_param name="other-info" type="description">If you select "Other", you must know the SVG attributes to identify here this "other":</_param>
-  <param name="att-other" type="string" _gui-text="Other Attribute"></param>
-  <param name="att-other-type" type="enum" _gui-text="Other Attribute type">
-    <_item value="color">Color</_item>
-    <_item value="int">Integer Number</_item>
-    <_item value="float">Float Number</_item>
-  </param>
-  <param name="att-other-where" type="enum" _gui-text="Where to apply?">
-    <_item value="tag">Tag</_item>
-    <_item value="style">Style</_item>
-    <_item value="transform">Transformation</_item>
-  </param>
-  <_param name="sep" type="description">••••••••••••••••••••••••••••••••••••••••••••••••</_param>
-  <param name="start-val" type="string" _gui-text="Start Value"></param>
-  <param name="end-val" type="string" _gui-text="End Value"></param>
-  <param name="unit" type="enum" _gui-text="Unit">
-    <_item value="none">No Unit</_item>
-    <_item value="color">Color</_item>
-    <item>px</item>
-    <item>pt</item>
-    <item>in</item>
-    <item>cm</item>
-    <item>mm</item>
-  </param>
-  <effect>
-    <object-type>all</object-type>
-    <effects-menu>
-      <submenu _name="Modify Path"/>
-    </effects-menu>
-  </effect>
-  <script>
-    <command reldir="extensions" interpreter="python">interp_att_g.py</command>
-  </script>
+    <_name>Interpolate Attribute in a group</_name>
+    <id>org.inkscape.filter.interp-att-g</id>
+    <dependency type="executable" location="extensions">interp_att_g.py</dependency>
+    <dependency type="executable" location="extensions">inkex.py</dependency>
+       <param name="tab" type="notebook">
+        <page name="Options" _gui-text="Options">
+            <param name="att" type="enum" _gui-text="Attribute to Interpolate:">
+                <_item value="width">Width</_item>
+                <_item value="height">Height</_item>
+                <_item value="scale">Scale</_item>
+                <_item value="trans-x">Translate X</_item>
+                <_item value="trans-y">Translate Y</_item>
+                <_item value="fill">Fill</_item>
+                <_item value="opacity">Opacity</_item>
+                <_item value="other">Other</_item>
+            </param>
+            <_param name="other-info" type="description">If you select "Other", you must know the SVG attributes to identify here this "other".</_param>
+            <param name="att-other" type="string" _gui-text="Other Attribute:"></param>
+            <param name="att-other-type" type="enum" _gui-text="Other Attribute type:">
+                <_item value="color">Color</_item>
+                <_item value="int">Integer Number</_item>
+                <_item value="float">Float Number</_item>
+            </param>
+            <param name="att-other-where" type="enum" _gui-text="Apply to:">
+                <_item value="tag">Tag</_item>
+                <_item value="style">Style</_item>
+                <_item value="transform">Transformation</_item>
+            </param>
+            <_param name="sep" type="description">••••••••••••••••••••••••••••••••••••••••••••••••</_param>
+            <param name="start-val" type="string" _gui-text="Start Value:"></param>
+            <param name="end-val" type="string" _gui-text="End Value:"></param>
+            <param name="unit" type="enum" _gui-text="Unit:">
+                <_item value="none">No Unit</_item>
+                <_item value="color">Color</_item>
+                <item>px</item>
+                <item>pt</item>
+                <item>in</item>
+                <item>cm</item>
+                <item>mm</item>
+            </param>
+        </page>
+        <page name="Help" _gui-text="Help">
+            <_param name="intro" type="description">This effect applies a value for any interpolatable attribute for all elements inside the selected group or for all elements in a multiple selection.</_param>
+        </page>
+    </param>
+    <effect>
+        <object-type>all</object-type>
+        <effects-menu>
+            <submenu _name="Modify Path"/>
+        </effects-menu>
+    </effect>
+    <script>
+        <command reldir="extensions" interpreter="python">interp_att_g.py</command>
+    </script>
 </inkscape-extension>
index f23edaf366870b4d3992e51c16cb4946038af4db..9829de3e8fcc328c6d7a6e7334b92ea08d187ce3 100755 (executable)
@@ -50,6 +50,10 @@ class InterpAttG(inkex.Effect):
                         action="store", type="string",
                         dest="unit", default="color",
                         help="Values unit.")
+        self.OptionParser.add_option("--tab",
+                        action="store", type="string",
+                        dest="tab",
+                        help="The selected UI-tab when OK was pressed")
 
     def getColorValues(self):
       sv = string.replace( self.options.start_val, '#', '' )
index 3349f4549d16cbd8030964cbde726856cd0b9d9a..38e7d6c4c9b03bb820c1d3fbf641de3ea3b0e0ff 100644 (file)
@@ -1,22 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <inkscape-extension xmlns="http://www.inkscape.org/namespace/inkscape/extension">
-   <_name>Jitter nodes</_name>
-   <id>org.ekips.filter.radiusrand</id>
-       <dependency type="executable" location="extensions">radiusrand.py</dependency>
-       <dependency type="executable" location="extensions">inkex.py</dependency>
-       <_param name="title" type="description">This effect randomly shifts the nodes (and optionally node handles) of the selected path.</_param>
-       <param name="radiusx" type="float" min="0.0" max="1000.0" _gui-text="Maximum displacement in X, px">10.0</param>
-       <param name="radiusy" type="float" min="0.0" max="1000.0" _gui-text="Maximum displacement in Y, px">10.0</param>
-       <param name="end" type="boolean" _gui-text="Shift nodes">true</param>
-       <param name="ctrl" type="boolean" _gui-text="Shift node handles">false</param>
-       <param name="norm" type="boolean" _gui-text="Use normal distribution">true</param>
-   <effect>
-               <object-type>path</object-type>
-                <effects-menu>
-                    <submenu _name="Modify Path"/>
-                </effects-menu>
-   </effect>
-   <script>
-       <command reldir="extensions" interpreter="python">radiusrand.py</command>
-   </script>
+    <_name>Jitter nodes</_name>
+    <id>org.ekips.filter.radiusrand</id>
+    <dependency type="executable" location="extensions">radiusrand.py</dependency>
+    <dependency type="executable" location="extensions">inkex.py</dependency>
+    <param name="tab" type="notebook">
+        <page name="Options" _gui-text="Options">
+            <param name="radiusx" type="float" min="0.0" max="1000.0" _gui-text="Maximum displacement in X (px):">10.0</param>
+            <param name="radiusy" type="float" min="0.0" max="1000.0" _gui-text="Maximum displacement in Y (px):">10.0</param>
+            <param name="end" type="boolean" _gui-text="Shift nodes">true</param>
+            <param name="ctrl" type="boolean" _gui-text="Shift node handles">false</param>
+            <param name="norm" type="boolean" _gui-text="Use normal distribution">true</param>
+        </page>
+        <page name="Help" _gui-text="Help">
+            <_param name="title" type="description">This effect randomly shifts the nodes (and optionally node handles) of the selected path.</_param>
+        </page>
+    </param>
+    <effect>
+        <object-type>path</object-type>
+        <effects-menu>
+            <submenu _name="Modify Path"/>
+        </effects-menu>
+    </effect>
+    <script>
+        <command reldir="extensions" interpreter="python">radiusrand.py</command>
+    </script>
 </inkscape-extension>
index 15b8168539882b32eb8263d14e3d62e39348e1ed..1a36d5cbabe8f3447dfd9b6968868ccdc943b9b0 100755 (executable)
@@ -52,6 +52,11 @@ class RadiusRandomize(inkex.Effect):
                         action="store", type="inkbool", 
                         dest="norm", default=True,
                         help="Use normal distribution")
+        self.OptionParser.add_option("--tab",
+                        action="store", type="string",
+                        dest="tab",
+                        help="The selected UI-tab when OK was pressed")
+
     def effect(self):
         for id, node in self.selected.iteritems():
             if node.tag == inkex.addNS('path','svg'):
index 965b3308682b657b57d0579c870da840a5907013..45014c87954f49181845f552920ea97a880fd8c9 100644 (file)
@@ -4,13 +4,13 @@
     <id>org.ekips.filter.straightseg</id>
        <dependency type="executable" location="extensions">straightseg.py</dependency>
        <dependency type="executable" location="extensions">inkex.py</dependency>
-       <param name="percent" type="float" min="0.0" max="100.0" _gui-text="Percent">50.0</param>
-       <param name="behavior" type="int" min="1" max="2" _gui-text="Behavior">1</param>
+       <param name="percent" type="float" min="0.0" max="100.0" _gui-text="Percent:">50.0</param>
+       <param name="behavior" type="int" min="1" max="2" _gui-text="Behavior:">1</param>
     <effect>
-               <object-type>path</object-type>
-                <effects-menu>
-                    <submenu _name="Modify Path"/>
-                </effects-menu>
+    <object-type>path</object-type>
+        <effects-menu>
+            <submenu _name="Modify Path"/>
+        </effects-menu>
     </effect>
     <script>
         <command reldir="extensions" interpreter="python">straightseg.py</command>
index f68d99d35209f0df9065fec404b9df9b22c25d0d..a7de60f2b82250def3bfd5422b115c41a4197fb1 100644 (file)
@@ -4,13 +4,13 @@
     <id>org.ekips.filter.whirl</id>
        <dependency type="executable" location="extensions">whirl.py</dependency>
        <dependency type="executable" location="extensions">inkex.py</dependency>
-       <param name="whirl" type="float" min="0.00" max="1000.00" _gui-text="Amount of whirl">5.0</param>
+       <param name="whirl" type="float" min="0.00" max="1000.00" _gui-text="Amount of whirl:">5.0</param>
        <param name="rotation" type="boolean" _gui-text="Rotation is clockwise">true</param>
     <effect>
                <object-type>path</object-type>
-                <effects-menu>
-                    <submenu _name="Modify Path"/>
-                </effects-menu>
+        <effects-menu>
+            <submenu _name="Modify Path"/>
+        </effects-menu>
     </effect>
     <script>
         <command reldir="extensions" interpreter="python">whirl.py</command>