April 29, 2009

AVM1Movie Controller in Flex

Filed under: Flex — Anthony @ 5:28 pm

I just wanted everyone to know about this awesome class i found. I needed to load some Flash 8 movies into my flex application and control the play head dependent on labels inside the flash movie.

This was proving really hard until i found that class now it is a piece of cake!
Thanks whoever you are maruthi2000

March 18, 2009

Unable to Catch IOErrorEvent’s when Loading a ByteArray into an Image

Filed under: ActionScript, Bug Fixes, Flex — Anthony @ 1:07 pm

I was trying to load a byteArray into an image control today and would randomly get an Unhandled IOErrorEvent message. Now this shouldn't really happen as the image control uses a default broken image icon to display when there are any loading problems. Well after trying to catch the error unsuccessfully I wanted to know what was going on.
So i went digging and i found in the base class of image, SWFLoader line 1497 the following (more...)

March 12, 2009

Flex Cookbook Recipe 5.8 Allow Certain items in a list to be selectable, Doesn’t quite work correctly

Filed under: ActionScript, Bug Fixes, Flex — Anthony @ 11:38 am

Ok I needed to disable Heading elements inside a List Component in Flex, and i was being too lazy to work it out for myself so i picked up the Flex cookbook Adobe had been kind enough to send me and yes... It was there. Now the Mouse removal was straight forward and worked like a charm. But the keyboard events were a different story. The code didn't work for several reasons.
1. Key directions were not being assigned.
2. When a disabled item was at either the top or the bottom of the list it would stop you being able to continue down / up the list.
To fix this i added the following code. (more...)

March 9, 2009

Augmented Reality

Filed under: ActionScript, Flex — Anthony @ 10:40 am

I saw this post over on Ryan Stewarts Blog today and thought that i would mention in addition to the FLARToolkit download you can also download the source flex project from Saqoosha's demo at Max Japan here.

March 5, 2009

Salesforce ActionScript Fun

Filed under: ActionScript, Bug Fixes, Flex — Anthony @ 4:41 pm

Ok I have been working with the salesforce API for a couple of days now and I have found it very interesting. However I have found a few things that don't seem to be very clear when trying to simply login to your account from an application that is running outside of the salesforce Sandbox.
So as i have seen a lot of posts about this i have decided to explain how i go about logging in here.

1. To login you need 3 things
1. Username in the form user@user.com
2. Password.
3. Security Token
To get the security token for a user go to setup>Reset your security token. This will then be emailed to you.

Logging into an Administrators account seems to be different than logging into a normal users account.
For Administrators you have to set the protocol to 'http' for normal users set it to 'https' in addition we have to add the token to the password as follows.

 
private var _conn : Connection = new Connection( );
 
private function login( username : String, password : String,
           token : String, isAdmin : Boolean = false ) : void
{
    _connection.protocol = isAdmin ? 'http' : 'https';
    var login : LoginRequest = new LoginRequest( );
	  login.username = value..username;
	  login.password = value..password.toString( )
                                    + value..token.toString( );
	  login.callback = new Responder( loginResult, loginFault );
	 _connection.login( login );
}
 
January 27, 2009

Number Romanizer

Filed under: ActionScript, Flex — Anthony @ 2:58 am

