Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>Maybe when using flaka already using :<br></p> <pre><code> &lt;!-- Activate flaka for all ant tasks --&gt; &lt;fl:install-property-handler/&gt; </code></pre> <p>combined with :<br></p> <pre><code>#{ x * y} </code></pre> <p>will work for you somehow, didn't test it, as antcontrib is not installed on my machine.<br> The property handler allows to use EL expressions inside all ant tasks.<br></p> <p>Here's a small example with a given file foo.xml, needs <a href="http://www.oopsconsultancy.com/software/xmltask/index.html" rel="nofollow">xmltask</a> and <a href="http://code.google.com/p/flaka/" rel="nofollow">flaka</a> :<br></p> <pre><code>&lt;whatever&gt; &lt;sprite name="timer" path="img/folder1/img1.jpg" pos-x="25" pos-y="4" xref=""/&gt; &lt;sprite name="timer1" offset-x="100" offset-y="10" path="img/folder1/img2.jpg" pos-x="26" pos-y="4" xref=""/&gt; &lt;control name="timer2" offset-y="10" path="img/folder1/img2.jpg" pos-x="27" pos-y="4" size="100" xref=""/&gt; &lt;/whatever&gt; </code></pre> <p>Editing foo.xml in place :<br></p> <pre><code>&lt;project xmlns:fl="antlib:it.haefelinger.flaka"&gt; &lt;!-- Activate flaka for all ant tasks --&gt; &lt;fl:install-property-handler/&gt; &lt;!-- Import XMLTask --&gt; &lt;taskdef name="xmltask" classname="com.oopsconsultancy.xmltask.ant.XmlTask"/&gt; &lt;!-- get a list with all pos-x attribute values --&gt; &lt;xmltask source="foo.xml"&gt; &lt;copy path="//whatever/*/@pos-x" append="true" propertySeparator="," property="posxlist"/&gt; &lt;/xmltask&gt; &lt;echo&gt;$${posxlist} =&gt; ${posxlist}&lt;/echo&gt; &lt;fl:let&gt;counter ::= 1&lt;/fl:let&gt; &lt;!-- for loop with xmltask editing foo.xml in place =&gt; source = dest --&gt; &lt;fl:for var="posx" in="split('${posxlist}', ',')"&gt; &lt;xmltask source="foo.xml" dest="foo.xml" report="true"&gt; &lt;!-- i.e. multiplicating value * 3 --&gt; &lt;attr path="//whatever/*[${counter}]" attr="pos-x" value="#{posx * 3}"/&gt; &lt;/xmltask&gt; &lt;fl:let&gt;counter ::= '${counter}' + 1&lt;/fl:let&gt; &lt;/fl:for&gt; &lt;/project&gt; </code></pre> <p>output :<br></p> <pre><code> [xmltask] Cannot append values to properties [xmltask] Cannot append values to properties [xmltask] Cannot append values to properties [echo] ${posxlist} =&gt; 25,26,27 [xmltask] Document --&gt; [xmltask] &lt;whatever&gt; [xmltask] &lt;sprite name="timer" path="img/folder1/img1.jpg" pos-x="75" pos-y="4" xref=""/&gt; [xmltask] &lt;sprite name="timer1" offset-x="100" offset-y="10" path="img/folder1/img2.jpg" pos-x="26" pos-y="4" xref=""/&gt; [xmltask] &lt;control name="timer2" offset-y="10" path="img/folder1/img2.jpg" pos-x="27" pos-y="4" size="100" xref=""/&gt; [xmltask] &lt;/whatever&gt; [xmltask] Document &lt;-- [xmltask] Document --&gt; [xmltask] &lt;whatever&gt; [xmltask] &lt;sprite name="timer" path="img/folder1/img1.jpg" pos-x="75" pos-y="4" xref=""/&gt; [xmltask] &lt;sprite name="timer1" offset-x="100" offset-y="10" path="img/folder1/img2.jpg" pos-x="78" pos-y="4" xref=""/&gt; [xmltask] &lt;control name="timer2" offset-y="10" path="img/folder1/img2.jpg" pos-x="27" pos-y="4" size="100" xref=""/&gt; [xmltask] &lt;/whatever&gt; [xmltask] Document &lt;-- [xmltask] Document --&gt; [xmltask] &lt;whatever&gt; [xmltask] &lt;sprite name="timer" path="img/folder1/img1.jpg" pos-x="75" pos-y="4" xref=""/&gt; [xmltask] &lt;sprite name="timer1" offset-x="100" offset-y="10" path="img/folder1/img2.jpg" pos-x="78" pos-y="4" xref=""/&gt; [xmltask] &lt;control name="timer2" offset-y="10" path="img/folder1/img2.jpg" pos-x="81" pos-y="4" size="100" xref=""/&gt; [xmltask] &lt;/whatever&gt; [xmltask] Document &lt;-- BUILD SUCCESSFUL Total time: 826 milliseconds </code></pre> <p>the warning 'Cannot append values to properties' originates from com.oopsconsultancy.xmltask.CopyAction line 80 to underline that properties in ant are immutable and may safely be ignored - or even better delete it from source and rebuild xmltask.jar</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload