Showing paste #ea2z2 by pushminakazi@apache.org: (Show raw paste)
<?xml version="1.0" encoding="utf-8"?>
<s:TitleWindow xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.apache.org/royale/spark"
xmlns:mx="library://ns.apache.org/royale/mx"
xmlns:components="com.dbz.modules.components.*"
title="Cheque Printing"
width="842"
height="594"
close="fn_ClosePopup(event);"
creationComplete="fn_InitPopup();"
textAlign="left">
<fx:Script>
<![CDATA[
import mx.rpc.AsyncToken;
import mx.rpc.Responder;
import com.dbz.VO.AP.dbzBankFormatSetupVO;
import com.dbz.dashboard.spark.resize.ResizeManager;
import com.dbz.modules.components.dbzGridBorder;
import com.dbz.modules.components.dbzMovableBox;
import com.dbz.modules.components.dbzResizeManager;
import com.dbz.components.PickList;
import com.dbz.utils.dbzUtil;
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.controls.Button;
import mx.controls.advancedDataGridClasses.AdvancedDataGridColumn;
import mx.controls.dataGridClasses.DataGridColumn;
import mx.core.Container;
import mx.core.DragSource;
import mx.core.FlexGlobals;
import mx.core.IUIComponent;
import mx.core.IVisualElement;
import mx.core.UIComponent;
import mx.core.mx_internal;
import mx.events.AdvancedDataGridEvent;
import mx.events.DragEvent;
import mx.events.FlexEvent;
import mx.events.ItemClickEvent;
import mx.events.ModuleEvent;
import mx.managers.PopUpManager;
import mx.events.CloseEvent;
import mx.events.MouseEvent;
import mx.formatters.SwitchSymbolFormatter;
import mx.managers.CursorManager;
import mx.managers.DragManager;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.styles.StyleManager;
import org.apache.royale.reflection.describeType;
import org.apache.royale.reflection.TypeDefinition;
import spark.components.CheckBox;
import spark.components.ComboBox;
import spark.components.TextArea;
import spark.components.TextInput;
use namespace mx_internal;
public var arrFormItems:Array = new Array();
[Bindable] public var xOff:Number;
[Bindable] public var yOff:Number;
private var xPos:Number = 0;
private var yPos:Number = 0;
private var iSelRow:uint = 0;
private var ibResize:Boolean = false;
private var bNewRecord:Boolean = false;
[Bindable] private var strResponse:String = "";
[Bindable] private var arrDGDataProvider:ArrayCollection = new ArrayCollection();
[Bindable] private var bkFormatVO:Object = new dbzBankFormatSetupVO();
[Bindable] public var BankCode:Object = new Object();
[Bindable] public var BankDesc:Object = new Object();
[Bindable] public var ShowAdviceFirst:Object = new Object();
[Bindable] public var Oreintation:Object = new Object();
[Bindable] public var ZoomFactor:Object = new Object();
[Bindable] public var ParentObject:Object = new Object();
[Bindable] public var arcBankFormatDP:ArrayCollection = new ArrayCollection();
[Bindable] public var arrZoomDP:ArrayCollection =
new ArrayCollection([{label:"200%",id:200},{label:"150%", id:150},
{label:"100%", id:100},{label:"75%", id:75},{label:"50%", id:50},
{label:"25%", id:25},{label:"10%", id:10}]);
[Bindable] private var arrOrientDP:ArrayCollection =
new ArrayCollection([{label:"Default",id:0},{label:"L/Scape", id:1},
{label:"Portrait", id:2}]);
[Bindable] public var arrFontsDataProvider:ArrayCollection =
new ArrayCollection(["Times New Roman","Arial",
"Courier New","MS Sans Serif",
"Bookman Old Style",
"Monotype Corsiva",
"Platino Linotype"]);
[Bindable] public var arrFontsWeight:ArrayCollection = new ArrayCollection(["normal","bold"]);
/*
** Data provider block
*/
public function fn_GetBankFormatDP():void
{
parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.validateSession();
ba_ShowAdvice.selected = ShowAdviceFirst.text == "1" ? true : false;
ba_Orientation.selectedIndex = Number(Oreintation.text == "" ? "0" : Oreintation.text);
for (var m:int = 0; m < arrZoomDP.length; m++)
{
if (ZoomFactor.text == arrZoomDP[m].id)
ba_Zoom.selectedIndex = m;
}
var responder1:Responder = new Responder(fn_roBankFormatRH,fn_HandleFault);
var token1:AsyncToken = roBankFormat.fn_GetBankFormatDP(parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.CompCode, BankCode.text, true);
token1.addResponder(responder1);
trace(token1);
}
/*
** Data provider result handlers
*/
private function fn_roValidateRH(e:ResultEvent):void {
strResponse = e.result.toString() as String;
if (strResponse != "")
Alert.show(strResponse);
}
private function fn_roPersistRH(e:ResultEvent):void {
parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.disableUserInteraction();
strResponse=e.result.toString() as String;
dgItems.selectedIndex = iSelRow;
if (strResponse != "") {
Alert.show(strResponse);
}
parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.restoreUserInteraction();
}
private function fn_roChainsRH(e:ResultEvent):void {
var strAuthSecChains:String = e.result.toString() as String;
dbzUtil.handleFormButtons(arrFormItems, strAuthSecChains);
}
private function fn_roBankFormatRH(e:ResultEvent):void
{
arrDGDataProvider = e.result as ArrayCollection;
arcBankFormatDP = arrDGDataProvider;
dgItems.dataProvider = arcBankFormatDP;
dgItems.selectedIndex = iSelRow;
bkFormatVO = dgItems.selectedItem;
fn_PopulateFormWithDGItem();
fn_CreateLayout();
}
private function fn_HandleFault(e:FaultEvent):void {
parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.restoreUserInteraction();
dgItems.selectedIndex = iSelRow;
Alert.show("Status: Error"
+ "\nFault code: " + e.fault.faultCode
+ "\nFault detail: " + e.fault.faultDetail
+ "\nFault string: " + e.fault.faultString);
}
/*
** Form handlers block
*/
private function fn_InitPopup():void
{
this.width = stage.width - 100;
this.height = stage.height - 70;
this.x = 10;
this.y = -50;
}
private function fn_ResetPage():void
{
parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.validateSession();
bkFormatVO = dgItems.selectedItem == null ? new dbzBankFormatSetupVO()as Object : bkFormatVO;
bNewRecord = true;
}
private function fn_PopulateFormWithDGItem():void
{
parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.validateSession();
bkFormatVO = dgItems.selectedItem;
iSelRow = dgItems.selectedIndex;
dgItems.selectedItem == null ? fn_ResetPage() : dbzUtil.setForm(arrFormItems, dgItems.selectedItem,
org.apache.royale.reflection.describeType(dbzBankFormatSetupVO) as TypeDefinition);
saveBtn.enabled = saveBtn.accessibilityEnabled == true ? true : false;
bNewRecord = dgItems.selectedItem == null ? true : false;
}
private function fn_CreateLayout():void
{
bc_PrintLayoutCheque.removeAllChildren();
bc_ColumnHeader.removeAllChildren();
bc_Detail.removeAllChildren();
bc_Footer.removeAllChildren();
var lbdrCheque:dbzGridBorder = new dbzGridBorder();
var lbdrColumn:dbzGridBorder = new dbzGridBorder();
var lbdrDetail:dbzGridBorder = new dbzGridBorder();
var lbdrFooter:dbzGridBorder = new dbzGridBorder();
lbdrCheque.width = 850;
lbdrCheque.height = ba_Header_Height.value;
bc_PrintLayoutCheque.addElement(lbdrCheque);
lbdrColumn.width = 850;
lbdrColumn.height = ba_Column_Height.value;
bc_ColumnHeader.addElement(lbdrColumn);
lbdrDetail.width = 850;
lbdrDetail.height = ba_Detail_Height.value;
bc_Detail.addElement(lbdrDetail);
lbdrFooter.width = 850;
lbdrFooter.height = ba_Footer_Height.value;
bc_Footer.addElement(lbdrFooter);
for (var i:int = 0; i < arrDGDataProvider.length; i++)
{
var ti:dbzMovableBox = new dbzMovableBox();
ti.id = arrDGDataProvider[i].cp_ItemCode;
ti.Title = arrDGDataProvider[i].cp_Description;
ti.x = Number(arrDGDataProvider[i].cp_XAxis);
ti.y = Number(arrDGDataProvider[i].cp_YAxis);
ti.width = Number(arrDGDataProvider[i].cp_Width);
ti.height = Number(arrDGDataProvider[i].cp_Height);
ti.FontSize = Number(arrDGDataProvider[i].cp_FontSize);
ti.FontType = arrDGDataProvider[i].cp_FontName;
ti.FontStyle = arrDGDataProvider[i].cp_FontStyle;
ti.Visible = arrDGDataProvider[i].cp_Print == "1" ? true : false;
ti.addEventListener(MouseEvent.MOUSE_DOWN, fn_MouseDownEH);
if (arrDGDataProvider[i].cp_HeaderDetail == "H")
{
bc_PrintLayoutCheque.addElement(ti);
dbzResizeManager.enableResize(bc_PrintLayoutCheque,ti,20);
}
else if (arrDGDataProvider[i].cp_HeaderDetail == "C")
{
bc_ColumnHeader.addElement(ti);
dbzResizeManager.enableResize(bc_ColumnHeader,ti,20);
}
else if (arrDGDataProvider[i].cp_HeaderDetail == "D")
{
bc_Detail.addElement(ti);
dbzResizeManager.enableResize(bc_Detail,ti,20);
}
else if (arrDGDataProvider[i].cp_HeaderDetail == "F")
{
bc_Footer.addElement(ti);
dbzResizeManager.enableResize(bc_Footer,ti,20);
}
}
bc_PrintLayoutCheque.addEventListener(DragEvent.DRAG_ENTER , fn_DragEnterEH);
bc_PrintLayoutCheque.addEventListener(DragEvent.DRAG_DROP , fn_DragDropEH);
bc_ColumnHeader.addEventListener(DragEvent.DRAG_ENTER , fn_DragEnterEH);
bc_ColumnHeader.addEventListener(DragEvent.DRAG_DROP , fn_DragDropEH);
bc_Detail.addEventListener(DragEvent.DRAG_ENTER , fn_DragEnterEH);
bc_Detail.addEventListener(DragEvent.DRAG_DROP , fn_DragDropEH);
bc_Footer.addEventListener(DragEvent.DRAG_ENTER , fn_DragEnterEH);
bc_Footer.addEventListener(DragEvent.DRAG_DROP , fn_DragDropEH);
fn_ShowHide();
}
private function fn_ClosePopup(evt:CloseEvent):void {
PopUpManager.removePopUp(this);
}
/*
** Validation block
*/
private function fn_Validate():void
{
parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.validateSession();
var responder2:Responder = new Responder(fn_roValidateRH,fn_HandleFault);
var token2:AsyncToken = roValidate.fn_Validate(dgItems.dataProvider);
token2.addResponder(responder2);
trace(token2);
}
/*
** Persistence block
*/
private function fn_SaveRecord(event:mx.events.MouseEvent):void
{
parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.validateSession();
var id:Number = 1;
var arrMasterItems:Array = new Array();
arrMasterItems[0] = ba_ShowAdvice.selected == true ? "1" : "0";
arrMasterItems[1] = ba_Orientation.selectedItem.id.toString();
arrMasterItems[2] = ba_Zoom.selectedItem.id.toString();
arrMasterItems[3] = ba_Header_Height.value.toString();
arrMasterItems[4] = ba_Column_Height.value.toString();
arrMasterItems[5] = ba_Detail_Height.value.toString();
arrMasterItems[6] = ba_Footer_Height.value.toString();
//dgItems.dataProvider
if (strResponse == "") {
parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.disableUserInteraction();
var responder3:Responder = new Responder(fn_roPersistRH,fn_HandleFault);
var token3:AsyncToken = roPersist.fn_SaveRecord(parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.CompCode, BankCode.text, parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.userParams.USER_ID,
arrMasterItems, arcBankFormatDP);
token3.addResponder(responder3);
trace(token3);
}
dbzUtil.setForm(arrFormItems, dgItems.selectedItem, org.apache.royale.reflection.describeType(dbzBankFormatSetupVO) as TypeDefinition);
saveBtn.enabled = true;
// ParentObject.fn_GetBankMasterDP();
var responder1:Responder = new Responder(fn_roBankFormatRH,fn_HandleFault);
var token1:AsyncToken = roBankFormat.fn_GetBankFormatDP(parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.CompCode, BankCode.text, true);
token1.addResponder(responder1);
trace(token1);
}
private function fn_Format(item:Object, column:AdvancedDataGridColumn):String
{
var strFormattedValue:String = "0";
if (column.dataField == "cp_XAxis")
strFormattedValue = fourDecimalFormatter.format(item.cp_XAxis);
else if (column.dataField == "cp_YAxis")
strFormattedValue = fourDecimalFormatter.format(item.cp_YAxis);
else if (column.dataField == "cp_Width")
strFormattedValue = fourDecimalFormatter.format(item.cp_Width);
else if (column.dataField == "cp_Height")
strFormattedValue = fourDecimalFormatter.format(item.cp_Height);
else if (column.dataField == "cp_FontSize")
strFormattedValue = fourDecimalFormatter.format(item.cp_FontSize);
else if (column.dataField == "cp_FontStyle")
{
if (item.cp_FontStyle == "0")
strFormattedValue = "Normal";
else if (item.cp_FontStyle == "1")
strFormattedValue = "Italic";
else if (item.cp_FontStyle == "2")
strFormattedValue = "Bold";
else if (item.cp_FontStyle == "3")
strFormattedValue = "Bold & Italic";
else
strFormattedValue = item.cp_FontStyle;
}
return strFormattedValue;
}
/*
** Utility functions
*/
protected function fn_ShowHide():void
{
for (var i:int = 0; i < bc_PrintLayoutCheque.getChildren().length; i++)
{ if ( bc_PrintLayoutCheque.getChildAt(i) is dbzMovableBox)
if (dbzMovableBox( bc_PrintLayoutCheque.getChildAt(i)).Visible == false &&
chkShow.selected == false)
bc_PrintLayoutCheque.getChildAt(i).visible = false;
else
bc_PrintLayoutCheque.getChildAt(i).visible = true;
}
for (var j:int = 0; j < bc_ColumnHeader.getChildren().length ; j++)
{
if (bc_ColumnHeader.getChildAt(j) is dbzMovableBox)
if (dbzMovableBox( bc_ColumnHeader.getChildAt(j)).Visible == false &&
chkShow.selected == false)
bc_ColumnHeader.getChildAt(j).visible = false;
else
bc_ColumnHeader.getChildAt(j).visible = true;
}
for (var k:int = 0; k < bc_Detail.getChildren().length; k++)
{
if ( bc_Detail.getChildAt(k) is dbzMovableBox)
if (dbzMovableBox( bc_Detail.getChildAt(k)).Visible == false &&
chkShow.selected == false)
bc_Detail.getChildAt(k).visible = false;
else
bc_Detail.getChildAt(k).visible = true;
}
for (var l:int = 0 ; l < bc_Footer.getChildren().length; l++)
{
if (bc_Footer.getChildAt(l) is dbzMovableBox)
if (dbzMovableBox( bc_Footer.getChildAt(l)).Visible == false &&
chkShow.selected == false)
bc_Footer.getChildAt(l).visible = false;
else
bc_Footer.getChildAt(l).visible = true;
}
}
private function fn_CopyChanges():void
{
for (var i:int = 0 ; i < arcBankFormatDP.length ; i++)
{
var lsItemName:String = arcBankFormatDP[i].cp_ItemCode;
var lsItemPos:String = arcBankFormatDP[i].cp_HeaderDetail;
var lsCanvas:Canvas;
if (lsItemPos == "H")
lsCanvas = bc_PrintLayoutCheque;
else if (lsItemPos == "C")
lsCanvas = bc_ColumnHeader;
else if (lsItemPos == "D")
lsCanvas = bc_Detail;
else if (lsItemPos == "F")
lsCanvas = bc_Footer;
var currentObj:dbzMovableBox;
for (var j:int = 0 ; j < lsCanvas.getChildren().length ; j++) {
if (lsCanvas.getChildAt(j) is dbzMovableBox) {
if (dbzMovableBox(lsCanvas.getChildAt(j)).id.toString() == lsItemName)
{
currentObj = lsCanvas.getChildAt(j) as dbzMovableBox;
break;
}
}
}
if (currentObj != null) {
arcBankFormatDP[i].cp_XAxis = currentObj.x.toString();
arcBankFormatDP[i].cp_YAxis = currentObj.y.toString();
arcBankFormatDP[i].cp_Width = currentObj.width.toString();
arcBankFormatDP[i].cp_Height = currentObj.height.toString();
}
}
arcBankFormatDP.refresh();
}
private function fn_SelectRow(ItemName:String):Number{
var cRow:Number = 0;
for (var i : Number = 0 ; i < arrDGDataProvider.length ; i++) {
var lsColName:String = arrDGDataProvider[i].cp_ItemCode;
if (lsColName == ItemName)
{
cRow = i;
break;
}
}
arrDGDataProvider.refresh();
dgItems.validateNow();
dgItems.selectedIndex = cRow;
dgItems.scrollToIndex(cRow);
return cRow;
}
/*
** Event handlers
*/
private function fn_MouseDownEH(e:MouseEvent):void
{
var cRow:Number = fn_SelectRow(dbzMovableBox(e.currentTarget).id);
xPos = dbzMovableBox(e.currentTarget).mouseX;
yPos = dbzMovableBox(e.currentTarget).mouseY;
var lheight:int = dbzMovableBox(e.currentTarget).height;
var lwidth:int = dbzMovableBox(e.currentTarget).width;
if (lheight - 4 < yPos && lwidth - 4 < xPos)
{
ibResize = true;
xPos = dbzMovableBox(e.currentTarget).x;
yPos = dbzMovableBox(e.currentTarget).y;
}
else
ibResize = false;
}
private function fn_DragEnterEH(e:DragEvent):void
{
DragManager.acceptDragDrop(e.currentTarget as IUIComponent);
}
private function fn_DragDropEH(e:DragEvent):void
{
if (ibResize)
{
dbzMovableBox(e.dragInitiator).width = Canvas(e.currentTarget).contentMouseX - xPos;
dbzMovableBox(e.dragInitiator).height = Canvas(e.currentTarget).contentMouseY - yPos;
}
else
{
dbzMovableBox(e.dragInitiator).x = Canvas(e.currentTarget).contentMouseX - xPos;
dbzMovableBox(e.dragInitiator).y = Canvas(e.currentTarget).contentMouseY - yPos;
}
var cRow:Number = fn_SelectRow(dbzMovableBox(e.dragInitiator).id);
arcBankFormatDP[cRow].cp_XAxis = dbzMovableBox(e.dragInitiator).x.toString();
arcBankFormatDP[cRow].cp_YAxis = dbzMovableBox(e.dragInitiator).y.toString();
arcBankFormatDP[cRow].cp_Width = dbzMovableBox(e.dragInitiator).width.toString();
arcBankFormatDP[cRow].cp_Height = dbzMovableBox(e.dragInitiator).height.toString();
}
private function dg_ItemEditEndEH(event:AdvancedDataGridEvent):void
{
if (arrDGDataProvider.length > 0 && dgItems.selectedIndex > -1)
{
var lsItemName:String = dgItems.selectedItem.cp_ItemCode;
var lsItmX:String = dgItems.selectedItem.cp_XAxis;
var lsItemY:String = dgItems.selectedItem.cp_YAxis;
var lsItemPos:String = dgItems.selectedItem.cp_HeaderDetail;
var lsItemWidth:String = dgItems.selectedItem.cp_Width;
var lsItemPrint:String = dgItems.selectedItem.cp_Print;
var lsFontType:String = dgItems.selectedItem.cp_FontName;
var lsFontSize:String = dgItems.selectedItem.cp_FontSize;
var lsFontWeight:String = dgItems.selectedItem.cp_FontStyle;
var lsItemHeight:String = dgItems.selectedItem.cp_Height;
var lsCanvas:Canvas;
if (lsItemPos == "H")
lsCanvas = bc_PrintLayoutCheque;
else if (lsItemPos == "C")
lsCanvas = bc_ColumnHeader;
else if (lsItemPos == "D")
lsCanvas = bc_Detail;
else if (lsItemPos == "F")
lsCanvas = bc_Footer;
else
return;
var currentObj:dbzMovableBox;
for (var i:int = 0 ; i < lsCanvas.getChildren().length ; i++)
{
if (lsCanvas.getChildAt(i) is dbzMovableBox)
{
if (dbzMovableBox(lsCanvas.getChildAt(i)).id.toString() == lsItemName)
{
currentObj = lsCanvas.getChildAt(i) as dbzMovableBox;
break;
}
}
}
if (currentObj != null)
{
currentObj.x = Number(lsItmX);
currentObj.y = Number(lsItemY);
currentObj.width = Number(lsItemWidth);
currentObj.height = Number(lsItemHeight);
currentObj.Visible = lsItemPrint == "1"?true:false;
currentObj.FontSize = Number(lsFontSize);
currentObj.FontType = lsFontType;
currentObj.FontStyle = lsFontWeight;
}
}
}
]]>
</fx:Script>
<fx:Declarations>
<mx:RemoteObject id="roBankFormat" endpoint="{parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.ServerURL}" showBusyCursor="true"
destination="dbzCashBankSetupBO"/>
<!-- fault="fn_HandleFault(event);" result="fn_roBankFormatRH(event);" -->
<mx:RemoteObject id="roValidate" endpoint="{parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.ServerURL}" showBusyCursor="true"
destination="dbzCashBankSetupBO"/>
<!-- fault="fn_HandleFault(event);" result="fn_roValidateRH(event);" -->
<mx:RemoteObject id="roPersist" endpoint="{parentMxmlDocument.parentMxmlDocument.parentMxmlDocument.ServerURL}" showBusyCursor="true"
destination="dbzCashBankSetupBO"/>
<!-- fault="fn_HandleFault(event);" result="fn_roPersistRH(event);" -->
<mx:NumberFormatter id="fourDecimalFormatter" precision="2" useThousandsSeparator="true" useNegativeSign="true"/>
</fx:Declarations>
<s:BorderContainer id="bcForm" fontFamily="Arial" fontSize="11" left="1" right="0" top="0" bottom="0">
<s:CheckBox id="ba_ShowAdvice" label="Print Advice First" x="2" y="4" width="105" height="20" tabIndex="1"/>
<s:Label text="Zoom" x="110" y="4" height="20" verticalAlign="middle"/>
<s:DropDownList id="ba_Zoom" x="144" y="4" width="80" height="20" dataProvider="{arrZoomDP}" tabIndex="2"/>
<s:Label text="Orientation" x="230" y="4" height="20" verticalAlign="middle"/>
<s:DropDownList id="ba_Orientation" x="284" y="4" width="105" height="20" dataProvider="{arrOrientDP}" tabIndex="3"/>
<s:Button id="btnCopySettings" x="470" y="4" width="127" height="20" label="Reflect setting to grid"
toolTip="Copy changes to side grid which was visually done" click="fn_CopyChanges()"/>
<s:CheckBox id="chkShow" label="Show Invisible Items" y="4" right="101" height="20" selected="true"
click="fn_ShowHide()"/>
<mx:Button id="saveBtn" accessibilityEnabled="true" uid="0" mouseChildren="false" buttonMode="true"
label="Save" click="fn_SaveRecord(event);" right="32" y="4" width="50" height="20"
fontFamily="Arial" fontWeight="normal" fontSize="11" cornerRadius="1" tabIndex="5"/>
<mx:HDividedBox top="62" left="2" right="2" bottom="2">
<mx:AdvancedDataGrid id="dgItems" sortExpertMode="true" styleName="advancedDataGrid" editable="true"
resizableColumns="true" change="fn_PopulateFormWithDGItem();" tabIndex="4"
itemEditEnd="dg_ItemEditEndEH(event)" dataProvider="{arcBankFormatDP}"
horizontalScrollPolicy="auto" left="5" width="300" top="33" bottom="2" height="100%">
<mx:groupedColumns>
<mx:AdvancedDataGridColumn dataField="cp_ItemCode" headerText="Items" visible="false" />
<mx:AdvancedDataGridColumn dataField="cp_ColName" headerText="Items" visible="false"/>
<mx:AdvancedDataGridColumn dataField="cp_HeaderDetail" headerText="Items" visible="false"/>
<mx:AdvancedDataGridColumn dataField="cp_Description" headerText="Items" editable="false" width="150"/>
<mx:AdvancedDataGridColumn dataField="cp_Print" headerText="Print" editable="false" width="30">
<mx:itemRenderer>
<fx:Component>
<mx:CheckBox textAlign="center" horizontalCenter="0" width="100%"
selectedField="{data.cp_Print}"
enabled="true" click="{selected ? data.cp_Print = '1' : data.cp_Print = '0'}"
selected="{data.cp_Print == '0' ? false : true}"/>
</fx:Component>
</mx:itemRenderer>
</mx:AdvancedDataGridColumn>
<mx:AdvancedDataGridColumnGroup headerText="Coordinates">
<mx:AdvancedDataGridColumn dataField="cp_XAxis" editable="true" headerText="X-Axis"
labelFunction="fn_Format" textAlign="right" width="105"
editorDataField="returnPN">
<mx:itemEditor>
<fx:Component>
<mx:VBox xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.apache.org/royale/spark"
xmlns:mx="library://ns.apache.org/royale/mx">
<fx:Script>
<![CDATA[
import mx.events.ValidationResultEvent;
// Define a property for returning the new value to the cell.
[Bindable] public var returnPN:Number;
]]>
</fx:Script>
<fx:Declarations>
<mx:NumberValidator id="vlddgTxtInput" source="{dgTxtInput}"
property="value"
allowNegative="false"
decimalPointCountError="The decimal separator can only occur once."
decimalSeparator="."
domain="real"
trigger="{dgTxtInput}"
triggerEvent="change"
precision="2"
precisionError="The amount entered has too many digits beyond the decimal point."
separationError="The thousands separator must be followed by three digits."
thousandsSeparator=","/>
</fx:Declarations>
<s:NumericStepper id="dgTxtInput" fontFamily="Verdana" textAlign="right"
maxChars="4" fontSize="11" value="{data.cp_XAxis}" width="105"
minimum="0" maximum="3000" height="21" color="black"
updateComplete="vlddgTxtInput.validate().type == ValidationResultEvent.INVALID ? 0 : returnPN = dgTxtInput.value;"
change="vlddgTxtInput.validate().type == ValidationResultEvent.INVALID ? 0 : returnPN = dgTxtInput.value;"
valueCommit="{data.cp_XAxis=dgTxtInput.value}"
focusOut="{data.cp_XAxis=dgTxtInput.value}"/>
</mx:VBox>
</fx:Component>
</mx:itemEditor>
</mx:AdvancedDataGridColumn>
<mx:AdvancedDataGridColumn dataField="cp_YAxis" editable="true" headerText="Y-Axis" textAlign="right"
labelFunction="fn_Format" width="105" editorDataField="returnPN">
<mx:itemEditor>
<fx:Component>
<mx:VBox xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.apache.org/royale/spark"
xmlns:mx="library://ns.apache.org/royale/mx">
<fx:Script>
<![CDATA[
import mx.events.ValidationResultEvent;
// Define a property for returning the new value to the cell.
[Bindable] public var returnPN:Number;
]]>
</fx:Script>
<fx:Declarations>
<mx:NumberValidator id="vlddgTxtInput" source="{dgTxtInput}"
property="value"
allowNegative="false"
decimalPointCountError="The decimal separator can only occur once."
decimalSeparator="."
domain="real"
trigger="{dgTxtInput}"
triggerEvent="change"
precision="2"
precisionError="The amount entered has too many digits beyond the decimal point."
separationError="The thousands separator must be followed by three digits."
thousandsSeparator=","/>
</fx:Declarations>
<s:NumericStepper id="dgTxtInput" fontFamily="Verdana" textAlign="right"
maxChars="4" fontSize="11" value="{data.cp_YAxis}" width="105"
minimum="0" maximum="3000" height="21" color="black"
updateComplete="vlddgTxtInput.validate().type == ValidationResultEvent.INVALID ? 0 : returnPN = dgTxtInput.value;"
change="vlddgTxtInput.validate().type == ValidationResultEvent.INVALID ? 0 : returnPN = dgTxtInput.value;"
valueCommit="{data.cp_YAxis=dgTxtInput.value}"/>
</mx:VBox>
</fx:Component>
</mx:itemEditor>
</mx:AdvancedDataGridColumn>
</mx:AdvancedDataGridColumnGroup>
<mx:AdvancedDataGridColumn dataField="cp_Width" editable="true" headerText="Width" textAlign="right"
labelFunction="fn_Format" width="105" editorDataField="returnPN">
<mx:itemEditor>
<fx:Component>
<mx:VBox xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.apache.org/royale/spark"
xmlns:mx="library://ns.apache.org/royale/mx">
<fx:Script>
<![CDATA[
import mx.events.ValidationResultEvent;
// Define a property for returning the new value to the cell.
[Bindable]
public var returnPN:Number;
]]>
</fx:Script>
<fx:Declarations>
<mx:NumberValidator id="vlddgTxtInput" source="{dgTxtInput}"
property="value"
allowNegative="false"
decimalPointCountError="The decimal separator can only occur once."
decimalSeparator="."
domain="real"
trigger="{dgTxtInput}"
triggerEvent="change"
precision="2"
precisionError="The amount entered has too many digits beyond the decimal point."
separationError="The thousands separator must be followed by three digits."
thousandsSeparator=","/>
</fx:Declarations>
<s:NumericStepper id="dgTxtInput" fontFamily="Verdana" textAlign="right" maxChars="3"
fontSize="11" value="{data.cp_Width}" width="105" minimum="0"
maximum="3000" height="21" color="black"
updateComplete="vlddgTxtInput.validate().type == ValidationResultEvent.INVALID ? 0 : returnPN = dgTxtInput.value;"
change="vlddgTxtInput.validate().type == ValidationResultEvent.INVALID ? 0 : returnPN = dgTxtInput.value;"
valueCommit="{data.cp_Width=dgTxtInput.value}"/>
</mx:VBox>
</fx:Component>
</mx:itemEditor>
</mx:AdvancedDataGridColumn>
<mx:AdvancedDataGridColumn dataField="cp_Height" editable="true" headerText="Height" textAlign="right"
labelFunction="fn_Format" width="105" editorDataField="returnPN">
<mx:itemEditor>
<fx:Component>
<mx:VBox xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.apache.org/royale/spark"
xmlns:mx="library://ns.apache.org/royale/mx">
<fx:Script>
<![CDATA[
import mx.events.ValidationResultEvent;
// Define a property for returning the new value to the cell.
[Bindable] public var returnPN:Number;
]]>
</fx:Script>
<fx:Declarations>
<mx:NumberValidator id="vlddgTxtInput" source="{dgTxtInput}"
property="value"
allowNegative="false"
decimalPointCountError="The decimal separator can only occur once."
decimalSeparator="."
domain="real"
trigger="{dgTxtInput}"
triggerEvent="change"
precision="2"
precisionError="The amount entered has too many digits beyond the decimal point."
separationError="The thousands separator must be followed by three digits."
thousandsSeparator=","/>
</fx:Declarations>
<s:NumericStepper id="dgTxtInput" fontFamily="Verdana" textAlign="right" maxChars="3"
fontSize="11" value="{data.cp_Height}" width="105" minimum="0"
maximum="3000" height="21" color="black"
updateComplete="vlddgTxtInput.validate().type == ValidationResultEvent.INVALID ? 0 : returnPN = dgTxtInput.value;"
change="vlddgTxtInput.validate().type == ValidationResultEvent.INVALID ? 0 : returnPN = dgTxtInput.value;"
valueCommit="{data.cp_Height=dgTxtInput.value}"/>
</mx:VBox>
</fx:Component>
</mx:itemEditor>
</mx:AdvancedDataGridColumn>
<mx:AdvancedDataGridColumn dataField="cp_FontSize" editable="true" textAlign="right" headerText="Font Size"
labelFunction="fn_Format" width="105" editorDataField="returnPN">
<mx:itemEditor>
<fx:Component>
<mx:VBox xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.apache.org/royale/spark"
xmlns:mx="library://ns.apache.org/royale/mx">
<fx:Script>
<![CDATA[
import mx.events.ValidationResultEvent;
// Define a property for returning the new value to the cell.
[Bindable] public var returnPN:Number;
]]>
</fx:Script>
<fx:Declarations>
<mx:NumberValidator id="vlddgTxtInput" source="{dgTxtInput}"
property="value"
allowNegative="false"
decimalPointCountError="The decimal separator can only occur once."
decimalSeparator="."
domain="real"
trigger="{dgTxtInput}"
triggerEvent="change"
precision="2"
precisionError="The amount entered has too many digits beyond the decimal point."
separationError="The thousands separator must be followed by three digits."
thousandsSeparator=","/>
</fx:Declarations>
<s:NumericStepper id="dgTxtInput" fontFamily="Verdana" textAlign="right" maxChars="2"
fontSize="11" value="{data.cp_FontSize}" width="105" minimum="0"
maximum="72" height="21" color="black" valueCommit="{data.cp_FontSize=dgTxtInput.value}"
updateComplete="vlddgTxtInput.validate().type == ValidationResultEvent.INVALID ? 0 : returnPN = dgTxtInput.value;"
change="vlddgTxtInput.validate().type == ValidationResultEvent.INVALID ? 0 : returnPN = dgTxtInput.value;"/>
</mx:VBox>
</fx:Component>
</mx:itemEditor>
</mx:AdvancedDataGridColumn>
<mx:AdvancedDataGridColumn dataField="cp_FontName" headerText="Font Name" editable="true"
width="150" editorDataField="cp_FontName">
<mx:itemEditor>
<fx:Component>
<s:MXAdvancedDataGridItemRenderer
height="22" >
<fx:Script>
<![CDATA[
public function get cp_FontName(): String {
return fontDD.selectedItem;
}
]]>
</fx:Script>
<s:DropDownList id="fontDD" top="0" left="0" right="0" bottom="0"
dataProvider="{outerDocument.arrFontsDataProvider}"
selectedIndex="{outerDocument.arrFontsDataProvider.getItemIndex(data.cp_FontName)}"/>
</s:MXAdvancedDataGridItemRenderer>
</fx:Component>
</mx:itemEditor>
</mx:AdvancedDataGridColumn>
<mx:AdvancedDataGridColumn dataField="cp_FontStyle" headerText="Font Style" editable="true"
labelFunction="fn_Format" width="100"/>
<mx:AdvancedDataGridColumn dataField="cp_Label" headerText="Label" editable="true" width="120"/>
</mx:groupedColumns>
</mx:AdvancedDataGrid>
<s:BorderContainer width="100%" height="100%">
<!-- <s:TabBar id="tabBar" dataProvider="{ViewStackID}" x="0" y="-24"/> -->
<mx:TabNavigator id="ViewStackID" x="0" y="0" width="100%" height="100%" creationPolicy="all">
<mx:VBox label="Cheque Portion" width="100%" height="100%">
<s:Label x="4" y="15" text="Height"/>
<s:NumericStepper id="ba_Header_Height" x="77" y="5" maximum="1200" width="81"/>
<mx:Canvas id="bc_PrintLayoutCheque" backgroundColor="#302F2F" borderStyle="solid"
dragEnter="fn_DragEnterEH(event);" dragDrop="fn_DragDropEH(event);" left="0"
right="0" top="29" bottom="0">
</mx:Canvas>
</mx:VBox>
<mx:VBox label="Column Header" width="100%" height="100%">
<s:Label x="4" y="15" text="Height"/>
<s:NumericStepper id="ba_Column_Height" x="77" y="5" maximum="1200" width="81" />
<mx:Canvas id="bc_ColumnHeader" backgroundColor="#302F2F" borderStyle="solid"
dragEnter="fn_DragEnterEH(event);" dragDrop="fn_DragDropEH(event);" top="29"
bottom="0" left="0" right="0">
</mx:Canvas>
</mx:VBox>
<mx:VBox label="Advice Portion" width="100%" height="100%">
<s:Label x="4" y="15" text="Height"/>
<s:NumericStepper id="ba_Detail_Height" x="77" y="5" width="81" maximum="1200"/>
<mx:Canvas id="bc_Detail" backgroundColor="#302F2F" borderStyle="solid"
dragEnter="fn_DragEnterEH(event);" dragDrop="fn_DragDropEH(event);"
top="29" bottom="0" left="0" right="0">
</mx:Canvas>
</mx:VBox>
<mx:VBox label="Summary" width="100%" height="100%">
<s:Label text="Height" x="4" y="15"/>
<s:NumericStepper id="ba_Footer_Height" x="77" y="5" width="81" maximum="1200"/>
<mx:Canvas id="bc_Footer" backgroundColor="#302F2F" borderStyle="solid"
dragEnter="fn_DragEnterEH(event);" dragDrop="fn_DragDropEH(event);" top="29"
bottom="0" left="0" right="0">
</mx:Canvas>
</mx:VBox>
</mx:TabNavigator>
</s:BorderContainer>
</mx:HDividedBox>
</s:BorderContainer>
</s:TitleWindow>
Make a new paste