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 >
Wrap
Extensible Markup Language
|
2010-03-13
|
12KB
|
303 lines
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft Corporation. All rights reserved. -->
<layoutDef xmlns="http://schemas.openxmlformats.org/drawingml/2006/diagram" uniqueId="urn:microsoft.com/office/officeart/2005/8/layout/hProcess3">
<title val="Continuous Arrow Process" />
<desc val="" />
<catLst>
<cat type="process" pri="6000" />
</catLst>
<styleData>
<dataModel>
<ptLst>
<pt modelId="0" type="doc" />
<pt modelId="1" type="node" />
<pt modelId="2" type="node" />
</ptLst>
<cxnLst>
<cxn modelId="3" type="parOf" srcId="0" destId="1" srcOrd="0" destOrd="0" presId="" />
<cxn modelId="4" type="parOf" srcId="0" destId="2" srcOrd="1" destOrd="0" presId="" />
</cxnLst>
</dataModel>
</styleData>
<clrData>
<dataModel>
<ptLst>
<pt modelId="0" type="doc" />
<pt modelId="1" type="node" />
<pt modelId="2" type="node" />
<pt modelId="3" type="node" />
<pt modelId="4" type="node" />
</ptLst>
<cxnLst>
<cxn modelId="5" type="parOf" srcId="0" destId="1" srcOrd="0" destOrd="0" presId="" />
<cxn modelId="6" type="parOf" srcId="0" destId="2" srcOrd="1" destOrd="0" presId="" />
<cxn modelId="7" type="parOf" srcId="0" destId="3" srcOrd="2" destOrd="0" presId="" />
<cxn modelId="8" type="parOf" srcId="0" destId="4" srcOrd="3" destOrd="0" presId="" />
</cxnLst>
</dataModel>
</clrData>
<layoutNode chOrder="t">
<varLst>
<dir val="norm" />
<animLvl val="lvl" />
<resizeHandles val="exact" />
</varLst>
<alg type="composite" />
<shape />
<presOf />
<constrLst>
<!-- Node which determines the maximum height parTx is allowed to grow to -->
<constr type="w" for="ch" forName="dummy" refType="w" />
<constr type="h" for="ch" forName="dummy" refType="h" />
<constr op="lte" type="h" for="ch" forName="dummy" refType="w" refFor="ch" refForName="dummy" fact="0.4" />
<constr type="ctrX" for="ch" forName="dummy" refType="w" fact="0.5" />
<constr type="ctrY" for="ch" forName="dummy" refType="h" fact="0.5" />
<!-- Node which contains all the text -->
<constr type="w" for="ch" forName="linH" refType="w" />
<constr type="h" for="ch" forName="linH" refType="h" />
<constr type="ctrX" for="ch" forName="linH" refType="w" fact="0.5" />
<constr type="ctrY" for="ch" forName="linH" refType="h" fact="0.5" />
<!-- ch.linH.userP is the distance from the edge of the text to the arrow point -->
<constr type="userP" for="ch" forName="linH" refType="h" refFor="ch" refForName="dummy" fact="0.25" />
<!-- des.parTx.userT represents the tallest parTx can grow -->
<constr type="userT" for="des" forName="parTx" refType="w" refFor="ch" refForName="dummy" fact="0.2" />
</constrLst>
<ruleLst />
<layoutNode name="dummy">
<alg type="sp" />
<shape />
<presOf />
<constrLst />
<ruleLst />
</layoutNode>
<!-- linH lays out children horizontally and consists of:
* padding1: provides a buffer between the edge of the canvas and the start of the text nodes
* linV: multiple vertical linear flows which layout parent and child text nodes
* space: between each linV node
* padding2: provides a buffer between the end of the text nodes and the tip of the arrow
* negArrow: repositions layout back at the beginning so the arrow can be placed behind everything
* backgroundArrow: the arrow shape behind the text -->
<layoutNode name="linH">
<choose>
<!-- Toggle the direction of the linear flow on reverse diagram between starting
from the left (first case) and starting from the right (second case) -->
<if func="var" arg="dir" op="equ" val="norm">
<alg type="lin">
<param type="linDir" val="fromL" />
<param type="nodeVertAlign" val="t" />
</alg>
</if>
<else>
<alg type="lin">
<param type="linDir" val="fromR" />
<param type="nodeVertAlign" val="t" />
</alg>
</else>
</choose>
<shape />
<presOf />
<constrLst>
<!-- Font size equalities -->
<constr type="primFontSz" for="des" forName="parTx" val="65" />
<constr op="equ" type="primFontSz" for="des" forName="desTx" refType="primFontSz" refFor="des" refForName="parTx" />
<!-- Heights of text nodes -->
<constr type="h" for="des" forName="parTx" refType="primFontSz" refFor="des" refForName="parTx" />
<constr type="h" for="des" forName="desTx" refType="primFontSz" refFor="des" refForName="parTx" fact="0.5" />
<constr op="equ" type="h" for="des" forName="parTx" />
<constr op="equ" type="h" for="des" forName="desTx" />
<!-- Heights of nodes which need to adjust with parTx.h -->
<constr type="h" for="ch" forName="backgroundArrow" refType="primFontSz" refFor="des" refForName="parTx" fact="2" />
<constr op="lte" type="h" for="ch" forName="backgroundArrow" refType="h" refFor="des" refForName="parTx" fact="2" />
<constr op="gte" type="h" for="ch" forName="backgroundArrow" refType="h" refFor="des" refForName="parTx" fact="2" />
<constr type="h" for="des" forName="spVertical1" refType="primFontSz" refFor="des" refForName="parTx" fact="0.5" />
<constr op="lte" type="h" for="des" forName="spVertical1" refType="h" refFor="des" refForName="parTx" fact="0.5" />
<constr op="gte" type="h" for="des" forName="spVertical1" refType="h" refFor="des" refForName="parTx" fact="0.5" />
<constr type="h" for="des" forName="spVertical2" refType="primFontSz" refFor="des" refForName="parTx" fact="0.5" />
<constr op="lte" type="h" for="des" forName="spVertical2" refType="h" refFor="des" refForName="parTx" fact="0.5" />
<constr op="gte" type="h" for="des" forName="spVertical2" refType="h" refFor="des" refForName="parTx" fact="0.5" />
<constr type="h" for="des" forName="spVertical3" refType="primFontSz" refFor="des" refForName="parTx" fact="-0.4" />
<constr op="lte" type="h" for="des" forName="spVertical3" refType="h" refFor="des" refForName="parTx" fact="-0.4" />
<constr op="gte" type="h" for="des" forName="spVertical3" refType="h" refFor="des" refForName="parTx" fact="-0.4" />
<!-- Initial widths of the nodes -->
<constr type="w" for="ch" forName="backgroundArrow" refType="w" />
<constr type="w" for="ch" forName="negArrow" refType="w" fact="-1" />
<constr type="w" for="ch" forName="linV" refType="w" />
<constr type="w" for="ch" forName="space" refType="w" refFor="ch" refForName="linV" fact="0.2" />
<constr type="w" for="ch" forName="padding1" refType="w" fact="0.08" />
<!-- userP is the distance from the edge of the text to the arrow point -->
<constr type="userP" />
<constr type="w" for="ch" forName="padding2" refType="userP" />
</constrLst>
<ruleLst>
<rule type="w" for="ch" forName="linV" val="0" />
<rule type="primFontSz" for="des" forName="parTx" val="5" />
</ruleLst>
<layoutNode name="padding1">
<alg type="sp" />
<shape />
<presOf />
<constrLst />
<ruleLst />
</layoutNode>
<!-- linV lays out parent and child text vertically and consists of:
spVertical1: space between top of arrow and top of parTx
parTx: parent text
spVertical2: space between bottom of arrow and bottom of parTx, in case desTx doesn't use all this room
spVertical3: undo spVertical2 so desTx is immediately below parTx
desTx: descendant text -->
<forEach axis="ch" ptType="node">
<layoutNode name="linV">
<alg type="lin">
<param type="linDir" val="fromT" />
</alg>
<shape />
<presOf />
<constrLst>
<constr type="w" for="ch" forName="spVertical1" refType="w" />
<constr type="w" for="ch" forName="parTx" refType="w" />
<constr type="w" for="ch" forName="spVertical2" refType="w" />
<constr type="w" for="ch" forName="spVertical3" refType="w" />
<constr type="w" for="ch" forName="desTx" refType="w" />
</constrLst>
<ruleLst />
<layoutNode name="spVertical1">
<alg type="sp" />
<shape />
<presOf />
<constrLst />
<ruleLst />
</layoutNode>
<layoutNode name="parTx" styleLbl="revTx">
<varLst>
<chMax val="0" />
<chPref val="0" />
<bulletEnabled val="true" />
</varLst>
<choose>
<if axis="root des" ptType="all node" func="maxDepth" op="gt" val="1">
<alg type="tx">
<param type="parTxLTRAlign" val="l" />
<param type="parTxRTLAlign" val="r" />
</alg>
</if>
<else>
<alg type="tx">
<param type="parTxLTRAlign" val="ctr" />
<param type="parTxRTLAlign" val="ctr" />
</alg>
</else>
</choose>
<shape type="rect" />
<presOf axis="self" ptType="node" />
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<!-- PARENT TEXT: Left to right direction. -->
<constrLst>
<!-- userT will contain the maximum value height can grow to -->
<constr type="userT" />
<constr op="lte" type="h" refType="userT" />
<!-- margins -->
<constr type="tMarg" refType="primFontSz" fact="0.8" />
<constr type="bMarg" refType="tMarg" />
<constr type="lMarg" val="0" />
<constr type="rMarg" val="0" />
</constrLst>
</if>
<else>
<!-- PARENT TEXT: Right to left direction. -->
<constrLst>
<!-- userT will contain the maximum value height can grow to -->
<constr type="userT" />
<constr op="lte" type="h" refType="userT" />
<!-- margins -->
<constr type="tMarg" refType="primFontSz" fact="0.8" />
<constr type="bMarg" refType="tMarg" />
<constr type="lMarg" val="0" />
<constr type="rMarg" val="0" />
</constrLst>
</else>
</choose>
<ruleLst>
<rule type="h" val="INF" />
</ruleLst>
</layoutNode>
<layoutNode name="spVertical2">
<alg type="sp" />
<shape />
<presOf />
<constrLst />
<ruleLst />
</layoutNode>
<layoutNode name="spVertical3">
<alg type="sp" />
<shape />
<presOf />
<constrLst />
<ruleLst />
</layoutNode>
<choose>
<if axis="ch" ptType="node" func="cnt" op="gte" val="1">
<layoutNode name="desTx" styleLbl="revTx">
<varLst>
<bulletEnabled val="true" />
</varLst>
<alg type="tx">
<param type="stBulletLvl" val="1" />
</alg>
<shape type="rect" />
<presOf axis="des" ptType="node" />
<constrLst>
<!-- Set the margins for the descendant text node -->
<constr type="tMarg" val="0" />
<constr type="bMarg" val="0" />
<constr type="rMarg" val="0" />
<constr type="lMarg" val="0" />
</constrLst>
<ruleLst>
<rule type="h" val="INF" />
</ruleLst>
</layoutNode>
</if>
</choose>
</layoutNode>
<forEach axis="followSib" ptType="sibTrans" cnt="1">
<layoutNode name="space">
<alg type="sp" />
<shape />
<presOf />
<constrLst />
<ruleLst />
</layoutNode>
</forEach>
</forEach>
<layoutNode name="padding2">
<alg type="sp" />
<shape />
<presOf />
<constrLst />
<ruleLst />
</layoutNode>
<layoutNode name="negArrow">
<alg type="sp" />
<shape />
<presOf />
<constrLst />
<ruleLst />
</layoutNode>
<layoutNode name="backgroundArrow" styleLbl="node1">
<alg type="sp" />
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<shape type="rightArrow" />
</if>
<else>
<shape type="leftArrow" />
</else>
</choose>
<presOf />
<constrLst />
<ruleLst />
</layoutNode>
</layoutNode>
</layoutNode>
</layoutDef>