<Composition Name="Shapes_00">
	<Composition.Resources>
		<ScriptLibrary key="MyLib" Name="CustomImagingLib.Imaging" />
		<String key="shapeNumber">Shape0</String>
		<Double key="sides">4</Double>
		<String key="uom">Imperial</String>
		<Double key="dim_h">0</Double>
		<Double key="dim_w">0</Double>
		<Double key="unitsPerInch">0</Double>
		<Boolean key="edgeAll">False</Boolean>
		<Boolean key="edge1">False</Boolean>
		<Boolean key="edge2">False</Boolean>
		<Boolean key="edge3">False</Boolean>
		<Boolean key="edge4">False</Boolean>
		<Boolean key="edge5">False</Boolean>
		<Boolean key="edge6">False</Boolean>
		<Boolean key="edge7">False</Boolean>
		<Boolean key="edge8">False</Boolean>
		<Boolean key="showImperial">False</Boolean>
		<Boolean key="hasConfig">True</Boolean>
		<Script key="commonScript">
			
			function inToUnits(inches) {
			  return unitsPerInch * inches;
			}
			
			var imgLib = ImgLib();
			
			if(hasConfig)
			{
				shapeNumber = Cpq.Get('Shape.SalesCode');
				sides = Cpq.Get('Shape.NumOfSides');
				uom = Cpq.Get('Calcs_Child.EntryUOM');
				showImperial = Cpq.Get('Shape.ShowImperial');
				edgeAll = Cpq.Get('Processing_Edge.EdgeAll');
				edge1 = Cpq.Get('Processing_Edge.Edge1');
				edge2 = Cpq.Get('Processing_Edge.Edge2');
				edge3 = Cpq.Get('Processing_Edge.Edge3');
				edge4 = Cpq.Get('Processing_Edge.Edge4');
				unitsPerInch = Cpq.Get('Shape.UnitsPerInch');
				
				if(uom == "Imperial")
				{
					dim_h = Cpq.Get('Shape.Dim_H_Static');
					dim_w = Cpq.Get('Shape.Dim_W_Static');
				}
				else
				{
					dim_h = Cpq.Get('Shape.Dim_H_mm_Static');
					dim_w = Cpq.Get('Shape.Dim_W_mm_Static');
				}
				
				
			}
			
			if(edgeAll) {
				edge1 = 'True';
				edge2 = 'True';
				edge3 = 'True';
				edge4 = 'True';
			}
			
			var edge1_txt = '';
			var edge2_txt = '';
			var edge3_txt = '';
			var edge4_txt = '';
			
			if(edge1) { edge1_txt = 'xx'; }
			if(edge2) { edge2_txt = 'xx'; }
			if(edge3) { edge3_txt = 'xx'; }
			if(edge4) { edge4_txt = 'xx'; }
			
			function dimTxt(val) {
				if(uom == "Metric")
				{
					if(showImperial)
					{
						return imgLib.ToFraction(val/25.4) + '&quot;';
					}
					else
					{
						return String.ToString(val) + 'mm';
					}
				}
				else
				{
					return imgLib.ToFraction(val) + '&quot;';
				}
			}

			var dim_h_txt = 'H [' + dimTxt(dim_h) + ']';
			var dim_w_txt = 'W [' + dimTxt(dim_w) + ']';
			
			if( unitsPerInch == 0 )
			{
				unitsPerInch = 25;
				dim_w = 12;
				dim_h = 12;
			}
			
			dim_h = inToUnits(dim_h);
			dim_w = inToUnits(dim_w);
			
			
			Math.NewRandom();

		</Script>
	</Composition.Resources>
	<Canvas>
		<!-- Rectangle with no cuts -->
		<Canvas>
			<TextLine Name="1" X1="0" X2="{dim_w}" Y1="{dim_h}" Y2="{dim_h}" Stroke="Black" StrokeThickness="2" Text="{edge1_txt}" HorizontalTextAlignment="Center" AlignToLine="True" VerticalTextPadding="-7" />
			<TextLine Name="2" X1="{dim_w}" X2="{dim_w}" Y1="0" Y2="{dim_h}" Stroke="Black" StrokeThickness="2" Text="{edge2_txt}" HorizontalTextAlignment="Center" AlignToLine="True" VerticalTextPadding="7" />
			<TextLine Name="3" X1="0" X2="{dim_w}" Y1="0" Y2="0" Stroke="Black" StrokeThickness="2" Text="{edge3_txt}" HorizontalTextAlignment="Center" AlignToLine="True" VerticalTextPadding="7" />
			<TextLine Name="4" X1="0" X2="0" Y1="0" Y2="{dim_h}" Stroke="Black" StrokeThickness="2" Text="{edge4_txt}" HorizontalTextAlignment="Center" AlignToLine="True" VerticalTextPadding="-7" />
			<Canvas>
				<!-- W Text -->
				<Line Name="ECL" X1="0" X2="0" Y1="{dim_h + 5}" Y2="{dim_h + 25}" Stroke="Blue" StrokeThickness="1" />
				<TextLine Name="T" X1="0" X2="{dim_w}" Y1="{dim_h + 20}" Y2="{dim_h + 20}" Stroke="Blue" StrokeThickness="1" Text="{dim_w_txt}" FontSize="12" HorizontalTextAlignment="Center" AlignToLine="True" VerticalTextPadding="-10" StartCap="Arrow" EndCap="Arrow" CapScale="2" />
				<Line Name="ECR" X1="{dim_w}" X2="{dim_w}" Y1="{dim_h + 5}" Y2="{dim_h + 25}" Stroke="Blue" StrokeThickness="1" />			
				<!-- H Text -->
				<Line Name="ECT" X1="-5" X2="-25" Y1="0" Y2="0" Stroke="Blue" StrokeThickness="1" />
				<TextLine Name="T" X1="-20" X2="-20" Y1="0" Y2="{dim_h}" Stroke="Blue" StrokeThickness="1" Text="{dim_h_txt}" FontSize="12" HorizontalTextAlignment="Center" AlignToLine="True" VerticalTextPadding="-10" StartCap="Arrow" EndCap="Arrow" CapScale="2" />
				<Line Name="ECB" X1="-5" X2="-25" Y1="{dim_h}" Y2="{dim_h}" Stroke="Blue" StrokeThickness="1" />
			</Canvas>
		</Canvas>
	</Canvas>
</Composition>