home *** CD-ROM | disk | FTP | other *** search
/ ftp.tcs3.com / ftp.tcs3.com.tar / ftp.tcs3.com / DRIVERS / Audio / Office2010 / ProPlus.WW / ProPsWW.cab / OART.DLL / 3000 / 3291 < prev    next >
Extensible Markup Language  |  2010-03-13  |  12KB  |  303 lines

  1. ∩╗┐<?xml version="1.0" encoding="utf-8"?>
  2. <!-- Copyright (c) Microsoft Corporation.  All rights reserved. -->
  3. <layoutDef xmlns="http://schemas.openxmlformats.org/drawingml/2006/diagram" uniqueId="urn:microsoft.com/office/officeart/2005/8/layout/hProcess3">
  4.     <title val="Continuous Arrow Process" />
  5.     <desc val="" />
  6.     <catLst>
  7.         <cat type="process" pri="6000" />
  8.     </catLst>
  9.     <styleData>
  10.         <dataModel>
  11.             <ptLst>
  12.                 <pt modelId="0" type="doc" />
  13.                 <pt modelId="1" type="node" />
  14.                 <pt modelId="2" type="node" />
  15.             </ptLst>
  16.             <cxnLst>
  17.                 <cxn modelId="3" type="parOf" srcId="0" destId="1" srcOrd="0" destOrd="0" presId="" />
  18.                 <cxn modelId="4" type="parOf" srcId="0" destId="2" srcOrd="1" destOrd="0" presId="" />
  19.             </cxnLst>
  20.         </dataModel>
  21.     </styleData>
  22.     <clrData>
  23.         <dataModel>
  24.             <ptLst>
  25.                 <pt modelId="0" type="doc" />
  26.                 <pt modelId="1" type="node" />
  27.                 <pt modelId="2" type="node" />
  28.                 <pt modelId="3" type="node" />
  29.                 <pt modelId="4" type="node" />
  30.             </ptLst>
  31.             <cxnLst>
  32.                 <cxn modelId="5" type="parOf" srcId="0" destId="1" srcOrd="0" destOrd="0" presId="" />
  33.                 <cxn modelId="6" type="parOf" srcId="0" destId="2" srcOrd="1" destOrd="0" presId="" />
  34.                 <cxn modelId="7" type="parOf" srcId="0" destId="3" srcOrd="2" destOrd="0" presId="" />
  35.                 <cxn modelId="8" type="parOf" srcId="0" destId="4" srcOrd="3" destOrd="0" presId="" />
  36.             </cxnLst>
  37.         </dataModel>
  38.     </clrData>
  39.     <layoutNode chOrder="t">
  40.         <varLst>
  41.             <dir val="norm" />
  42.             <animLvl val="lvl" />
  43.             <resizeHandles val="exact" />
  44.         </varLst>
  45.         <alg type="composite" />
  46.         <shape />
  47.         <presOf />
  48.         <constrLst>
  49.             <!-- Node which determines the maximum height parTx is allowed to grow to -->
  50.             <constr type="w" for="ch" forName="dummy" refType="w" />
  51.             <constr type="h" for="ch" forName="dummy" refType="h" />
  52.             <constr op="lte" type="h" for="ch" forName="dummy" refType="w" refFor="ch" refForName="dummy" fact="0.4" />
  53.             <constr type="ctrX" for="ch" forName="dummy" refType="w" fact="0.5" />
  54.             <constr type="ctrY" for="ch" forName="dummy" refType="h" fact="0.5" />
  55.             <!-- Node which contains all the text -->
  56.             <constr type="w" for="ch" forName="linH" refType="w" />
  57.             <constr type="h" for="ch" forName="linH" refType="h" />
  58.             <constr type="ctrX" for="ch" forName="linH" refType="w" fact="0.5" />
  59.             <constr type="ctrY" for="ch" forName="linH" refType="h" fact="0.5" />
  60.             <!-- ch.linH.userP is the distance from the edge of the text to the arrow point -->
  61.             <constr type="userP" for="ch" forName="linH" refType="h" refFor="ch" refForName="dummy" fact="0.25" />
  62.             <!-- des.parTx.userT represents the tallest parTx can grow -->
  63.             <constr type="userT" for="des" forName="parTx" refType="w" refFor="ch" refForName="dummy" fact="0.2" />
  64.         </constrLst>
  65.         <ruleLst />
  66.         <layoutNode name="dummy">
  67.             <alg type="sp" />
  68.             <shape />
  69.             <presOf />
  70.             <constrLst />
  71.             <ruleLst />
  72.         </layoutNode>
  73.         <!-- linH lays out children horizontally and consists of:
  74.             * padding1:  provides a buffer between the edge of the canvas and the start of the text nodes
  75.             * linV:      multiple vertical linear flows which layout parent and child text nodes
  76.             * space:     between each linV node
  77.             * padding2:  provides a buffer between the end of the text nodes and the tip of the arrow
  78.             * negArrow:  repositions layout back at the beginning so the arrow can be placed behind everything
  79.             * backgroundArrow: the arrow shape behind the text -->
  80.         <layoutNode name="linH">
  81.             <choose>
  82.                 <!-- Toggle the direction of the linear flow on reverse diagram between starting
  83.                 from the left (first case) and starting from the right (second case) -->
  84.                 <if func="var" arg="dir" op="equ" val="norm">
  85.                     <alg type="lin">
  86.                         <param type="linDir" val="fromL" />
  87.                         <param type="nodeVertAlign" val="t" />
  88.                     </alg>
  89.                 </if>
  90.                 <else>
  91.                     <alg type="lin">
  92.                         <param type="linDir" val="fromR" />
  93.                         <param type="nodeVertAlign" val="t" />
  94.                     </alg>
  95.                 </else>
  96.             </choose>
  97.             <shape />
  98.             <presOf />
  99.             <constrLst>
  100.                 <!-- Font size equalities -->
  101.                 <constr type="primFontSz" for="des" forName="parTx" val="65" />
  102.                 <constr op="equ" type="primFontSz" for="des" forName="desTx" refType="primFontSz" refFor="des" refForName="parTx" />
  103.                 <!-- Heights of text nodes -->
  104.                 <constr type="h" for="des" forName="parTx" refType="primFontSz" refFor="des" refForName="parTx" />
  105.                 <constr type="h" for="des" forName="desTx" refType="primFontSz" refFor="des" refForName="parTx" fact="0.5" />
  106.                 <constr op="equ" type="h" for="des" forName="parTx" />
  107.                 <constr op="equ" type="h" for="des" forName="desTx" />
  108.                 <!-- Heights of nodes which need to adjust with parTx.h -->
  109.                 <constr type="h" for="ch" forName="backgroundArrow" refType="primFontSz" refFor="des" refForName="parTx" fact="2" />
  110.                 <constr op="lte" type="h" for="ch" forName="backgroundArrow" refType="h" refFor="des" refForName="parTx" fact="2" />
  111.                 <constr op="gte" type="h" for="ch" forName="backgroundArrow" refType="h" refFor="des" refForName="parTx" fact="2" />
  112.                 <constr type="h" for="des" forName="spVertical1" refType="primFontSz" refFor="des" refForName="parTx" fact="0.5" />
  113.                 <constr op="lte" type="h" for="des" forName="spVertical1" refType="h" refFor="des" refForName="parTx" fact="0.5" />
  114.                 <constr op="gte" type="h" for="des" forName="spVertical1" refType="h" refFor="des" refForName="parTx" fact="0.5" />
  115.                 <constr type="h" for="des" forName="spVertical2" refType="primFontSz" refFor="des" refForName="parTx" fact="0.5" />
  116.                 <constr op="lte" type="h" for="des" forName="spVertical2" refType="h" refFor="des" refForName="parTx" fact="0.5" />
  117.                 <constr op="gte" type="h" for="des" forName="spVertical2" refType="h" refFor="des" refForName="parTx" fact="0.5" />
  118.                 <constr type="h" for="des" forName="spVertical3" refType="primFontSz" refFor="des" refForName="parTx" fact="-0.4" />
  119.                 <constr op="lte" type="h" for="des" forName="spVertical3" refType="h" refFor="des" refForName="parTx" fact="-0.4" />
  120.                 <constr op="gte" type="h" for="des" forName="spVertical3" refType="h" refFor="des" refForName="parTx" fact="-0.4" />
  121.                 <!-- Initial widths of the nodes -->
  122.                 <constr type="w" for="ch" forName="backgroundArrow" refType="w" />
  123.                 <constr type="w" for="ch" forName="negArrow" refType="w" fact="-1" />
  124.                 <constr type="w" for="ch" forName="linV" refType="w" />
  125.                 <constr type="w" for="ch" forName="space" refType="w" refFor="ch" refForName="linV" fact="0.2" />
  126.                 <constr type="w" for="ch" forName="padding1" refType="w" fact="0.08" />
  127.                 <!-- userP is the distance from the edge of the text to the arrow point -->
  128.                 <constr type="userP" />
  129.                 <constr type="w" for="ch" forName="padding2" refType="userP" />
  130.             </constrLst>
  131.             <ruleLst>
  132.                 <rule type="w" for="ch" forName="linV" val="0" />
  133.                 <rule type="primFontSz" for="des" forName="parTx" val="5" />
  134.             </ruleLst>
  135.             <layoutNode name="padding1">
  136.                 <alg type="sp" />
  137.                 <shape />
  138.                 <presOf />
  139.                 <constrLst />
  140.                 <ruleLst />
  141.             </layoutNode>
  142.             <!-- linV lays out parent and child text vertically and consists of:
  143.                 spVertical1: space between top of arrow and top of parTx
  144.                 parTx:       parent text
  145.                 spVertical2: space between bottom of arrow and bottom of parTx, in case desTx doesn't use all this room
  146.                 spVertical3: undo spVertical2 so desTx is immediately below parTx
  147.                 desTx:       descendant text -->
  148.             <forEach axis="ch" ptType="node">
  149.                 <layoutNode name="linV">
  150.                     <alg type="lin">
  151.                         <param type="linDir" val="fromT" />
  152.                     </alg>
  153.                     <shape />
  154.                     <presOf />
  155.                     <constrLst>
  156.                         <constr type="w" for="ch" forName="spVertical1" refType="w" />
  157.                         <constr type="w" for="ch" forName="parTx" refType="w" />
  158.                         <constr type="w" for="ch" forName="spVertical2" refType="w" />
  159.                         <constr type="w" for="ch" forName="spVertical3" refType="w" />
  160.                         <constr type="w" for="ch" forName="desTx" refType="w" />
  161.                     </constrLst>
  162.                     <ruleLst />
  163.                     <layoutNode name="spVertical1">
  164.                         <alg type="sp" />
  165.                         <shape />
  166.                         <presOf />
  167.                         <constrLst />
  168.                         <ruleLst />
  169.                     </layoutNode>
  170.                     <layoutNode name="parTx" styleLbl="revTx">
  171.                         <varLst>
  172.                             <chMax val="0" />
  173.                             <chPref val="0" />
  174.                             <bulletEnabled val="true" />
  175.                         </varLst>
  176.                         <choose>
  177.                             <if axis="root des" ptType="all node" func="maxDepth" op="gt" val="1">
  178.                                 <alg type="tx">
  179.                                     <param type="parTxLTRAlign" val="l" />
  180.                                     <param type="parTxRTLAlign" val="r" />
  181.                                 </alg>
  182.                             </if>
  183.                             <else>
  184.                                 <alg type="tx">
  185.                                     <param type="parTxLTRAlign" val="ctr" />
  186.                                     <param type="parTxRTLAlign" val="ctr" />
  187.                                 </alg>
  188.                             </else>
  189.                         </choose>
  190.                         <shape type="rect" />
  191.                         <presOf axis="self" ptType="node" />
  192.                         <choose>
  193.                             <if func="var" arg="dir" op="equ" val="norm">
  194.                                 <!-- PARENT TEXT:  Left to right direction. -->
  195.                                 <constrLst>
  196.                                     <!-- userT will contain the maximum value height can grow to -->
  197.                                     <constr type="userT" />
  198.                                     <constr op="lte" type="h" refType="userT" />
  199.                                     <!-- margins -->
  200.                                     <constr type="tMarg" refType="primFontSz" fact="0.8" />
  201.                                     <constr type="bMarg" refType="tMarg" />
  202.                                     <constr type="lMarg" val="0" />
  203.                                     <constr type="rMarg" val="0" />
  204.                                 </constrLst>
  205.                             </if>
  206.                             <else>
  207.                                 <!-- PARENT TEXT:  Right to left direction. -->
  208.                                 <constrLst>
  209.                                     <!-- userT will contain the maximum value height can grow to -->
  210.                                     <constr type="userT" />
  211.                                     <constr op="lte" type="h" refType="userT" />
  212.                                     <!-- margins -->
  213.                                     <constr type="tMarg" refType="primFontSz" fact="0.8" />
  214.                                     <constr type="bMarg" refType="tMarg" />
  215.                                     <constr type="lMarg" val="0" />
  216.                                     <constr type="rMarg" val="0" />
  217.                                 </constrLst>
  218.                             </else>
  219.                         </choose>
  220.                         <ruleLst>
  221.                             <rule type="h" val="INF" />
  222.                         </ruleLst>
  223.                     </layoutNode>
  224.                     <layoutNode name="spVertical2">
  225.                         <alg type="sp" />
  226.                         <shape />
  227.                         <presOf />
  228.                         <constrLst />
  229.                         <ruleLst />
  230.                     </layoutNode>
  231.                     <layoutNode name="spVertical3">
  232.                         <alg type="sp" />
  233.                         <shape />
  234.                         <presOf />
  235.                         <constrLst />
  236.                         <ruleLst />
  237.                     </layoutNode>
  238.                     <choose>
  239.                         <if axis="ch" ptType="node" func="cnt" op="gte" val="1">
  240.                             <layoutNode name="desTx" styleLbl="revTx">
  241.                                 <varLst>
  242.                                     <bulletEnabled val="true" />
  243.                                 </varLst>
  244.                                 <alg type="tx">
  245.                                     <param type="stBulletLvl" val="1" />
  246.                                 </alg>
  247.                                 <shape type="rect" />
  248.                                 <presOf axis="des" ptType="node" />
  249.                                 <constrLst>
  250.                                     <!-- Set the margins for the descendant text node -->
  251.                                     <constr type="tMarg" val="0" />
  252.                                     <constr type="bMarg" val="0" />
  253.                                     <constr type="rMarg" val="0" />
  254.                                     <constr type="lMarg" val="0" />
  255.                                 </constrLst>
  256.                                 <ruleLst>
  257.                                     <rule type="h" val="INF" />
  258.                                 </ruleLst>
  259.                             </layoutNode>
  260.                         </if>
  261.                     </choose>
  262.                 </layoutNode>
  263.                 <forEach axis="followSib" ptType="sibTrans" cnt="1">
  264.                     <layoutNode name="space">
  265.                         <alg type="sp" />
  266.                         <shape />
  267.                         <presOf />
  268.                         <constrLst />
  269.                         <ruleLst />
  270.                     </layoutNode>
  271.                 </forEach>
  272.             </forEach>
  273.             <layoutNode name="padding2">
  274.                 <alg type="sp" />
  275.                 <shape />
  276.                 <presOf />
  277.                 <constrLst />
  278.                 <ruleLst />
  279.             </layoutNode>
  280.             <layoutNode name="negArrow">
  281.                 <alg type="sp" />
  282.                 <shape />
  283.                 <presOf />
  284.                 <constrLst />
  285.                 <ruleLst />
  286.             </layoutNode>
  287.             <layoutNode name="backgroundArrow" styleLbl="node1">
  288.                 <alg type="sp" />
  289.                 <choose>
  290.                     <if func="var" arg="dir" op="equ" val="norm">
  291.                         <shape type="rightArrow" />
  292.                     </if>
  293.                     <else>
  294.                         <shape type="leftArrow" />
  295.                     </else>
  296.                 </choose>
  297.                 <presOf />
  298.                 <constrLst />
  299.                 <ruleLst />
  300.             </layoutNode>
  301.         </layoutNode>
  302.     </layoutNode>
  303. </layoutDef>