/usr/share/mozart/doc/demo/node19.html is in mozart-doc 1.4.0-8ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Graphical interface for computing solutions: Compute.oz</TITLE><LINK href="ozdoc.css" rel="stylesheet" type="text/css"></HEAD><BODY><TABLE align="center" border="0" cellpadding="6" cellspacing="6" class="nav"><TR bgcolor="#DDDDDD"><TD><A href="node18.html#code.cutting.edit"><< Prev</A></TD><TD><A href="cutting.html">- Up -</A></TD><TD><A href="node20.html#code.cutting.configure">Next >></A></TD></TR></TABLE><DIV class="unnumbered" id="code.cutting.compute"><H3><A name="code.cutting.compute">Graphical interface for computing solutions: <CODE>Compute.oz</CODE></A></H3><P class="margin"><A href="Cutting/Compute.oz">Source File</A></P><P> </P><BLOCKQUOTE><PRE><SPAN class="keyword">functor</SPAN> <BR> <BR><SPAN class="keyword">import</SPAN> <BR> Tk TkTools Search<BR> <BR> Script(compile: Compile)<BR> Configure(colors: Colors<BR> delays: Delays<BR> fonts: Fonts)<BR> <BR> <BR><SPAN class="keyword">export</SPAN> <BR> page: ComputePage<BR> <BR><SPAN class="keyword">define</SPAN> <BR> <BR> BgColor = Colors<SPAN class="keyword">.</SPAN>bg<BR> <BR> BadColor = Colors<SPAN class="keyword">.</SPAN>bad<BR> OkayColor = Colors<SPAN class="keyword">.</SPAN>okay<BR> GoodColor = Colors<SPAN class="keyword">.</SPAN>good<BR> NeutralColor = Colors<SPAN class="keyword">.</SPAN>neutral<BR> <BR> GlassColor = Colors<SPAN class="keyword">.</SPAN>glass<BR> CutColor = Colors<SPAN class="keyword">.</SPAN>cut<BR> SketchColor = Colors<SPAN class="keyword">.</SPAN>sketch<BR> <BR> CanvasBd = 10<BR> PlateWidth = 15<BR> ButtonWidth = 10<BR> PlateBd = 3<BR> Pad = 3<BR> CanvasWidth = 250<BR> CanvasHeight = 200<BR> <BR> AnimDelay = Delays<SPAN class="keyword">.</SPAN>wait<BR> CutDelay = Delays<SPAN class="keyword">.</SPAN>cut<BR> <BR> <SPAN class="keyword">class</SPAN> <SPAN class="type">PlateCanvas</SPAN> <BR> <SPAN class="keyword">from</SPAN><SPAN class="type"> Tk.canvas</SPAN> <BR> <BR> <SPAN class="keyword">attr</SPAN> <BR> Sol: <SPAN class="keyword">unit</SPAN> <BR> BreakAnim: <SPAN class="keyword">unit</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">init</SPAN>(parent:P)<BR> Tk<SPAN class="keyword">.</SPAN>canvas<SPAN class="keyword">,</SPAN>tkInit(parent: P<BR> bg: BgColor<BR> width: CanvasWidth<BR> height: CanvasHeight)<BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">sketch</SPAN>(Spec)<BR> X0 = 1 <SPAN class="keyword">+</SPAN> CanvasBd<BR> X1 = X0 <SPAN class="keyword">+</SPAN> Spec<SPAN class="keyword">.</SPAN>x<SPAN class="keyword">*</SPAN>PlateWidth <SPAN class="keyword">+</SPAN> 1<BR> Y0 = 1 <SPAN class="keyword">+</SPAN> CanvasBd<BR> Y1 = Y0 <SPAN class="keyword">+</SPAN> Spec<SPAN class="keyword">.</SPAN>y<SPAN class="keyword">*</SPAN>PlateWidth <SPAN class="keyword">+</SPAN> 1<BR> <SPAN class="keyword">in</SPAN> <BR> Tk<SPAN class="keyword">.</SPAN>canvas<SPAN class="keyword">,</SPAN>tk(create rectangle X0 Y0 X1 Y1<BR> fill: SketchColor<BR> outline: SketchColor<BR> width: 0)<BR> Tk<SPAN class="keyword">.</SPAN>canvas<SPAN class="keyword">,</SPAN>tk(configure<BR> scrollregion:q(0 0<BR> {Max Spec<SPAN class="keyword">.</SPAN>x <SPAN class="keyword">*</SPAN> PlateWidth <SPAN class="keyword">+</SPAN> 2 <SPAN class="keyword">*</SPAN> CanvasBd<BR> CanvasWidth}<BR> {Max Spec<SPAN class="keyword">.</SPAN>y <SPAN class="keyword">*</SPAN> PlateWidth <SPAN class="keyword">+</SPAN> 2 <SPAN class="keyword">*</SPAN> CanvasBd<BR> CanvasHeight}))<BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">display</SPAN>(S)<BR> Sol <SPAN class="keyword"><-</SPAN> S<BR> D = S<SPAN class="keyword">.</SPAN>d<BR> X = S<SPAN class="keyword">.</SPAN>x<BR> Y = S<SPAN class="keyword">.</SPAN>y<BR> <SPAN class="keyword">in</SPAN> <BR> {For 1 {Width X} 1<BR> <SPAN class="keyword">proc</SPAN><SPAN class="variablename"> </SPAN>{<SPAN class="functionname">$</SPAN> I}<BR> X0 = X<SPAN class="keyword">.</SPAN>I <SPAN class="keyword">*</SPAN> PlateWidth <SPAN class="keyword">+</SPAN> 1 <SPAN class="keyword">+</SPAN> PlateBd <SPAN class="keyword">+</SPAN> CanvasBd<BR> X1 = X0 <SPAN class="keyword">+</SPAN> D<SPAN class="keyword">.</SPAN>I<SPAN class="keyword">*</SPAN>PlateWidth <SPAN class="keyword">-</SPAN> 1 <SPAN class="keyword">-</SPAN> PlateBd<BR> Y0 = Y<SPAN class="keyword">.</SPAN>I <SPAN class="keyword">*</SPAN> PlateWidth <SPAN class="keyword">+</SPAN> 1 <SPAN class="keyword">+</SPAN> PlateBd <SPAN class="keyword">+</SPAN> CanvasBd<BR> Y1 = Y0 <SPAN class="keyword">+</SPAN> D<SPAN class="keyword">.</SPAN>I<SPAN class="keyword">*</SPAN>PlateWidth <SPAN class="keyword">-</SPAN> 1 <SPAN class="keyword">-</SPAN> PlateBd<BR> <SPAN class="keyword">in</SPAN> <BR> {<SPAN class="keyword">self</SPAN> tk(create rectangle X0 Y0 X1 Y1<BR> fill: GlassColor<BR> width: 1<BR> outline: black)}<BR> <SPAN class="keyword">end</SPAN>}<BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">Animate</SPAN>(CutInfo x:X y:Y)<BR> <SPAN class="keyword">if</SPAN> {IsFree <SPAN class="keyword">@</SPAN>BreakAnim} <SPAN class="keyword">then</SPAN> <BR> X0<SPAN class="keyword">#</SPAN>X1=X Y0<SPAN class="keyword">#</SPAN>Y1=Y<BR> <SPAN class="keyword">in</SPAN> <BR> <SPAN class="keyword">case</SPAN> CutInfo<BR> <SPAN class="keyword">of</SPAN> nil <SPAN class="keyword">then</SPAN> <SPAN class="keyword">skip</SPAN> <BR> <SPAN class="keyword">[]</SPAN> info(cut:Cut dir:Dir L R) <SPAN class="keyword">then</SPAN> <BR> <SPAN class="keyword">case</SPAN> Dir<BR> <SPAN class="keyword">of</SPAN> y <SPAN class="keyword">then</SPAN> <BR> Tk<SPAN class="keyword">.</SPAN>canvas<SPAN class="keyword">,</SPAN>tk(create line<BR> Cut<SPAN class="keyword">*</SPAN>PlateWidth<SPAN class="keyword">+</SPAN>CanvasBd<SPAN class="keyword">+</SPAN>2<BR> Y0<SPAN class="keyword">*</SPAN>PlateWidth<SPAN class="keyword">+</SPAN>CanvasBd<SPAN class="keyword">+</SPAN>2<BR> Cut<SPAN class="keyword">*</SPAN>PlateWidth<SPAN class="keyword">+</SPAN>CanvasBd<SPAN class="keyword">+</SPAN>2<BR> Y1<SPAN class="keyword">*</SPAN>PlateWidth<SPAN class="keyword">+</SPAN>CanvasBd<SPAN class="keyword">+</SPAN>2<BR> tags: animate<BR> width: 1<BR> fill: CutColor)<BR> {WaitOr <SPAN class="keyword">@</SPAN>BreakAnim {Alarm CutDelay}}<BR> PlateCanvas<SPAN class="keyword">,</SPAN>Animate(L x:X0<SPAN class="keyword">#</SPAN>Cut y:Y0<SPAN class="keyword">#</SPAN>Y1)<BR> PlateCanvas<SPAN class="keyword">,</SPAN>Animate(R x:Cut<SPAN class="keyword">#</SPAN>X1 y:Y0<SPAN class="keyword">#</SPAN>Y1)<BR> <SPAN class="keyword">[]</SPAN> x <SPAN class="keyword">then</SPAN> <BR> Tk<SPAN class="keyword">.</SPAN>canvas<SPAN class="keyword">,</SPAN>tk(create line<BR> X0<SPAN class="keyword">*</SPAN>PlateWidth<SPAN class="keyword">+</SPAN>CanvasBd<SPAN class="keyword">+</SPAN>2<BR> Cut<SPAN class="keyword">*</SPAN>PlateWidth<SPAN class="keyword">+</SPAN>CanvasBd<SPAN class="keyword">+</SPAN>2<BR> X1<SPAN class="keyword">*</SPAN>PlateWidth<SPAN class="keyword">+</SPAN>CanvasBd<SPAN class="keyword">+</SPAN>2<BR> Cut<SPAN class="keyword">*</SPAN>PlateWidth<SPAN class="keyword">+</SPAN>CanvasBd<SPAN class="keyword">+</SPAN>2<BR> tags: animate<BR> width: 1<BR> fill: CutColor)<BR> {WaitOr <SPAN class="keyword">@</SPAN>BreakAnim {Alarm CutDelay}}<BR> PlateCanvas<SPAN class="keyword">,</SPAN>Animate(L x:X0<SPAN class="keyword">#</SPAN>X1 y:Y0<SPAN class="keyword">#</SPAN>Cut)<BR> PlateCanvas<SPAN class="keyword">,</SPAN>Animate(R x:X0<SPAN class="keyword">#</SPAN>X1 y:Cut<SPAN class="keyword">#</SPAN>Y1)<BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">animate</SPAN> <BR> S = <SPAN class="keyword">@</SPAN>Sol<BR> <SPAN class="keyword">in</SPAN> <BR> BreakAnim <SPAN class="keyword"><-</SPAN> _<BR> PlateCanvas<SPAN class="keyword">,</SPAN>Animate(S<SPAN class="keyword">.</SPAN>cuts x:0<SPAN class="keyword">#</SPAN>S<SPAN class="keyword">.</SPAN>dx y:0<SPAN class="keyword">#</SPAN>S<SPAN class="keyword">.</SPAN>dy)<BR> {WaitOr <SPAN class="keyword">@</SPAN>BreakAnim {Alarm AnimDelay}}<BR> Tk<SPAN class="keyword">.</SPAN>canvas<SPAN class="keyword">,</SPAN>tk(delete animate)<BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">stopAnim</SPAN> <BR> <SPAN class="keyword">@</SPAN>BreakAnim = <SPAN class="keyword">unit</SPAN> <BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">clear</SPAN> <BR> Sol <SPAN class="keyword"><-</SPAN> <SPAN class="keyword">unit</SPAN> <BR> Tk<SPAN class="keyword">.</SPAN>canvas<SPAN class="keyword">,</SPAN>tk(delete all)<BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <BR> <SPAN class="keyword">class</SPAN> <SPAN class="type">ComputePage</SPAN> <BR> <SPAN class="keyword">from</SPAN><SPAN class="type"> TkTools.note</SPAN> <BR> <BR> <SPAN class="keyword">feat</SPAN> <BR> start stop animate plate edit status<BR> <BR> <SPAN class="keyword">attr</SPAN> <BR> script: <SPAN class="keyword">unit</SPAN> <BR> stopper: <SPAN class="keyword">false</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">init</SPAN>(parent:P edit:E)<BR> TkTools<SPAN class="keyword">.</SPAN>note<SPAN class="keyword">,</SPAN>tkInit(parent:P text:<SPAN class="string">'Compute'</SPAN>)<BR> <BR> ButtonFrame = {New Tk<SPAN class="keyword">.</SPAN>frame tkInit(parent:<SPAN class="keyword">self</SPAN>)}<BR> <BR> Start = {New Tk<SPAN class="keyword">.</SPAN>button tkInit(parent: ButtonFrame<BR> text: <SPAN class="string">'Start'</SPAN> <BR> width: ButtonWidth<BR> action: <SPAN class="keyword">self</SPAN> <SPAN class="keyword">#</SPAN> start<BR> font: Fonts<SPAN class="keyword">.</SPAN>normal)}<BR> Stop = {New Tk<SPAN class="keyword">.</SPAN>button tkInit(parent: ButtonFrame<BR> text: <SPAN class="string">'Stop'</SPAN> <BR> width: ButtonWidth<BR> action: <SPAN class="keyword">self</SPAN> <SPAN class="keyword">#</SPAN> stop<BR> state: disabled<BR> font: Fonts<SPAN class="keyword">.</SPAN>normal)}<BR> Anim = {New Tk<SPAN class="keyword">.</SPAN>button tkInit(parent: ButtonFrame<BR> text: <SPAN class="string">'Animate'</SPAN> <BR> width: ButtonWidth<BR> action: <SPAN class="keyword">self</SPAN> <SPAN class="keyword">#</SPAN> animate<BR> state: disabled<BR> font: Fonts<SPAN class="keyword">.</SPAN>normal)}<BR> <BR> GlassFrame = {New Tk<SPAN class="keyword">.</SPAN>frame tkInit(parent:<SPAN class="keyword">self</SPAN>)}<BR> <BR> PC = {New PlateCanvas init(parent: GlassFrame)}<BR> H = {New Tk<SPAN class="keyword">.</SPAN>scrollbar tkInit(parent:GlassFrame orient:horizontal<BR> width:13)}<BR> V = {New Tk<SPAN class="keyword">.</SPAN>scrollbar tkInit(parent:GlassFrame orient:vertical<BR> width:13)}<BR> Status = {New Tk<SPAN class="keyword">.</SPAN>label tkInit(parent: ButtonFrame<BR> font: Fonts<SPAN class="keyword">.</SPAN>normal<BR> text: <SPAN class="string">''</SPAN> <BR> width: 13<BR> bg: NeutralColor<BR> relief: sunken<BR> bd: 1)}<BR> <BR> <SPAN class="keyword">in</SPAN> <BR> {Tk<SPAN class="keyword">.</SPAN>addXScrollbar PC H}<BR> {Tk<SPAN class="keyword">.</SPAN>addYScrollbar PC V}<BR> {Tk<SPAN class="keyword">.</SPAN>batch [grid(columnconfigure GlassFrame 0 weight:1)<BR> grid(rowconfigure GlassFrame 0 weight:1)<BR> grid(PC row:0 column:0 sticky:nsew)<BR> grid(H row:1 column:0 sticky:we)<BR> grid(V row:0 column:1 sticky:ns)<BR> grid(columnconfigure <SPAN class="keyword">self</SPAN> 2 weight:1)<BR> grid(rowconfigure <SPAN class="keyword">self</SPAN> 1 weight:1)<BR> <BR> grid(row:1 column:1 padx:Pad pady:Pad Start)<BR> grid(row:2 column:1 padx:Pad pady:Pad Stop)<BR> grid(row:3 column:1 padx:Pad pady:Pad<BR> {New Tk<SPAN class="keyword">.</SPAN>canvas tkInit(parent:ButtonFrame<BR> width:0 height:20)})<BR> grid(row:4 column:1 padx:Pad pady:Pad Status)<BR> grid(row:5 column:1 padx:Pad pady:Pad<BR> {New Tk<SPAN class="keyword">.</SPAN>canvas tkInit(parent:ButtonFrame<BR> width:0 height:20)})<BR> grid(row:6 column:1 padx:Pad pady:Pad Anim)<BR> <BR> grid(row:1 column:1 ButtonFrame sticky:nw)<BR> grid(row:1 column:2 GlassFrame sticky:ne)<BR> ]}<BR> <SPAN class="keyword">self.</SPAN>start = Start<BR> <SPAN class="keyword">self.</SPAN>stop = Stop<BR> <SPAN class="keyword">self.</SPAN>animate = Anim<BR> <SPAN class="keyword">self.</SPAN>plate = PC<BR> <SPAN class="keyword">self.</SPAN>edit = E<BR> <SPAN class="keyword">self.</SPAN>status = Status<BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">start</SPAN> <BR> Script<BR> Stopper<BR> <SPAN class="keyword">in</SPAN> <BR> <SPAN class="keyword">lock</SPAN> <BR> Script = <SPAN class="keyword">@</SPAN>script<BR> stopper <SPAN class="keyword"><-</SPAN> Stopper<BR> {<SPAN class="keyword">self.</SPAN>start tk(configure state:disabled)}<BR> {<SPAN class="keyword">self.</SPAN>stop tk(configure state:normal)}<BR> {<SPAN class="keyword">self.</SPAN>status tk(configure bg:NeutralColor text:<SPAN class="string">'Computing.'</SPAN>)}<BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">case</SPAN> {Search<SPAN class="keyword">.</SPAN>one<SPAN class="keyword">.</SPAN>depth Script 1 ?Stopper}<BR> <SPAN class="keyword">of</SPAN> nil <SPAN class="keyword">then</SPAN> <BR> {<SPAN class="keyword">self.</SPAN>stop tk(configure state:disabled)}<BR> <SPAN class="keyword">if</SPAN> <SPAN class="keyword">@</SPAN>stopper<SPAN class="keyword">==true</SPAN> <SPAN class="keyword">then</SPAN> <BR> {<SPAN class="keyword">self.</SPAN>status tk(configure bg:OkayColor text:<SPAN class="string">'Stopped.'</SPAN>)}<BR> {<SPAN class="keyword">self.</SPAN>start tk(configure state:normal)}<BR> <SPAN class="keyword">else</SPAN> <BR> {<SPAN class="keyword">self.</SPAN>status tk(configure bg:BadColor text:<SPAN class="string">'No solution.'</SPAN>)}<BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">[]</SPAN> [Sol] <SPAN class="keyword">then</SPAN> <BR> {<SPAN class="keyword">self.</SPAN>stop tk(configure state:disabled)}<BR> {<SPAN class="keyword">self.</SPAN>plate display(Sol)}<BR> {<SPAN class="keyword">self.</SPAN>status tk(configure bg:GoodColor text:<SPAN class="string">'Okay.'</SPAN>)}<BR> {<SPAN class="keyword">self.</SPAN>animate tk(configure state:normal)}<BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">stop</SPAN> <BR> <SPAN class="keyword">lock</SPAN> <BR> S=<SPAN class="keyword">@</SPAN>stopper<BR> <SPAN class="keyword">in</SPAN> <BR> <SPAN class="keyword">if</SPAN> {Procedure<SPAN class="keyword">.</SPAN>is S} <SPAN class="keyword">then</SPAN> <BR> stopper <SPAN class="keyword"><-</SPAN> <SPAN class="keyword">true</SPAN> <BR> {S}<BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">animate</SPAN> <BR> <SPAN class="keyword">lock</SPAN> <BR> {<SPAN class="keyword">self.</SPAN>animate tk(configure state:disabled)}<BR> {<SPAN class="keyword">self.</SPAN>plate animate}<BR> {<SPAN class="keyword">self.</SPAN>animate tk(configure state:normal)}<BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">toBottom</SPAN> <BR> {<SPAN class="keyword">self.</SPAN>plate stopAnim}<BR> ComputePage<SPAN class="keyword">,</SPAN>stop<BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <SPAN class="keyword">meth</SPAN> <SPAN class="functionname">toTop</SPAN> <BR> <SPAN class="keyword">lock</SPAN> <BR> Spec = {<SPAN class="keyword">self.</SPAN>edit getSpec($)}<BR> <SPAN class="keyword">in</SPAN> <BR> {<SPAN class="keyword">self.</SPAN>stop tk(configure state:disabled)}<BR> {<SPAN class="keyword">self.</SPAN>animate tk(configure state:disabled)}<BR> {<SPAN class="keyword">self.</SPAN>plate clear}<BR> <SPAN class="keyword">if</SPAN> {Record<SPAN class="keyword">.</SPAN>foldL Spec<SPAN class="keyword">.</SPAN>squares Number<SPAN class="keyword">.</SPAN><SPAN class="string">'+'</SPAN> 0}<SPAN class="keyword">></SPAN>0 <SPAN class="keyword">then</SPAN> <BR> script <SPAN class="keyword"><-</SPAN> {Compile Spec}<BR> stopper <SPAN class="keyword"><-</SPAN> <SPAN class="keyword">false</SPAN> <BR> {<SPAN class="keyword">self.</SPAN>start tk(configure state:normal)}<BR> {<SPAN class="keyword">self.</SPAN>plate sketch(Spec)}<BR> {<SPAN class="keyword">self.</SPAN>status tk(configure bg:NeutralColor text:<SPAN class="string">''</SPAN>)}<BR> <SPAN class="keyword">else</SPAN> <BR> {<SPAN class="keyword">self.</SPAN>start tk(configure state:disabled)}<BR> {<SPAN class="keyword">self.</SPAN>status tk(configure bg:BadColor text:<SPAN class="string">'What?'</SPAN>)}<BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">end</SPAN> <BR> <SPAN class="keyword">end</SPAN> <BR> <BR> <SPAN class="keyword">end</SPAN> <BR> <BR><SPAN class="keyword">end</SPAN> <BR></PRE></BLOCKQUOTE><P></P></DIV><TABLE align="center" border="0" cellpadding="6" cellspacing="6" class="nav"><TR bgcolor="#DDDDDD"><TD><A href="node18.html#code.cutting.edit"><< Prev</A></TD><TD><A href="cutting.html">- Up -</A></TD><TD><A href="node20.html#code.cutting.configure">Next >></A></TD></TR></TABLE><HR><ADDRESS><SPAN class="version">Version 1.4.0 (20110908185330)</SPAN></ADDRESS></BODY></HTML>
|