topical media & game development

talk show tell print

lib-as-core-ArrayUtilDemo.mx

lib-as-core-ArrayUtilDemo.mx (swf ) [ flash ] flex


  <?xml version="1.0" encoding="utf-8"?>
  <mx:Module 
          xmlns:mx="http://www.adobe.com/2006/mxml" 
          layout="absolute">
          <mx:Script>
                  <![CDATA[
                          import com.adobe.utils.ArrayUtil;
                          import mx.controls.Alert;        
                          [Bindable]
                          private var array1:Array = [1,2,3,4,5,6,7,8,9,10,11,22,22,33,34,34];
                          [Bindable]
                          private var array2:Array = [1,2,3,4,5,6,7,8,9,10,11,22,22,33,34,34];        
                          [Bindable]
                          private var array3:Array = [1,2,3,4,5,6,7,8,9,10,22,11,22,34,33,34];
                          
                          private var array:Array = [array1,array2,array3];
                          
                          private function doArrayContainsValue():void
                          {
                                  var msg:String = "does array1 contains value "+containedValue.text+"?";
                                  msg += "\n";
                                  
                                  msg += ArrayUtil.arrayContainsValue(array1,int(containedValue.text))?"yes":"no";
                                  
                                  Alert.show(msg);
                          }
                          
                          private function doArraysAreEqual():void
                          {
                                  
                                  var msg:String = "does array1 equals array2 ?";
                                  msg += "\n";
                                  msg += ArrayUtil.arraysAreEqual(array1,array2)?"yes":"no";
                                  
                                  msg += "\n";
                                  
                                  msg += "does array1 equals array3 ?";
                                  msg += "\n";
                                  msg += ArrayUtil.arraysAreEqual(array1,array3)?"yes":"no";
                                  
                                  Alert.show(msg);
                          }
                          
                          private function doCopyArray():void
                          {
                                  var newArray:TextInput = new TextInput();
                                  newArray.editable = false;
                                  newArray.percentWidth = 100;
                                  
                                  var copiedArray:Array = ArrayUtil.copyArray(array1);
                                  newArray.text = "array"+ String((array.length+1))+ ":" + copiedArray.toString() + " copied from array1";                                
                                  array.push(copiedArray);
                                  
                                  container.addChild(newArray);
                                  
                                  container.validateNow();
                          }
                          
                          private function doUniqueCopy():void
                          {
                                  var newArray:TextInput = new TextInput();
                                  newArray.editable = false;
                                  newArray.percentWidth = 100;
                                  
                                  var copiedArray:Array = ArrayUtil.createUniqueCopy(array1);
                                  newArray.text = "array"+ String((array.length+1))+ ":" + copiedArray.toString() + " copied from array1";                                
                                  array.push(copiedArray);
                                  
                                  container.addChild(newArray);
                                  
                                  container.validateNow();
                          }
                          
                          private function doRemoveValueFromArray():void
                          {
                                  if(ArrayUtil.arrayContainsValue(array1,int(removedValue.text)))
                                  {
                                          ArrayUtil.removeValueFromArray(array1,int(removedValue.text));
                                          array1Text.text = "array1:"+ array1.toString();
                                  }        
                                  else
                                  {
                                          var msg:String = "array1 does not contain value "+removedValue.text;
                                  }
                          }
                  ]]>
          </mx:Script>        
          <mx:VBox id="container" width="100%" height="100%">
                  <mx:TextInput id="array1Text" editable="false" text="array1:{ array1.toString()}" width="100%"/>
                  <mx:TextInput editable="false" text="array2:{ array2.toString()}" width="100%"/>
                  <mx:TextInput editable="false" text="array3:{ array3.toString()}" width="100%"/>
                  <mx:HBox>
                          <mx:Label text="does array1 contains value:"/>
                          <mx:TextInput id="containedValue" text="5"/>
                          <mx:Button label="arrayContainsValue" click="doArrayContainsValue();"/>
                  </mx:HBox>
                  <mx:HBox>
                          <mx:Button label="arraysAreEqual" click="doArraysAreEqual();"/>
                  </mx:HBox>
                  <mx:HBox>
                          <mx:Button label="copyArray" click="doCopyArray();"/>
                  </mx:HBox>
                  <mx:HBox>
                          <mx:Button label="createUniqueCopy" click="doUniqueCopy();"/>
                  </mx:HBox>
                  <mx:HBox>
                          <mx:Label text="remove value"/>
                          <mx:TextInput id="removedValue" text="5"/>
                          <mx:Button label="removeValueFromArray" click="doRemoveValueFromArray();"/>
                  </mx:HBox>
          </mx:VBox>                
  </mx:Module>
  


(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.