I was messing around on a personal project today and had to build a simple converter to change numbers into Roman Numerals. Below is the result. Had a few issues trying to use a simple object to hold the numerals as ActionScript was sorting the object Alphabetically which meant I was getting false results especially with 4's which would return four 'I''s instead of the correct 'IV'.

 
/**
* Function that turns any number into it's roman numeral
* equivelant.
* We have to use an array to hold the values as if we use
* a Dictionary / Object actionScript sorts it alphabetically.
* and we don't get the correct results.
*
* @param value : Number 0 - 9999;
*/
public static function romanize( value : Number ) : String
{
var numerals : Array = [
{ label : 'M', value : 1000 },
{ label : 'CM', value : 900 },
{ label : 'D', value : 500 },
{ label : 'CD', value : 400 },
{ label : 'C', value : 100 },
{ label : 'XC', value : 90 },
{ label : 'L', value : 50 },
{ label : 'XL', value : 40 },
{ label : 'X', value : 10 },
{ label : 'IX', value : 9 },
{ label : 'V', value : 5 },
{ label : 'IV', value : 4 },
{ label : 'I', value : 1 }
]
 
var roman : String = '';
 
for( var i : String in numerals )
{
while( value >= numerals[ i ].value )
{
roman += numerals[ i ].label;
value -= numerals[ i ].value;
}
}
 
return roman;
}
January 5, 2009

Time Calculator

Filed under: ActionScript, Flex — Anthony @ 11:19 pm

I recently found a post about someone needing a good time calculator and seeing as I had recently written one for the redbullracing website I figured I should improve it and release it here.

Features

  • Calculates time bi-directionally ie: if the date is in the past it will tell you the time since it elapsed or if it is in the future it will tell you the time left until it elapses.
  • Optionally set a expiration string to be returned when the date has been reached.
  • Fires a TimeCalculator.TIME_EXPIRED event when the time expires.
  • Set the precision level of the return values. ( YEARS, MONTHS, DAYS, WEEKS, HOURS, MINUTES, SECONDS, MILLISECONDS ). This allows you to return values for example where the date is 1 year 2 months in the future but you don't care about the years you just want the number of months, days, hours, minutes, seconds, milliseconds till that date. ie 13 months, 30days, 23hours, 59minutes, etc...
  • Individual time accessors ie get Years( ); Months( ); Days( ); etc... until the due date.
  • Set labels and separators to be returned with the time strings labels( 'years', 'months' ). 01years : 01months.
  • Optionally set removeEmptyTImes = false; This will display values that have no time associated with them. For example for a date 2 months in the future with a precision set to YEARS, the default return value from _timeCalculator.calculateTime( ); would be 01 : 30 :  23 : 59 : 59 : 999 with the years not being returned and the date starting at the months. However if you set removeEmptyTimes = false the return date would be 00 : 01 : 30 :  23 : 59 : 59 : 999 showing the years as 00 values.
  • Turn off individual time ammounts so if you wanted just the years, months and days for a given date you can set showHours = false; This will cut the date at the Days and only return YEARS : MONTHS : DAYS.

As usual you can right click to view the source.. Any comments suggestions or errors please leave a comment.

System.vmVersion

Filed under: ActionScript — Anthony @ 11:57 am

A fellow Senior Rich Internet Applications Developer at work Sam found a nice new undocumented attribute in the Systems package today. vmVersion seems to return the current Flash player virtual machine running on your computer. Mine, and Sams for that matter traces out as 1.0 cyclone. Not sure how useful this is but interesting none the less.

November 14, 2008

Hidden API’s in Flex

Filed under: ActionScript, Flex — Anthony @ 11:05 am

I have recently been doing a lot of searching around inside the Flex Components and I have come accross some interesting imports / classes that don't appear to be in the API documents. However there are a few good sites out there that have started documenting these API's trying to work out there usages.

The one i have been using most often is

The Flex Non-Docs

However I have also found a few imports that are documented but that don't provide the ability to use auto complete or allow you to import them automatically

for example

mx.utils.DescribeTypeCacheRecord and mx.utils.DescribeTypeCache

If anyone knows how to actively stop code hinting for class's and would like to share that would be great!

October 15, 2008

Dashed VRule and HRule Components

Filed under: ActionScript, Flex — Anthony @ 2:55 pm

I am always coding dashed lines in ActionScript and I got sick of it so i was going to create some little components to use instead. But I had an idea why not google it first? And heypresto no need to build them as Justin Opitz has done it for us.

visit the post here

Thanks