<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>*drawlogic &#187; utility</title>
	<atom:link href="http://drawlogic.com/tag/utility/feed/" rel="self" type="application/rss+xml" />
	<link>http://drawlogic.com</link>
	<description>interactive and game development technologies for the web - flash, flex, unity3d, silverlight, javascript</description>
	<lastBuildDate>Thu, 17 May 2012 13:12:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>AS3 CASALib Useful Library of Common Functions and Tools for Flash</title>
		<link>http://drawlogic.com/2008/12/04/as3-casalib-useful-library-of-common-functions-and-tools-for-flash/</link>
		<comments>http://drawlogic.com/2008/12/04/as3-casalib-useful-library-of-common-functions-and-tools-for-flash/#comments</comments>
		<pubDate>Fri, 05 Dec 2008 02:42:39 +0000</pubDate>
		<dc:creator>drawk</dc:creator>
				<category><![CDATA[ACTIONSCRIPT]]></category>
		<category><![CDATA[ACTIONSCRIPT3]]></category>
		<category><![CDATA[ARCHITECT]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[CODE]]></category>
		<category><![CDATA[DEVELOPMENT]]></category>
		<category><![CDATA[FLASH]]></category>
		<category><![CDATA[FLEX]]></category>
		<category><![CDATA[GAMEDEV]]></category>
		<category><![CDATA[LIBRARIES]]></category>
		<category><![CDATA[OPEN SOURCE]]></category>
		<category><![CDATA[PROGRAMMING]]></category>
		<category><![CDATA[TECHNOLOGY]]></category>
		<category><![CDATA[TOOLS]]></category>
		<category><![CDATA[casalib]]></category>
		<category><![CDATA[library]]></category>
		<category><![CDATA[utility]]></category>

		<guid isPermaLink="false">http://drawlogic.com/?p=292</guid>
		<description><![CDATA[When you do lots of any language you build up libraries over time that are time savers that are repetitive and tedious if you do not consoildate into a library.  Taking a look at the CASALib, an as3 library of common functions for flash that was released I have many of the same things in [...]]]></description>
			<content:encoded><![CDATA[<p>When you do lots of any language you build up libraries over time that are time savers that are repetitive and tedious if you do not consoildate into a library.  <a href="http://casalib.org/" target="_blank">Taking a look at the CASALib</a>, an <a href="http://casalib.org/blog/finally-an-as3-version/" target="_blank">as3 library of common functions for flash</a><a href="http://casalib.org/blog/finally-an-as3-version/" target="_blank"> that was released</a> I have many of the same things in my libraries but CASALib <a href="http://as3.casalib.org/docs/org_casalib_time_Inactivity.html" target="_blank">just </a><a href="http://as3.casalib.org/docs/index.html?http://as3.casalib.org/docs/package-org_casalib_load.html" target="_blank">has</a> <a href="http://as3.casalib.org/docs/index.html?http://as3.casalib.org/docs/package-org_casalib_load.html" target="_blank">lots</a> <a href="http://as3.casalib.org/docs/index.html?http://as3.casalib.org/docs/package-org_casalib_load.html" target="_blank">of</a> <a href="http://as3.casalib.org/docs/index.html?http://as3.casalib.org/docs/package-org_casalib_load.html" target="_blank">extras</a> that go a bit deeper than some libraries, is very clean and is <a href="http://as3.casalib.org/docs/index.html?http://as3.casalib.org/docs/package-org_casalib_load.html" target="_blank">organized pretty well</a>.</p>
<p>One cool thing about it is the <a href="http://as3.casalib.org/docs/index.html?http://as3.casalib.org/docs/package-org_casalib_load.html" target="_blank">IDestroyable </a>interface and the <a href="http://as3.casalib.org/docs/index.html?http://as3.casalib.org/docs/package-org_casalib_load.html" target="_blank">CasaMovieClip</a>, <a href="http://as3.casalib.org/docs/index.html?http://as3.casalib.org/docs/package-org_casalib_load.html" target="_blank">CasaSprite</a>, <a href="http://as3.casalib.org/docs/index.html?http://as3.casalib.org/docs/package-org_casalib_load.html" target="_blank">CasaTextField </a>, etcthat all have a destroy() method that cleans up all events, removed instances and even removes it from the parent display object. Gets me thinking why this isn&#8217;t just part of DisplayObject in the first place.</p>
<p>From the <a href="http://casalib.org/blog/finally-an-as3-version/" target="_blank">release</a>:</p>
<blockquote><p>Here are a <em>few</em> of our favorite things in CASA Lib <acronym title="ActionScript 3.0">AS3</acronym>:</p>
<ul>
<li>Standardized external load <acronym title="Application Programming Interface">API</acronym></li>
<li>Easily remove listeners with IRemovableEventDispatcher</li>
<li><code>destroy</code> methods make garbage collection easy</li>
<li>Large group of utility classes for common manipulations</li>
</ul>
<p>We will be elaborating further the power of CASA Lib in future blog posts.</p>
<p>As with any new release there will be bugs that emerge, but with your help we promise to release updates often to keep CASA Lib as stable as possible.</p>
<h3>1.0.0 Downloads &amp; Documentation</h3>
<p>ZIP: <a href="http://as3.casalib.org/releases/1.0.0/1.0.0.zip">http://as3.casalib.org/releases/1.0.0/1.0.0.zip</a><br />
SVN: <a href="http://svn.as3.casalib.org/releases/1.0.0/">http://svn.as3.casalib.org/releases/1.0.0/</a><br />
Documentation: <a href="http://as3.casalib.org/releases/1.0.0/docs/">http://as3.casalib.org/releases/1.0.0/docs/</a></p>
<p>[<a href="http://casalib.org/blog/finally-an-as3-version/" target="_blank">source</a>]</p>
<p><span id="more-292"></span></p></blockquote>
<div class="list">
<div class="listGroup">
<ul>
<li id="org_casalib_util_AlignUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_AlignUtil.html"><span class="className">AlignUtil</span></a>
<ul class="summary">
<li>Provides utility functions aligning DisplayObjects.</li>
</ul>
</li>
<li id="org_casalib_errors_ArguementTypeError"><a href="http://as3.casalib.org/docs/org_casalib_errors_ArguementTypeError.html"><span class="className">ArguementTypeError</span></a></li>
<li id="org_casalib_errors_ArrayContentsError"><a href="http://as3.casalib.org/docs/org_casalib_errors_ArrayContentsError.html"><span class="className">ArrayContentsError</span></a></li>
<li id="org_casalib_util_ArrayUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_ArrayUtil.html"><span class="className">ArrayUtil</span></a>
<ul class="summary">
<li>Utilities for sorting, searching and manipulating Arrays.</li>
</ul>
</li>
<li id="org_casalib_load_AudioLoad"><a href="http://as3.casalib.org/docs/org_casalib_load_AudioLoad.html"><span class="className">AudioLoad</span></a>
<ul class="summary">
<li>Provides an easy and standardized way to load audio files.</li>
</ul>
</li>
<li id="org_casalib_load_BaseLoadItem"><a href="http://as3.casalib.org/docs/org_casalib_load_BaseLoadItem.html"><span class="className">BaseLoadItem</span></a>
<ul class="summary">
<li>Base class used by load classes.</li>
</ul>
</li>
<li id="org_casalib_display_CasaBitmap"><a href="http://as3.casalib.org/docs/org_casalib_display_CasaBitmap.html"><span class="className">CasaBitmap</span></a>
<ul class="summary">
<li>A base Bitmap that implements <a class="className" href="http://as3.casalib.org/docs/org_casalib_events_IRemovableEventDispatcher.html">IRemovableEventDispatcher</a> and <a class="className" href="http://as3.casalib.org/docs/org_casalib_core_IDestroyable.html">IDestroyable</a>.</li>
</ul>
</li>
<li id="org_casalib"><a href="http://as3.casalib.org/docs/org_casalib.html"><span class="className">casalib</span></a>
<ul class="summary">
<li>Creates an easy way to determine what version/release of CASA is being used.</li>
</ul>
</li>
<li id="org_casalib_display_CasaMovieClip"><a href="http://as3.casalib.org/docs/org_casalib_display_CasaMovieClip.html"><span class="className">CasaMovieClip</span></a>
<ul class="summary">
<li>A base MovieClip that implements <a class="className" href="http://as3.casalib.org/docs/org_casalib_events_IRemovableEventDispatcher.html">IRemovableEventDispatcher</a> and <a class="className" href="http://as3.casalib.org/docs/org_casalib_core_IDestroyable.html">IDestroyable</a>.</li>
</ul>
</li>
<li id="org_casalib_display_CasaSprite"><a href="http://as3.casalib.org/docs/org_casalib_display_CasaSprite.html"><span class="className">CasaSprite</span></a>
<ul class="summary">
<li>A base Sprite that implements <a class="className" href="http://as3.casalib.org/docs/org_casalib_events_IRemovableEventDispatcher.html">IRemovableEventDispatcher</a> and <a class="className" href="http://as3.casalib.org/docs/org_casalib_core_IDestroyable.html">IDestroyable</a>.</li>
</ul>
</li>
<li id="org_casalib_display_CasaTextField"><a href="http://as3.casalib.org/docs/org_casalib_display_CasaTextField.html"><span class="className">CasaTextField</span></a>
<ul class="summary">
<li>A base TextField that implements <a class="className" href="http://as3.casalib.org/docs/org_casalib_events_IRemovableEventDispatcher.html">IRemovableEventDispatcher</a> and <a class="className" href="http://as3.casalib.org/docs/org_casalib_core_IDestroyable.html">IDestroyable</a>.</li>
</ul>
</li>
<li id="org_casalib_util_ColorUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_ColorUtil.html"><span class="className">ColorUtil</span></a>
<ul class="summary">
<li>Provides utility functions for dealing with color.</li>
</ul>
</li>
<li id="org_casalib_util_ConversionUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_ConversionUtil.html"><span class="className">ConversionUtil</span></a>
<ul class="summary">
<li>Utilities for converting units.</li>
</ul>
</li>
<li id="org_casalib_load_DataLoad"><a href="http://as3.casalib.org/docs/org_casalib_load_DataLoad.html"><span class="className">DataLoad</span></a>
<ul class="summary">
<li>Provides an easy and standardized way to load data.</li>
</ul>
</li>
<li id="org_casalib_util_DateUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_DateUtil.html"><span class="className">DateUtil</span></a>
<ul class="summary">
<li>Provides utility functions for formatting and manipulating <code>Date</code> objects.</li>
</ul>
</li>
<li id="org_casalib_core_Destroyable"><a href="http://as3.casalib.org/docs/org_casalib_core_Destroyable.html"><span class="className">Destroyable</span></a>
<ul class="summary">
<li>Base class for objects that are destroyable.</li>
</ul>
</li>
<li id="org_casalib_layout_Distribution"><a href="http://as3.casalib.org/docs/org_casalib_layout_Distribution.html"><span class="className">Distribution</span></a>
<ul class="summary">
<li>Creates the mechanism to distribute DisplayObjects to a vertical or horzontal grid of columns and rows.</li>
</ul>
</li>
<li id="org_casalib_util_DrawUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_DrawUtil.html"><span class="className">DrawUtil</span></a>
<ul class="summary">
<li>Utilities for drawing shapes.</li>
</ul>
</li>
<li id="org_casalib_math_geom_Ellipse"><a href="http://as3.casalib.org/docs/org_casalib_math_geom_Ellipse.html"><span class="className">Ellipse</span></a>
<ul class="summary">
<li>Stores position and size of an ellipse (circle or oval).</li>
</ul>
</li>
<li id="org_casalib_time_EnterFrame"><a href="http://as3.casalib.org/docs/org_casalib_time_EnterFrame.html"><span class="className">EnterFrame</span></a>
<ul class="summary">
<li>Creates a centralized <code>enterFrame</code> event.</li>
</ul>
</li>
<li id="org_casalib_util_FlashVarUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_FlashVarUtil.html"><span class="className">FlashVarUtil</span></a>
<ul class="summary">
<li>Utility for providing easy access to HTML embeded FlashVars.</li>
</ul>
</li>
<li id="org_casalib_time_FrameDelay"><a href="http://as3.casalib.org/docs/org_casalib_time_FrameDelay.html"><span class="className">FrameDelay</span></a>
<ul class="summary">
<li>Creates a callback after one or more frames.</li>
</ul>
</li>
<li id="org_casalib_time_FrameTime"><a href="http://as3.casalib.org/docs/org_casalib_time_FrameTime.html"><span class="className">FrameTime</span></a>
<ul class="summary">
<li>Creates a common time which isn&#8217;t affected by delays caused by code execution; the time is only updated every frame.</li>
</ul>
</li>
<li id="org_casalib_time_FrameTimeStopwatch"><a href="http://as3.casalib.org/docs/org_casalib_time_FrameTimeStopwatch.html"><span class="className">FrameTimeStopwatch</span></a>
<ul class="summary">
<li>Functions exactly like <a class="className" href="http://as3.casalib.org/docs/org_casalib_time_Stopwatch.html">Stopwatch</a> but uses <a class="className" href="http://as3.casalib.org/docs/org_casalib_time_FrameTime.html">FrameTime</a> as the timing mechanism.</li>
</ul>
</li>
<li id="org_casalib_util_FrameUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_FrameUtil.html"><span class="className">FrameUtil</span></a>
<ul class="summary">
<li>Utilities for determining label positions and adding and removing frame scripts.</li>
</ul>
</li>
<li id="org_casalib_util_GeomUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_GeomUtil.html"><span class="className">GeomUtil</span></a>
<ul class="summary">
<li>Utilities for positioning, calculating and manipulating geometeric shapes.</li>
</ul>
</li>
<li id="org_casalib_load_GraphicLoad"><a href="http://as3.casalib.org/docs/org_casalib_load_GraphicLoad.html"><span class="className">GraphicLoad</span></a>
<ul class="summary">
<li>Provides an easy and standardized way to load images or SWF files.</li>
</ul>
</li>
<li id="org_casalib_load_GroupLoad"><a href="http://as3.casalib.org/docs/org_casalib_load_GroupLoad.html"><span class="className">GroupLoad</span></a>
<ul class="summary">
<li>Allows multiple loads to be grouped and treated as one larger load.</li>
</ul>
</li>
<li id="org_casalib_core_IDestroyable" class="interface"><a href="http://as3.casalib.org/docs/org_casalib_core_IDestroyable.html"><span class="className">IDestroyable</span> <span class="attribute">public interface</span></a></li>
<li id="org_casalib_collection_IList" class="interface"><a href="http://as3.casalib.org/docs/org_casalib_collection_IList.html"><span class="className">IList</span> <span class="attribute">public interface</span></a>
<ul class="summary">
<li>Interface for list collections.</li>
</ul>
</li>
<li id="org_casalib_time_Inactivity"><a href="http://as3.casalib.org/docs/org_casalib_time_Inactivity.html"><span class="className">Inactivity</span></a>
<ul class="summary">
<li>Detects user inactivity by checking for a void in mouse movement and key presses.</li>
</ul>
</li>
<li id="org_casalib_events_InactivityEvent"><a href="http://as3.casalib.org/docs/org_casalib_events_InactivityEvent.html"><span class="className">InactivityEvent</span></a>
<ul class="summary">
<li>An event dispatched from <a class="className" href="http://as3.casalib.org/docs/org_casalib_time_Inactivity.html">Inactivity</a>.</li>
</ul>
</li>
<li id="org_casalib_time_Interval"><a href="http://as3.casalib.org/docs/org_casalib_time_Interval.html"><span class="className">Interval</span></a>
<ul class="summary">
<li>To be used instead of <code>flash.utils.setInterval</code> and <code>flash.utils.setTimeout</code> functions.</li>
</ul>
</li>
<li id="org_casalib_events_IRemovableEventDispatcher" class="interface"><a href="http://as3.casalib.org/docs/org_casalib_events_IRemovableEventDispatcher.html"><span class="className">IRemovableEventDispatcher</span> <span class="attribute">public interface</span></a></li>
<li id="org_casalib_control_IResumable" class="interface"><a href="http://as3.casalib.org/docs/org_casalib_control_IResumable.html"><span class="className">IResumable</span> <span class="attribute">public interface</span></a></li>
<li id="org_casalib_control_IRunnable" class="interface"><a href="http://as3.casalib.org/docs/org_casalib_control_IRunnable.html"><span class="className">IRunnable</span> <span class="attribute">public interface</span></a></li>
<li id="org_casalib_ui_Key"><a href="http://as3.casalib.org/docs/org_casalib_ui_Key.html"><span class="className">Key</span></a>
<ul class="summary">
<li>Key class that simplifies listening to global key strokes and adds additional keyboard events.</li>
</ul>
</li>
<li id="org_casalib_ui_KeyCombo"><a href="http://as3.casalib.org/docs/org_casalib_ui_KeyCombo.html"><span class="className">KeyCombo</span></a>
<ul class="summary">
<li>Class for storing keyboard key code combinations.</li>
</ul>
</li>
<li id="org_casalib_events_KeyComboEvent"><a href="http://as3.casalib.org/docs/org_casalib_events_KeyComboEvent.html"><span class="className">KeyComboEvent</span></a>
<ul class="summary">
<li>An event dispatched in response to a user <a href="http://as3.casalib.org/docs/org_casalib_events_KeyComboEvent.html#DOWN">holding</a>, <a href="http://as3.casalib.org/docs/org_casalib_events_KeyComboEvent.html#RELEASE">releasing</a> or <a href="http://as3.casalib.org/docs/org_casalib_events_KeyComboEvent.html#SEQUENCE">typing</a> a combination of keys.</li>
</ul>
</li>
<li id="org_casalib_collection_List"><a href="http://as3.casalib.org/docs/org_casalib_collection_List.html"><span class="className">List</span></a>
<ul class="summary">
<li>An ordered or sequence collection that can contain duplicates.</li>
</ul>
</li>
<li id="org_casalib_events_ListenerManager"><a href="http://as3.casalib.org/docs/org_casalib_events_ListenerManager.html"><span class="className">ListenerManager</span></a>
<ul class="summary">
<li>Creates an easy way to implement <a class="className" href="http://as3.casalib.org/docs/org_casalib_events_IRemovableEventDispatcher.html">IRemovableEventDispatcher</a> when you cannot extend directly from <a class="className" href="http://as3.casalib.org/docs/org_casalib_events_RemovableEventDispatcher.html">RemovableEventDispatcher</a>.</li>
</ul>
</li>
<li id="org_casalib_events_LoadEvent"><a href="http://as3.casalib.org/docs/org_casalib_events_LoadEvent.html"><span class="className">LoadEvent</span></a>
<ul class="summary">
<li>An event dispatched during loading.</li>
</ul>
</li>
<li id="org_casalib_load_LoadItem"><a href="http://as3.casalib.org/docs/org_casalib_load_LoadItem.html"><span class="className">LoadItem</span></a>
<ul class="summary">
<li>Base class used by load classes.</li>
</ul>
</li>
<li id="org_casalib_util_LoadUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_LoadUtil.html"><span class="className">LoadUtil</span></a>
<ul class="summary">
<li>Utilities for calculating a load&#8217;s speed and progress.</li>
</ul>
</li>
<li id="org_casalib_util_LocationUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_LocationUtil.html"><span class="className">LocationUtil</span></a>
<ul class="summary">
<li> Utilities for determining the location of the SWF and the type of runtime environment.</li>
</ul>
</li>
<li id="org_casalib_util_NavigateUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_NavigateUtil.html"><span class="className">NavigateUtil</span></a>
<ul class="summary">
<li>Simplifies <code>navigateToURL</code> and <code>window.open</code> requests.</li>
</ul>
</li>
<li id="org_casalib_util_NumberUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_NumberUtil.html"><span class="className">NumberUtil</span></a>
<ul class="summary">
<li>Provides utility functions for manipulating numbers.</li>
</ul>
</li>
<li id="org_casalib_util_ObjectUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_ObjectUtil.html"><span class="className">ObjectUtil</span></a>
<ul class="summary">
<li>Utilities for working with Objects.</li>
</ul>
</li>
<li id="org_casalib_math_Percent"><a href="http://as3.casalib.org/docs/org_casalib_math_Percent.html"><span class="className">Percent</span></a>
<ul class="summary">
<li>Creates a standardized way of describing and storing percentages.</li>
</ul>
</li>
<li id="org_casalib_math_geom_Point3d"><a href="http://as3.casalib.org/docs/org_casalib_math_geom_Point3d.html"><span class="className">Point3d</span></a>
<ul class="summary">
<li>Stores location of a point in a three-dimensional coordinate system, where x represents the horizontal axis, y represents the vertical axis, z represents the axis that is vertically perpendicular to the x/y axis or depth.</li>
</ul>
</li>
<li id="org_casalib_process_Process"><a href="http://as3.casalib.org/docs/org_casalib_process_Process.html"><span class="className">Process</span></a>
<ul class="summary">
<li>Base process class.</li>
</ul>
</li>
<li id="org_casalib_events_ProcessEvent"><a href="http://as3.casalib.org/docs/org_casalib_events_ProcessEvent.html"><span class="className">ProcessEvent</span></a>
<ul class="summary">
<li>An event dispatched during a <a class="className" href="http://as3.casalib.org/docs/org_casalib_process_Process.html">Process</a>.</li>
</ul>
</li>
<li id="org_casalib_process_ProcessGroup"><a href="http://as3.casalib.org/docs/org_casalib_process_ProcessGroup.html"><span class="className">ProcessGroup</span></a>
<ul class="summary">
<li>Manages and threads <a class="className" href="http://as3.casalib.org/docs/org_casalib_process_Process.html">processes</a>.</li>
</ul>
</li>
<li id="org_casalib_util_PropertySetter"><a href="http://as3.casalib.org/docs/org_casalib_util_PropertySetter.html"><span class="className">PropertySetter</span></a>
<ul class="summary">
<li>Creates a setter function for properties.</li>
</ul>
</li>
<li id="org_casalib_transitions_PropertyTween"><a href="http://as3.casalib.org/docs/org_casalib_transitions_PropertyTween.html"><span class="className">PropertyTween</span></a>
<ul class="summary">
<li>A simple property tween class that extends <a class="className" href="http://as3.casalib.org/docs/org_casalib_transitions_Tween.html">Tween</a>.</li>
</ul>
</li>
<li id="org_casalib_util_QueryStringUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_QueryStringUtil.html"><span class="className">QueryStringUtil</span></a>
<ul class="summary">
<li>Utility for providing easy access to the browser query string.</li>
</ul>
</li>
<li id="org_casalib_math_Range"><a href="http://as3.casalib.org/docs/org_casalib_math_Range.html"><span class="className">Range</span></a>
<ul class="summary">
<li>Creates a standardized way of describing and storing an extent of variation/a value range.</li>
</ul>
</li>
<li id="org_casalib_util_RatioUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_RatioUtil.html"><span class="className">RatioUtil</span></a>
<ul class="summary">
<li>Provides utility functions for ratio scaling.</li>
</ul>
</li>
<li id="org_casalib_events_RemovableEventDispatcher"><a href="http://as3.casalib.org/docs/org_casalib_events_RemovableEventDispatcher.html"><span class="className">RemovableEventDispatcher</span></a>
<ul class="summary">
<li>Extends <code>EventDispatcher</code> to allow for simple and quick removal of event listeners.</li>
</ul>
</li>
<li id="org_casalib_events_RetryEvent"><a href="http://as3.casalib.org/docs/org_casalib_events_RetryEvent.html"><span class="className">RetryEvent</span></a>
<ul class="summary">
<li>An event dispatched when a load request is retried after previously failing.</li>
</ul>
</li>
<li id="org_casalib_display_ReversibleMovieClip"><a href="http://as3.casalib.org/docs/org_casalib_display_ReversibleMovieClip.html"><span class="className">ReversibleMovieClip</span></a>
<ul class="summary">
<li>Provides additional timeline controlling functions: <a href="http://as3.casalib.org/docs/org_casalib_display_ReversibleMovieClip.html#reverse">reverse</a> and <a href="http://as3.casalib.org/docs/org_casalib_display_ReversibleMovieClip.html#gotoAndReverse">gotoAndReverse</a>.</li>
</ul>
</li>
<li id="org_casalib_time_Sequence"><a href="http://as3.casalib.org/docs/org_casalib_time_Sequence.html"><span class="className">Sequence</span></a>
<ul class="summary">
<li>Creates a sequence of methods calls that wait for a specified event and/or delay.</li>
</ul>
</li>
<li id="org_casalib_events_SequenceEvent"><a href="http://as3.casalib.org/docs/org_casalib_events_SequenceEvent.html"><span class="className">SequenceEvent</span></a>
<ul class="summary">
<li>An event dispatched from <a class="className" href="http://as3.casalib.org/docs/org_casalib_time_Sequence.html">Sequence</a>.</li>
</ul>
</li>
<li id="org_casalib_util_StageReference"><a href="http://as3.casalib.org/docs/org_casalib_util_StageReference.html"><span class="className">StageReference</span></a>
<ul class="summary">
<li>Stores a reference to Stage for classes that cannot easily access it.</li>
</ul>
</li>
<li id="org_casalib_time_Stopwatch"><a href="http://as3.casalib.org/docs/org_casalib_time_Stopwatch.html"><span class="className">Stopwatch</span></a>
<ul class="summary">
<li>Simple stopwatch class that records elapsed time in milliseconds.</li>
</ul>
</li>
<li id="org_casalib_util_StringUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_StringUtil.html"><span class="className">StringUtil</span></a>
<ul class="summary">
<li>Utilities for manipulating and searching Strings.</li>
</ul>
</li>
<li id="org_casalib_util_TextFieldUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_TextFieldUtil.html"><span class="className">TextFieldUtil</span></a>
<ul class="summary">
<li>Utilities for working with TextFields.</li>
</ul>
</li>
<li id="org_casalib_transitions_Tween"><a href="http://as3.casalib.org/docs/org_casalib_transitions_Tween.html"><span class="className">Tween</span></a>
<ul class="summary">
<li>Simple and easily extendable tween/transition class.</li>
</ul>
</li>
<li id="org_casalib_events_TweenEvent"><a href="http://as3.casalib.org/docs/org_casalib_events_TweenEvent.html"><span class="className">TweenEvent</span></a>
<ul class="summary">
<li>An event dispatched from <a class="className" href="http://as3.casalib.org/docs/org_casalib_transitions_Tween.html">Tween</a>.</li>
</ul>
</li>
<li id="org_casalib_collection_UniqueList"><a href="http://as3.casalib.org/docs/org_casalib_collection_UniqueList.html"><span class="className">UniqueList</span></a>
<ul class="summary">
<li>An ordered or sequence collection that contains no duplicates.</li>
</ul>
</li>
<li id="org_casalib_util_ValidationUtil"><a href="http://as3.casalib.org/docs/org_casalib_util_ValidationUtil.html"><span class="className">ValidationUtil</span></a>
<ul class="summary">
<li>Utilities for validating common string formats.</li>
</ul>
</li>
<li id="org_casalib_events_VideoInfoEvent"><a href="http://as3.casalib.org/docs/org_casalib_events_VideoInfoEvent.html"><span class="className">VideoInfoEvent</span></a>
<ul class="summary">
<li>An event dispatched when meta data, or cue point is received from the <a class="className" href="http://as3.casalib.org/docs/org_casalib_load_VideoLoad.html">VideoLoad</a>.</li>
</ul>
</li>
<li id="org_casalib_load_VideoLoad"><a href="http://as3.casalib.org/docs/org_casalib_load_VideoLoad.html"><span class="className">VideoLoad</span></a>
<ul class="summary">
<li>Provides an easy and standardized way to load video files.</li>
</ul>
</li>
<li id="org_casalib_events_VideoLoadEvent"><a href="http://as3.casalib.org/docs/org_casalib_events_VideoLoadEvent.html"><span class="className">VideoLoadEvent</span></a>
<ul class="summary">
<li>An event dispatched from <a class="className" href="http://as3.casalib.org/docs/org_casalib_load_VideoLoad.html">VideoLoad</a>.</li>
</ul>
</li>
</ul>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://drawlogic.com/2008/12/04/as3-casalib-useful-library-of-common-functions-and-tools-for-flash/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>AS3 Papervision 3D Debugging/Stats with PV3DDebug</title>
		<link>http://drawlogic.com/2008/09/24/as3-papervision-3d-debuggingstats-with-pv3ddebug/</link>
		<comments>http://drawlogic.com/2008/09/24/as3-papervision-3d-debuggingstats-with-pv3ddebug/#comments</comments>
		<pubDate>Wed, 24 Sep 2008 11:36:04 +0000</pubDate>
		<dc:creator>drawk</dc:creator>
				<category><![CDATA[3d]]></category>
		<category><![CDATA[3D ENGINES]]></category>
		<category><![CDATA[ACTIONSCRIPT]]></category>
		<category><![CDATA[ACTIONSCRIPT3]]></category>
		<category><![CDATA[ARCHITECT]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[BENCHMARK]]></category>
		<category><![CDATA[DEBUGGING]]></category>
		<category><![CDATA[DEVELOPMENT]]></category>
		<category><![CDATA[FLASH]]></category>
		<category><![CDATA[FLEX]]></category>
		<category><![CDATA[GAMEDEV]]></category>
		<category><![CDATA[PAPERVISION]]></category>
		<category><![CDATA[PERFORMANCE]]></category>
		<category><![CDATA[PROGRAMMING]]></category>
		<category><![CDATA[TECHNOLOGY]]></category>
		<category><![CDATA[console]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[panel]]></category>
		<category><![CDATA[TOOLS]]></category>
		<category><![CDATA[utility]]></category>

		<guid isPermaLink="false">http://drawk.wordpress.com/?p=268</guid>
		<description><![CDATA[I have been doing lots of Papervision 3D for a project recently and needed to debug some placement and camera issues.  I did a quick search and found PV3DDebug by Jason Bejot and it worked out great and is a pretty sweet utility I thought I would mention when you need to debug Papervision or [...]]]></description>
			<content:encoded><![CDATA[<p>I have been doing lots of Papervision 3D for a project recently and needed to debug some placement and camera issues.  I did a quick search and found <a href="http://jasonbejot.com/?p=16" target="_blank">PV3DDebug by Jason Bejot </a>and it worked out great and is a pretty sweet utility I thought I would mention when you need to debug Papervision or even for inclusion as a debug console in all your papervision apps and games. It is a good base for your own consoles or debug panels. It is also a great tool to help out with focus and zoom issues and understanding with camera placement.</p>
<p>The code is really easy to drop in and you can get lots of info on the PV3D scenes and camera manipulation.</p>
<ul>
<li><a href="http://jasonbejot.com/?page_id=22" target="_blank">Check out PV3DDebug</a></li>
<li><a href="http://jasonbejot.com/?p=16" target="_blank">Posting on the project</a></li>
</ul>
<p><a href="http://jasonbejot.com/?page_id=22" target="_blank"><img class="alignnone" title="PV3DDebug for Flash AS3" src="http://farm4.static.flickr.com/3074/2884129399_00588f52b5_o.png" alt="" width="383" height="363" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://drawlogic.com/2008/09/24/as3-papervision-3d-debuggingstats-with-pv3ddebug/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>HOWTO: Using AS3 to Get Age from Birthday (Birthdate)</title>
		<link>http://drawlogic.com/2008/04/16/howto-using-as3-to-get-age-from-birthday-birthdate/</link>
		<comments>http://drawlogic.com/2008/04/16/howto-using-as3-to-get-age-from-birthday-birthdate/#comments</comments>
		<pubDate>Wed, 16 Apr 2008 21:17:43 +0000</pubDate>
		<dc:creator>drawk</dc:creator>
				<category><![CDATA[ACTIONSCRIPT]]></category>
		<category><![CDATA[ACTIONSCRIPT3]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[DEVELOPMENT]]></category>
		<category><![CDATA[FLASH]]></category>
		<category><![CDATA[PROGRAMMING]]></category>
		<category><![CDATA[TECHNOLOGY]]></category>
		<category><![CDATA[age]]></category>
		<category><![CDATA[date]]></category>
		<category><![CDATA[utility]]></category>

		<guid isPermaLink="false">http://drawk.wordpress.com/?p=188</guid>
		<description><![CDATA[I had to implement a get age method for something we were working on. I was surprised to not find an AS3 version easily, so busted one out. I thought maybe this would be in as3corelib but nope. So posting this in case anyone else is looking for a get age script in AS3. It [...]]]></description>
			<content:encoded><![CDATA[<p>I had to implement a get age method for something we were working on.  I was surprised to not find an AS3 version easily, so busted one out. I <a href="http://code.google.com/p/as3corelib/source/browse/trunk/src/com/adobe/utils/DateUtil.as" target="_blank">thought maybe this would be in as3corelib</a> but nope.  So posting this in case anyone else is looking for a get age script in AS3. It was quick so any improvements just post them. It will be added to my utilities classes on google code soon it is in quick form so you can jsut plop in an .fla or a class.</p>
<p>The pseudo code is the same for getting age in any language.  Get current date, get birthdate to compare.  Subtract the current years from the birthday years, then subtract one more year if the day or month is less than today&#8217;s day and month.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> calculateAge<span style="color: #009900;">&#40;</span>birthdate<span style="color: #339933;">:</span>Date<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span>Number <span style="color: #009900;">&#123;</span>
    <span style="color: #003366; font-weight: bold;">var</span> dtNow<span style="color: #339933;">:</span>Date <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Date<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #006600; font-style: italic;">// gets current date</span>
    <span style="color: #003366; font-weight: bold;">var</span> currentMonth<span style="color: #339933;">:</span>Number <span style="color: #339933;">=</span> dtNow.<span style="color: #660066;">getMonth</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #003366; font-weight: bold;">var</span> currentDay<span style="color: #339933;">:</span>Number <span style="color: #339933;">=</span> dtNow.<span style="color: #660066;">getDay</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #003366; font-weight: bold;">var</span> currentYear<span style="color: #339933;">:</span>Number <span style="color: #339933;">=</span> dtNow.<span style="color: #660066;">getFullYear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #003366; font-weight: bold;">var</span> bdMonth<span style="color: #339933;">:</span>Number <span style="color: #339933;">=</span> birthdate.<span style="color: #660066;">getMonth</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #003366; font-weight: bold;">var</span> bdDay<span style="color: #339933;">:</span>Number <span style="color: #339933;">=</span> birthdate.<span style="color: #660066;">getDay</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #003366; font-weight: bold;">var</span> bdYear<span style="color: #339933;">:</span>Number <span style="color: #339933;">=</span> birthdate.<span style="color: #660066;">getFullYear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #006600; font-style: italic;">// get the difference in years</span>
    <span style="color: #003366; font-weight: bold;">var</span> years<span style="color: #339933;">:</span>Number <span style="color: #339933;">=</span> dtNow.<span style="color: #660066;">getFullYear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> birthdate.<span style="color: #660066;">getFullYear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #006600; font-style: italic;">// subtract another year if we're before the</span>
    <span style="color: #006600; font-style: italic;">// birth day in the current year</span>
    <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>currentMonth <span style="color: #339933;">&lt;</span> bdMonth <span style="color: #339933;">||</span> <span style="color: #009900;">&#40;</span>currentMonth <span style="color: #339933;">==</span> bdMonth <span style="color: #339933;">&amp;&amp;</span> currentDay <span style="color: #339933;">&lt;</span> bdDay<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        years<span style="color: #339933;">--;</span>
    <span style="color: #009900;">&#125;</span>
    <span style="color: #000066; font-weight: bold;">return</span> years<span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> dateStringToObject<span style="color: #009900;">&#40;</span>dateString<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span>Date <span style="color: #009900;">&#123;</span>
    <span style="color: #003366; font-weight: bold;">var</span> date_ar <span style="color: #339933;">=</span> dateString.<span style="color: #660066;">split</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;/&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000066; font-weight: bold;">return</span> <span style="color: #003366; font-weight: bold;">new</span> Date<span style="color: #009900;">&#40;</span>date_ar<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">2</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span>date_ar<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">-</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">,</span>date_ar<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">1</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">var</span> dateNow<span style="color: #339933;">:</span>Date <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Date<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> checkDate<span style="color: #339933;">:</span>String <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;11/25/1976&quot;</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> dateBirthday<span style="color: #339933;">:</span>Date <span style="color: #339933;">=</span> dateStringToObject<span style="color: #009900;">&#40;</span>checkDate<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
trace<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;dateNow = &quot;</span><span style="color: #339933;">+</span>dateNow<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
trace<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;dateBirthday = &quot;</span><span style="color: #339933;">+</span>dateBirthday<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
trace<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;age = &quot;</span><span style="color: #339933;">+</span>calculateAge<span style="color: #009900;">&#40;</span>dateBirthday<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://drawlogic.com/2008/04/16/howto-using-as3-to-get-age-from-birthday-birthdate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

