<?xml version="1.0" ?> 
<?xml-stylesheet type='text/xsl' href='cmxrss.xslt' version='1.0'?>
<!--  RSS generation by 'communitymx.com' on Fri, 24 May 2013 03:14:45 GMT   --> 
<rss version="0.92">
	<channel>
		<title>Community MX Blog: Flash</title> 
		<link>http://www.communitymx.com/blog/?cat=2</link> 
		<description>Community MX Member Blog</description> 
		<webMaster>admin@communitymx.com</webMaster> 
		<language>en-us</language> 
		<item>
			<title>Capital Flash Camp Discount Code</title>
			<description>		Capital Flash Camp  Full-day event focusing on the Adobe Flash Platform. Join us on April 16th at the The Heritage Center at the U.S. Navy Memorial and enhance your skills in ActionScript and Flex while learning from local and national industry experts. Flash Camp will provide an introduction to the Flash Platform as well as covering advanced topics for existing Flex and ActionScript developers. In addition to great training, this is also a fabulous venue for networking with other developers in the community. Reserve your seat now!  Register now and become eligible for our exciting giveaways, including a copy of Flash Builder and a license for FDT Pure!  Terrence Ryan, Platform Evangelist at Adobe, will be our opening keynote.  $20 discount code for all interested in attending: Click Here...  ...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=960</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=960</guid>
			<pubDate>Wed, 07 Apr 2010 21:03:54 GMT</pubDate>
		</item>
		<item>
			<title>Adobe MAX - Upcoming!</title>
			<description>Yes, I&apos;ve been meaning to put this up for quite some time but my schedule of late has made it tough to get much blog writing done. Before Adobe MAX starts, while people are deciding on their sessions, I wanted to make a quick post with more info about my sessions and other MAX happenings. Here they are in order of occurrence:
Greg Rewis (my co-author) and his fellow CS4 Web Tools evangelists will be doing a full day session on Sunday called, Designing Across Media with Adobe Creative Suite 4. This was an extremely popular session last year. The evangelists show how to use the tools in an integrated manor and really get the most out of then to benefit your web projects. Believe me, after writing a book with one of them, I can testify that they know stuff about these tools we never even thought of. ;) You must sign up for this in advance, so act quickly.
Monday, Greg Rewis  and I will be doing a book signing at noon. Yes, the CS4 version of our book won&apos;t be out till December, but you can pre-order both the book and the upcoming videos. (I&apos;ve done one for Pearson/Peachpit about Structure and Presentation -- along with CSS tips and tricks. Greg&apos;s upcoming video is about Behavior -- ...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=932</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=932</guid>
			<pubDate>Fri, 14 Nov 2008 00:51:12 GMT</pubDate>
		</item>
		<item>
			<title>Designers AND Developers...</title>
			<description>So there&apos;s been a pretty decent sized debate going on through the webosphere. Designers should know how to code. Developers should know how to design (or shouldn&apos;t need to design). I considered weighing in on the 37 Signals blog -- but the comments were already closed. Call me slow (yes, I&apos;ve been on the road, had a birthday, and had my mom visiting with her birthday. ;). You&apos;d be right. Oh well.
I do have one thing to say. Well, I probably have more than one, but I&apos;ll start with that. I recently did a couple sessions at the HOW design conference. One was on &quot;Mistakes Print Designers Make on the Web.&quot; Yes, I definitely agree there are common mistakes from the print paradigm. Many times I can tell how people&apos;s brains work when they ask for help on lists. I can tell they don&apos;t understand the web or come from a print background. However, that does NOT mean I think they are useless. Do I think they should know how the web works? That the web is a fluid, not static medium? Am I willing to help them learn (if they&apos;re going to be in my &quot;designer stable&quot;)? He77s yea. I am willing. Because I think they are very important to our industry.
Do I think that coders should not use a graphic med...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=922</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=922</guid>
			<pubDate>Fri, 27 Jun 2008 03:26:26 GMT</pubDate>
		</item>
		<item>
			<title>I&apos;ve got a secret to share</title>
			<description>				TODCon will be here very soon. Yep, I&apos;m counting the days. OK that&apos;s not the secret.It&apos;ll be great to hook up with some CMX friends and regular TODCon attendees and speakers. Well, that&apos;s no secret either.I&apos;ve written the last three CMXtraneous blog posts! That&apos;s more of a shock than a surprise, though.&amp;nbsp;I&apos;m pretty stoked about the Fireworks public beta. The Fireworks engineering team has done a phenominal job. It&apos;s to the point now where I don&apos;t like going back to CS3. Yeah, not really a secret there either, the way I&apos;ve been blabbing all week long about it.The secret is my second TODCon session. It will be a live demo of the new features in the Fireworks Public beta! We&apos;ll look at some of the cool features you&apos;ve read about in my recent articles as well as Kim Cavanaugh&apos;s piece on the Path panel. Based on what you&apos;ve read and heard this week, I hope you pull up a chair for my session. Alan Musselman from Adobe will also be presenting a session on Fireworks. He&apos;ll no doubt have some very awesome and cool stuff to share as well.I&apos;m looking forward to seeing everyone. I&apos;ll be the guy with the loud shirt and - new this year - a limp (sprained my ankle and pulled a tendon a co...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=918</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=918</guid>
			<pubDate>Sun, 01 Jun 2008 01:29:01 GMT</pubDate>
		</item>
		<item>
			<title>Dynamic TextField Interfering with Button Click in AS3.0</title>
			<description>Something that had me quite frustrated for some time was a dynamic textfield in a button interfering with a mouse click. The buttons were added to the application dynamically when needed and the dynamic textfield was populated with the name for the button when added. Yes, I had the textfield&apos;s selectable property set to false but it was still a problem if the button&apos;s buttonMode and useHandCursor properties were set to true. The text field blocked any kind of mouse event through to the button. The solution was simple but poorly documented. I did not see this property in the help menu so here you go:
textfieldName.mouseEnabled = false;
Set this property before setting the selectable property to false and away you go. I hope this saves you some hair-pulling and you found this easy enough if you&apos;ve been searching for a solution to this problem....</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=895</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=895</guid>
			<pubDate>Wed, 02 Jan 2008 14:27:58 GMT</pubDate>
		</item>
		<item>
			<title>How to Build a Flash Video (FLV) Progress Bar (Part 2)</title>
			<description>In Part 1, not quite a week ago, we looked at a relatively simple way to track the progress of an FLV file as played without the FLVPlayback Component in a SWF.&amp;nbsp; Here in Part 2, we&amp;rsquo;ll make the knob draggable, causing the video to seek to the point in time that corresponds to the knob on its track.&amp;nbsp; As it turns out, the ActionScript involved doesn&amp;rsquo;t change all that much.&amp;nbsp; It may look like a lot more code, but the mechanics should be easy enough to follow.
An answer, short and sweet
Picking up from last time, we have a Video object on the Stage with the instance name videoPlayer.&amp;nbsp; We have two movie clips, also on the main timeline, with the instance names knob and track.&amp;nbsp; Here&amp;rsquo;s the code, and I&amp;rsquo;ll step through what changed from last time.
var duration:Number = 0;
var ratio:Number = 0;
var id:Number = 0;

var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(nc);
videoPlayer.attachVideo(ns);
ns.play(&amp;quot;monovideo2.flv&amp;quot;);

ns.onMetaData = function(evt:Object):Void {
  duration = evt.duration;
  ratio = track._width / duration;
  id = setInterval(updateKnob, 50);
};

ns.on...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=869</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=869</guid>
			<pubDate>Tue, 10 Jul 2007 14:20:35 GMT</pubDate>
		</item>
		<item>
			<title>How to Build a Flash Video (FLV) Progress Bar (Part 1)</title>
			<description>Following on the heels, at least conceptually, of &amp;ldquo;How to Control Video (FLV) without a Component&amp;rdquo; here&amp;rsquo;s a quick look at how to indicate the progression of an FLV by way of a custom made progress bar (thanks for the suggestion, Rick!).&amp;nbsp; In a follow-up article, I&amp;rsquo;ll show how to make the progress bar interactive by having the draggable knob seek to keyframes in the FLV.&amp;nbsp; It turns out that much of the code for this first part derives from &amp;ldquo;How to Determine the Completion of a Flash Video (FLV) File,&amp;rdquo; which shows how to determine video length, with and without the use of Components, in ActionScript 2.0.&amp;nbsp; In this article, we&amp;rsquo;ll be going the non-Component route, because FLVPlayback already has a progress bar.&amp;nbsp; Before we delve into the code, we need to prepare two small movie clips.
Creating the progress bar itself
The artwork can get as pretty as you like, but for illustrative purposes, all you need for the progress bar&amp;rsquo;s track is a rectangle.&amp;nbsp; Mine happens to be 12 x 180.&amp;nbsp; Draw the rectangle and convert it to a movie clip, making sure the registration point is in the upper left corner.&amp;nbsp; Give it the ins...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=867</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=867</guid>
			<pubDate>Thu, 05 Jul 2007 12:04:55 GMT</pubDate>
		</item>
		<item>
			<title>Making Buttons Work in Flash CS3 (ActionScript 3.0)</title>
			<description>At the time of this writing, Flash CS3 is still brand spankin&amp;rsquo; new on the shelves.&amp;nbsp; For some lucky folks, whose companies presumably have volume discounts with Adobe, the latest version of Flash is already in their hands &amp;mdash; has, in fact, already been installed without any fanfare or training.&amp;nbsp; Some of these designer/developers are finding, quite suddenly, that button symbols no longer seem to work in Flash CS3 (I&amp;rsquo;ve seen quite a few panic posts already on the Adobe forums).&amp;nbsp; What gives?&amp;nbsp; Is Flash broken?&amp;nbsp; Not a bit of it!&amp;nbsp; :)&amp;nbsp; Let&amp;rsquo;s see what&amp;rsquo;s going on.
ActionScript 3.0 is a new language
The truth of the matter is, ActionScript 3.0 is different, in many respects, from AS2 or 1.&amp;nbsp; (As it happens, it&amp;rsquo;s also the same in many respects, which can be a source of frustration for experienced users, but chin up!)&amp;nbsp; One of the most basic, familiar things people do in Flash is to assign some ActionScript to a button.&amp;nbsp; In former versions of ActionScript, this could be done in a number of ways, as explained a bit in &amp;ldquo;Museum Pieces:&amp;nbsp; on() and onClipEvent().&amp;rdquo;&amp;nbsp; In AS3, the rules have changed....</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=863</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=863</guid>
			<pubDate>Thu, 21 Jun 2007 00:08:55 GMT</pubDate>
		</item>
		<item>
			<title>Mind Your ints and uints</title>
			<description>ActionScript 3.0 introduces new data types galore, and two of the funniest looking are easily int and uint.&amp;nbsp; For one, they belong to an ultra-elite group whose names are fully lowercase (the third is void).&amp;nbsp; For two &amp;hellip; well, I mean &amp;hellip; uint.&amp;nbsp; Come on.&amp;nbsp; ;)
What are these data types, and what are they good for?&amp;nbsp; Let&amp;rsquo;s take a look.
The words and numbers
The words themselves are abbreviations of &amp;ldquo;integer&amp;rdquo; and &amp;ldquo;unsigned integer,&amp;rdquo; so that&amp;rsquo;s at least a start.&amp;nbsp; Contrasted with the familiar Number data type, which can be an integer or fractional number, like 6.26, int can only be an integer.&amp;nbsp; What about uint, then?&amp;nbsp; What does the unsigned part mean?&amp;nbsp; This gets a little interesting, actually.
Technically, the Number data type is an &amp;ldquo;IEEE-754 double-precision floating-point number&amp;rdquo; (see the ActionScript 3.0 Language and Components Reference&amp;rsquo;s Number entry for full detail).
A number typed as Number can take up as much as 53 bits of memory (over 6.5 bytes), ranging all the way from 1.79e+308 down to 5e-324.&amp;nbsp; To put this in perspective, one million &amp;mdash; a number which, in do...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=856</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=856</guid>
			<pubDate>Fri, 08 Jun 2007 08:37:49 GMT</pubDate>
		</item>
		<item>
			<title>Using the Debugger Panel to Sleuth</title>
			<description>Not long ago, I answered a forum question at Community MX where the solution arrived entirely because I used the Debugger panel to find what I needed.&amp;nbsp; The developer&amp;rsquo;s issue took all of ten seconds to pinpoint, but it solved a real need.&amp;nbsp; It couldn&amp;rsquo;t have been easier, either, so I&amp;rsquo;ll share what I did, hoping it helps someone else just as quickly.
The need was this:&amp;nbsp; the developer was using the MediaPlayback Component (a precursor to the FLVPlayback Component) and wanted to disable a tiny, built-in triangle button that toggles a zooming/fullscreen-view of the FLV.&amp;nbsp; The Component Inspector panel shows no parameter to configure this button, and it doesn&amp;rsquo;t appear anywhere in the Components Language Reference.&amp;nbsp; What to do?&amp;nbsp; Debugger panel to the rescue.

After having dragged an instance of MediaPlayback to the Stage and pointing it at an FLV, I used Debug &amp;gt; Debug Movie to run the SWF in the Debugger panel (the menu location in Flash 8 was Control &amp;gt; Debug Movie).&amp;nbsp; When a SWF opens in cahoots with the Debugger panel, you have to click the big green arrow button to get everything started &amp;mdash; don&amp;rsquo;t worry, you can&amp;...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=854</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=854</guid>
			<pubDate>Mon, 04 Jun 2007 04:14:47 GMT</pubDate>
		</item>
		<item>
			<title>How to Jump Randomly to Frame Labels without Repeats</title>
			<description>One of the more popular entries of this blog describes How to Jump to a Random Frame Label.&amp;nbsp; The ActionScript 2.0 involved is very straightforward, weighing in at a mere 5 lines.&amp;nbsp; Its sole purpose is to choose a random label once at the beginning, then go to it (then stop).&amp;nbsp; In the Comments section, a visitor named Heather asked for a variation in which the movie starts at a random label, then proceeds to the remaining labels in order, looping around to the beginning, if necessary, to hit each label once.&amp;nbsp; I offered some suggested code, and eventually a number of other visitors asked for yet another variation: &amp;nbsp;how to jump randomly to a whole series of labels &amp;mdash; without repeats.&amp;nbsp; That takes a bit more code, but it&amp;rsquo;s certainly doable.&amp;nbsp; Let&amp;rsquo;s take a look.
An answer, short and sweet
This bulk of this code goes in frame 1, then one of its functions gets called at the end of each span of frames represented by a label.&amp;nbsp; Here&amp;rsquo;s the code for frame 1:
function shuffle(arr:Array):Void {
  var len:Number = arr.length - 1;
  for (var i:Number = len; i &amp;gt;= 0; i--) {
    var p:Number = Math.floor(Math.random() * (i + 1));
  ...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=853</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=853</guid>
			<pubDate>Wed, 30 May 2007 13:30:25 GMT</pubDate>
		</item>
		<item>
			<title>TODCon Schedule Online!</title>
			<description>We&apos;ve finally got the TODCon Vegas 2007 schedule and speaker list up. Check it out. Lots of excellent sessions about the new Adobe products, running your web business, usability, CSS and more. There&apos;s still time to register for the best little conference in Vegas! Come play on the strip with the rest of us geeks. You know you wanna... :)...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=849</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=849</guid>
			<pubDate>Tue, 08 May 2007 08:33:50 GMT</pubDate>
		</item>
		<item>
			<title>How to Pan the Audio in an FLVPlayback Video</title>
			<description>This one came to me in a flash (ha ha &amp;hellip; Flash!), thanks to a friendly discussion I had the other day with site visitor Michael Lokner.&amp;nbsp; He was wondering if it was possible to pan the audio portion of an FLV file in cases where the video is played in an instance of the FLVPlayback Component.&amp;nbsp; In another recent article, I explained how to use the MovieClip.attachAudio() method to control NetStream-based video, but that&amp;rsquo;s a different ball of wax.&amp;nbsp; The FLVPlayback Component has its own volume property, and even skins that feature a volume slider, but what about panning?&amp;nbsp; After bouncing ideas back and forth, Michael and I arrived at a simple answer.
An answer, short and sweet
On his own, Michael had arrived at a respectable workaround, which was to create a Sound instance associated with the main timeline (accomplished by omitting any movie clip reference when constructing the instance).&amp;nbsp; By setting up the Sound instance to control the whole movie, any panning would naturally affect the video&amp;rsquo;s audio track.&amp;nbsp; The only shortcoming is that the panning would also affect all other audio in the movie.&amp;nbsp; How to associate this panning with ...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=846</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=846</guid>
			<pubDate>Tue, 01 May 2007 21:58:27 GMT</pubDate>
		</item>
		<item>
			<title>Custom CS3 Icons - Free!</title>
			<description>There&apos;s been a wide range of reaction to Adobe&apos;s new CS3 icons. Admittedly, when I first saw the single Dreamweaver icon, I was taken aback -- &quot;Is this thing finished?&quot; But after seeing the whole suite, especially on the color wheel, I thought they were nicely done and easy to differentiate as I got a few in my dock. There were many who thought differently though. It was a love it or hate it kind of thing.
For those of you in the hate camp, there&apos;s an option. Adam Betts, a very talented designer, has created his own set of CS3 icons -- and released them, free, to the public. He based them on the box design and they look quite lovely. He&apos;s even made a new set of document icons if the plain ones don&apos;t quite do it for you.
What they&apos;ll look like at the smaller sizes, I can&apos;t say. There are no instructions included for where to install them, and at this point I haven&apos;t a clue. (Feel free to point me in the right direction if you know. :))
There are a few other sets I&apos;ve run into if Adam&apos;s aren&apos;t your favorite. Mac Themes is similar to Adam&apos;s, Louie Mantia has a set that blend the old icons with the new box look, and if you like the new ones from Adobe but would rather have them a li...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=838</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=838</guid>
			<pubDate>Sat, 21 Apr 2007 17:52:46 GMT</pubDate>
		</item>
		<item>
			<title>How to Adjust the Audio Portion of Flash Video</title>
			<description>If you&amp;rsquo;re not using the FLVPlayback Component, or one of the older Media Components, then the audio portion of video files may have you scratching your head.&amp;nbsp; The Components have their own volume sliders, which makes volume control a snap, but what about panning (left to right fading), or what if you&amp;rsquo;re not using Components for video?&amp;nbsp; In ActionScript 2.0, video sound is a bit &amp;hellip; well, it&amp;rsquo;s a bit odd, but one you understand it, audio control isn&amp;rsquo;t hard.
An answer, short and sweet
In Understanding the Sound Constructor, I went into the usefulness of associating Sound instances with movie clips.&amp;nbsp; To control the audio portion of FLVs, it&amp;rsquo;s just a bit more of the same.&amp;nbsp; First, we&amp;rsquo;ll start with the basic &amp;ldquo;recipe&amp;rdquo; for bringing video into a Video object:
var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(nc);
videoPlayer.attachVideo(ns);
ns.play(&amp;quot;myExternalVideo.flv&amp;quot;);
This is the block of code used in How to Load External Video (FLV) and brings the specified FLV file into a Video object with the instance name videoPlayer.&amp;nbsp; Invoking NetStream methods...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=837</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=837</guid>
			<pubDate>Wed, 18 Apr 2007 05:15:36 GMT</pubDate>
		</item>
		<item>
			<title>How to Play Sound Files Sequentially</title>
			<description>Many people use Flash to play background music on their site. &amp;nbsp;It&amp;rsquo;s a good use for Flash, especially if the audio is loaded from external MP3s, which keeps the SWF file size low, and if you give your visitors a way to toggle off the sound. &amp;nbsp;But one song may not be enough. &amp;nbsp;You may want to play a list of files one after the other.&amp;nbsp; If so, the next question is, &amp;ldquo;How easy is that?&amp;rdquo;&amp;nbsp; The answer is, &amp;ldquo;Very.&amp;rdquo;&amp;nbsp; Let&amp;rsquo;s take a look.
An answer, short and sweet
The &amp;ldquo;trick&amp;rdquo; here &amp;mdash; and it&amp;rsquo;s really no trick at all &amp;mdash; is to use an Array instance to store your list of audio files, a variable to keep track of which song is current, and the Sound.onSoundComplete event to trigger each new sound.&amp;nbsp; Type the following ActionScript into a keyframe:
var listOfFiles:Array = new Array(&amp;quot;frog.mp3&amp;quot;, &amp;quot;loon.mp3&amp;quot;, &amp;quot;horse.mp3&amp;quot;);
var currentFile:Number = 0;

var audio:Sound = new Sound();
audio.loadSound(listOfFiles[currentFile], true);

audio.onSoundComplete = function():Void {
  currentFile++;
  if (currentFile &amp;lt; listOfFiles.length) {
    audio.loadSound(listOfFiles[curren...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=836</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=836</guid>
			<pubDate>Fri, 13 Apr 2007 12:44:25 GMT</pubDate>
		</item>
		<item>
			<title>How to Round to the Nearest Ten, Tenth, Hundred, Hundredth, Etc.</title>
			<description>I was helping a friend the other day with a rounding issue.&amp;nbsp; He needed to round numbers not to the nearest integer, but to the nearest hundred.&amp;nbsp; So 52.3 would round to 100.&amp;nbsp; 86 would round to 100 as well.&amp;nbsp; 13 would round to 0 and 101.287 would round to 100.&amp;nbsp; You get the idea.&amp;nbsp; The Math.round() method doesn&amp;rsquo;t take any parameters except the to-be-rounded value itself, so how could this be accomplished?&amp;nbsp; The answer couldn&amp;rsquo;t be simpler.
An answer, short and sweet
Basic arithmetic does it.&amp;nbsp; Let&amp;rsquo;s say the original number is 52.3.&amp;nbsp; To round to the nearest hundred, follow these steps:

  Divide by 100
  Round
  Multiply by 100

var num:Number = 52.3;
num /= 100;
num = Math.round(num);
num *= 100;
trace(num);
How it works
The above ActionScript could have been written out a bit longer &amp;hellip;
num = num / 100;
&amp;hellip; but the division assignment (/=) operator reduces the required typing.&amp;nbsp; They amount to the same thing (and the same goes for the multiplication assignement (*=), as well as addition and subtraction assignment operators (+= and -=).
The division/multiplication steps move the decimal place wher...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=835</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=835</guid>
			<pubDate>Fri, 06 Apr 2007 17:19:48 GMT</pubDate>
		</item>
		<item>
			<title>And they said it wouldn&apos;t last.....</title>
			<description>				Fours years ago, on March 31st, 2003, Community MX went live with their very first tutorials. It was a crazy time, exciting and scary at the same time. Was the web ready for this type of business model? Would they accept it? Lord knows there were plenty of &amp;quot;naysayers&amp;quot; out there who were very vocal with their opinions. But we didn&apos;t listen to them...we believed in what we were doing, we truly believed that there was a market for what we were doing. And it sure looks like we were right. 2000 + articles later, we are still going strong. Each and every business day we have released two new pieces of content...it might be a tutorial, an article, a review, a JumpStart or an extension...you never know what you&apos;ll find. We&apos;ve heard from several folks that it&apos;s like Christmas morning every day. And other than weekends and major holidays, we&apos;ve never missed a single day. That&apos;s a lot of Christmas mornings! :-) I am so proud to have been a part of this endeavor from the very beginning. Honored to be associated with such an amazing group of people. Experts in their fields, with so much knowledge I am in awe at times. While we have had some partners go, and new ones come, the majo...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=833</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=833</guid>
			<pubDate>Thu, 29 Mar 2007 23:21:27 GMT</pubDate>
		</item>
		<item>
			<title>Adobe Officially Launches Adobe Creative Suite 3</title>
			<description>												Representatives from Adobe announced today the launch of Adobe CS3. I know we&apos;ve been hearing little bits about this for a while, but people, this is huge.This live webcast gave the global audience an chance to see what Adobe has been working on for the past two years, &amp;quot;the largest software release in Adobe&apos;s history.&amp;quot; How large? 13 point products upgrades were announced today, including NEW products. A pretty ambitious effort indeed.Adobe has created variety of collections geared to different types of users and price points:Design Suite StandardDesign Suite PremiumWeb Suite StandardWeb Suite PremiumProduction PremiumMaster CollectionThe common theme throughout the CS3 suites is one of integration - better integration between Fireworks, Photoshop and Illustrator, better integration between Dreamweaver, Photoshop and Illustrator, between Flash, Photoshop and Illustrator and between Photoshop, Indesign and Illustrator.Lording over it all is Adobe Bridge, which is now connected to many of the major Adobe apps, including Fireworks, Flash, Dreamweaver, Illustrator, InDesign and Photoshop.&amp;nbsp;For more information on the new suites, keep checking back here at Commu...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=832</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=832</guid>
			<pubDate>Tue, 27 Mar 2007 20:30:31 GMT</pubDate>
		</item>
		<item>
			<title>The VideoPlayer Class API (aka, the Missing Manual)</title>
			<description>I was just gabbing with someone about the NetStream class, which nudged my mind toward the VideoPlayer class.&amp;nbsp; According to the Components Language Reference, the FLVPlayback class &amp;ldquo;extends the MovieClip class and wraps a VideoPlayer object.&amp;rdquo;&amp;nbsp; As it turns out, the VideoPlayer class is mentioned in the Components Langauge Reference, but if you dig into it, you&amp;rsquo;ll quickly discover that none of the class members are hyperlinked.&amp;nbsp; In other words, you&amp;rsquo;ll get an overview of the properties, methods, and events defined by that class, but no actual explanation.
I find that an odd omission &amp;mdash; but Adobe does make the full API available.
The URL is listed in the VideoPlayer class entry itself, but the page it brings up hides the PDF a bit.&amp;nbsp; (To be fair, it may have been a direct link sometime in the past.)&amp;nbsp; If you&amp;rsquo;re interested, point your browser to this whopping 112-page PDF file.
http://download.macromedia.com/pub/documentation/en/flash/fl8/VideoPlayer.pdf
It truly is the &amp;ldquo;missing manual&amp;rdquo; for this extensive API....</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=828</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=828</guid>
			<pubDate>Wed, 28 Feb 2007 00:32:16 GMT</pubDate>
		</item>
		<item>
			<title>Code Hinting Regardless of Naming Conventions</title>
			<description>Depending on my mood, I may precede certain variable names with a small prefix that describes the type of object they point to.&amp;nbsp; For example, I may give a movie clip the instance name mcBall, rather than just ball.&amp;nbsp; Why?&amp;nbsp; Well, it allows me to see at a glance that I&amp;rsquo;m dealing with a MovieClip instance, which can come in handy during coding and also while I&amp;rsquo;m poking through the Debugger panel.&amp;nbsp; It doesn&amp;rsquo;t have any measurable effect on the functionality of the variable &amp;hellip; it&amp;rsquo;s just one of those things you get used to.&amp;nbsp; I certainly don&amp;rsquo;t always adhere to this convention, but when I do, I&amp;rsquo;m practicing something called Hungarian notation, which has a decent pedigree (at least, in computer years).
Flash provides at least one naming convention that actually can make a practical difference, if you follow the suggested suffixes in the &amp;ldquo;About using suffixes to trigger code hints&amp;rdquo; section of Learning ActionScript 2.0 in Flash.&amp;nbsp; I&amp;rsquo;m not especially a fan stylistically, but, for example, if I name that ball clip ball_mc, I&amp;rsquo;ll get automatic code hinting for the MovieClip class (and so will you) in Act...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=826</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=826</guid>
			<pubDate>Wed, 21 Feb 2007 19:55:13 GMT</pubDate>
		</item>
		<item>
			<title>updateAfterEvent() ? What?s the Scoop?</title>
			<description>Someone asked me the other day, &amp;ldquo;What&amp;rsquo;s the deal with updateAfterEvent()?&amp;nbsp; What, exactly, does it do, and when should it be used?&amp;rdquo;&amp;nbsp; Well, I&amp;rsquo;m a fan of the ActionScript 2.0 Language Reference, so my usual reply is along the lines of, &amp;ldquo;Let&amp;rsquo;s check out what the ASLR has to say,&amp;rdquo; but in this case, the documentation doesn&amp;rsquo;t speak the whole truth.
The Scoop
First, what is this function?&amp;nbsp; In reference to this question, the Language Reference correctly states that updateAfterEvent() updates the display immediately after it&amp;rsquo;s called.&amp;nbsp; Normally, the display updates once per frame, so generally speaking, the faster your framerate, a) the smoother animation seems to occur and b) the more responsive certain mouse-related interactions feel.&amp;nbsp; This is easiest to see, for example, in dragging or follow-the-mouse animations that don&amp;rsquo;t rely on the native MovieClip.startDrag() method.&amp;nbsp; If the framerate happens to be slow, for whatever reason, such interactions can &amp;ldquo;stutter.&amp;rdquo;
Here&amp;rsquo;s a quick test.&amp;nbsp; Start a new FLA and draw a quick circle.&amp;nbsp; Convert it to a movie clip and give your circ...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=825</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=825</guid>
			<pubDate>Tue, 20 Feb 2007 02:00:09 GMT</pubDate>
		</item>
		<item>
			<title>Easy Fix to an Apparently Common FlashPaper 2 Issue</title>
			<description>FlashPaper 2 was arguably, at one point, a competitor with Adobe Acrobat.&amp;nbsp; I&amp;rsquo;m not suggesting this was Macromedia&amp;rsquo;s intent, back in the day &amp;mdash; maybe it was, maybe it wasn&amp;rsquo;t &amp;mdash; and now that Adobe owns the lot, the discussion is moot.&amp;nbsp; In a nutshell, FlashPaper 2 converts documents into PDFs (just like Acrobat does, but with far fewer options), and it also converts documents into SWFs that &amp;ldquo;read&amp;rdquo; like PDFs.&amp;nbsp; They can be paged, searched, printed, and so on.&amp;nbsp; Neat concept, nicely executed.&amp;nbsp; I wouldn&amp;rsquo;t say these SWFs have especially caught on, but that&amp;rsquo;s fine &amp;hellip; I use FlashPaper 2 in certain cases, and because it&amp;rsquo;s so pared down, the app loads much quicker than Acrobat.&amp;nbsp; That makes it an easy choice for no-frills PDF conversion.
FlashPaper 2 is available both as a stand-alone product and bundled with Studio 8.&amp;nbsp; On Windows, the Studio 8 version suffers a technical issue, apparently fairly common, in that it fails when used as a printer (as in, File &amp;gt; Print, and choose FlashPaper 2 as the print device).&amp;nbsp; Sure enough, when I re-installed Studio 8 after a recent hardware issue (comple...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=821</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=821</guid>
			<pubDate>Tue, 30 Jan 2007 01:26:11 GMT</pubDate>
		</item>
		<item>
			<title>Sound.position &quot;Gotcha&quot; with Multiple Calls to Sound.loadSound()</title>
			<description>The Sound.position property indicates how far along a Sound instance has played.&amp;nbsp; If you&amp;rsquo;ve loaded an external file or attached an embedded file at runtime, but haven&amp;rsquo;t yet started it, that instance&amp;rsquo;s position property is 0.&amp;nbsp; If it&amp;rsquo;s a 10-second clip and you&amp;rsquo;re 2.5 seconds in, the property reads 2500 (that&amp;rsquo;s 2,500 milliseconds).&amp;nbsp; When your audio reaches its end, position will match that instance&amp;rsquo;s Sound.duration property, which indicates the total length of the audio.&amp;nbsp; This is a can be useful for checking when a sound has concluded &amp;mdash; of course, the Sound.onSoundComplete event is much more straightforward &amp;mdash; but there are any number of reasons you might want to keep tabs on a sound&amp;rsquo;s position.&amp;nbsp; Unfortunately, this property doesn&amp;rsquo;t always report the value you may expect.
The Sound.loadSound() method loads audio files (specifically MP3s) that are external to the SWF.&amp;nbsp; This method takes two parameters.&amp;nbsp; The first indicates the location of the MP3 file; the second is optional and determines whether or not the audio plays in stream mode.&amp;nbsp; The word is a bit misleading in this context,...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=819</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=819</guid>
			<pubDate>Wed, 24 Jan 2007 03:41:53 GMT</pubDate>
		</item>
		<item>
			<title>setTimeout() &quot;Gotcha&quot; in Class Files</title>
			<description>The setTimeout() function is a valid citizen in the realm of ActionScript 2.0; it was simply left off the roster for some reason, so you won&amp;rsquo;t find it in the documentation.&amp;nbsp; It works very much like its JavaScript counterpart and is less cumbersome to use than setInterval() for triggering a single delayed action.&amp;nbsp; You can reference setTimeout() just fine in timeline code, but I found an unexpected problem when employing this function in a class file.&amp;nbsp; Its presence halted the compile process and caused all sorts of misleading errors, such as the idea that Stage can&amp;rsquo;t be reference in a class file (it certainly can).&amp;nbsp; Is there a workaround?&amp;nbsp; Yes.
An answer, short and sweet
If you find yourself desiring setTimeout() inside a custom class, use the array access operator to refer to the function.
_global[&amp;quot;setTimeout&amp;quot;]
This one of the techniques you can use to reference objects dynamically &amp;mdash; and even functions are objects.&amp;nbsp; To actually trigger the function, you need to add the parentheses, and those come right after the closing bracket.&amp;nbsp; At that point, it&amp;rsquo;s business as usual.
_global[&amp;quot;setTimeout&amp;quot;](functionTo...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=815</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=815</guid>
			<pubDate>Tue, 16 Jan 2007 13:27:19 GMT</pubDate>
		</item>
		<item>
			<title>A Tip on the Boolean() Function (Casting as Boolean)</title>
			<description>When you load data from XML or text files, or retrieve values from the TextField.text property, the information you get is a string.&amp;nbsp; Even if the incoming value is, say, the numeral 3 (without quotes), it&amp;rsquo;s a string when evaluated by ActionScript.&amp;nbsp; Even if the value is &amp;ldquo;false&amp;rdquo; (with or without quotes), it&amp;rsquo;s a string &amp;mdash; not a Boolean &amp;mdash; and may appear to ActionScript as true!&amp;nbsp; Whoa!&amp;nbsp; That could cause a few problems.&amp;nbsp; In the case of numbers, there&amp;rsquo;s an easy way to tell ActionScript what the datatype should be, and it&amp;rsquo;s called casting.&amp;nbsp; You may cast a string numeral into an actual Number datatype by using the Number() function.&amp;nbsp; With a text field whose instance name is money &amp;hellip;
var looseChange:Number = 0;
looseChange = Number(money.text);
That converts the value of the money.text property to a true number, which you can verify with trace(typeof(looseChange)); &amp;mdash; but the Boolean() function handles things differently.
In ActionScript, false is synonymous with 0 and true is synonymous with every other number.&amp;nbsp; If you cast the number 0 as Boolean, you&amp;rsquo;ll see false in the Output panel...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=814</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=814</guid>
			<pubDate>Tue, 09 Jan 2007 19:00:50 GMT</pubDate>
		</item>
		<item>
			<title>Simplify: Use Boolean Expressions Creatively</title>
			<description>I was coding up a slideshow this afternoon for a quick demonstration to a client.&amp;nbsp; In the end, much of today&amp;rsquo;s &amp;ldquo;rough draft&amp;rdquo; ActionScript will be converted into a custom SlideManager class.&amp;nbsp; For the time being, though, my &amp;ldquo;jump in and throw something together&amp;rdquo; approach was helpful anyway, because it brought to mind a number of features the client is going to ask about &amp;mdash; I&amp;rsquo;d bet money on it &amp;mdash; and now I&amp;rsquo;ll be prepared.&amp;nbsp; In addition, it reminded me of an admirable principle in programming:&amp;nbsp; elegance.
This entry is more of a &amp;ldquo;think about it in broad terms&amp;rdquo; tip than the usual &amp;ldquo;type this ActionScript, exactly.&amp;rdquo;&amp;nbsp; Here&amp;rsquo;s the situation.&amp;nbsp; I had just finished writing a set of functions to advance the slideshow.&amp;nbsp; They were called previous() and next().&amp;nbsp; I had already stored a number of slide objects in an array (these will eventually be instances of a Slide class).&amp;nbsp; The first thing the next() function does is check if the current slide is less than the total number of slides.&amp;nbsp; If it is, then the slideshow hasn&amp;rsquo;t yet reached its end, which means the &amp;ldquo...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=812</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=812</guid>
			<pubDate>Thu, 04 Jan 2007 01:11:18 GMT</pubDate>
		</item>
		<item>
			<title>How to Replace a Symbol in Several Keyframes at Once</title>
			<description>Okay, let&amp;rsquo;s say you&amp;rsquo;ve chosen a symbol from the Library.&amp;nbsp; You&amp;rsquo;ve painstakingly motion tweened it over a series of at least 20 keyframes, then decided &amp;mdash; afterwards, of course &amp;mdash; that you&amp;rsquo;d like to use a different symbol instead.&amp;nbsp; Show of hands, anyone?&amp;nbsp; Before I knew the right approach, I would grumble at a scenario like this, sometimes loudly.&amp;nbsp; I&amp;rsquo;d seriously consider just leaving it, or possibly re-doing the mass of keyframes from scratch &amp;mdash; or I&amp;rsquo;d grin and bear it, clicking the symbol at each keyframe in turn and using the Swap button in the Property inspector as often as needed.&amp;nbsp; If you&amp;rsquo;ve done this even once, don&amp;rsquo;t despair:&amp;nbsp; there is a much easier way.
An answer, short and sweet
Click the layer that contains all your keyframes.&amp;nbsp; You&amp;rsquo;ll want to click its name, or anywhere on the left side of the divider between layer names and layer content.&amp;nbsp; Doing so will select all frames in that layer, including all keyframes.&amp;nbsp; With all these frames highlighted, click the Sync checkbox in the Property inspector to select it.&amp;nbsp; Now every keyframe has the &amp;ldquo;synchronize sy...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=810</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=810</guid>
			<pubDate>Thu, 21 Dec 2006 00:32:22 GMT</pubDate>
		</item>
		<item>
			<title>A Few Notes on &amp;ldquo;Create Motion Tween&amp;rdquo;</title>
			<description>There are two ways to apply a motion tween in Flash.&amp;nbsp; Once you select the span of frames between two keyframes, either a) choose &amp;ldquo;Motion&amp;rdquo; from the Tween listbox in the Property inspector or b) use the Create Motion Tween mechanism.&amp;nbsp; The latter is available under Insert &amp;gt; Timeline &amp;gt; Create Motion Tween or by right-clicking (Win) / Command+clicking (Mac) and choosing Create Motion Tween from the context menu.&amp;nbsp; At first glance, these approaches simply look like two ways to accomplish the same thing, but there&amp;rsquo;s actually a big difference between them.
Shapes
As a rule, motion tweens cannot be applied to shapes.&amp;nbsp; Shapes are controlled by shape tweens and must first be converted into symbols before a motion tween is possible.&amp;nbsp; If you try to apply a motion tween to the span of frames between two shape keyframes, you&amp;rsquo;ll either get a &amp;ldquo;broken tween,&amp;rdquo; as indicated by a dashed line in the span of frames, or Flash will create two new symbols for you and tween those instead.&amp;nbsp; This is the difference between using the Property inspector or Create Motion Tween to achieve your results (at least, as of this writing [Flash 8])....</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=809</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=809</guid>
			<pubDate>Sat, 16 Dec 2006 21:57:20 GMT</pubDate>
		</item>
		<item>
			<title>Seeing Both the Forest and the Trees</title>
			<description>Sometimes, in Flash, I&amp;rsquo;m working on a bit of artwork that is small, but fairly detailed.&amp;nbsp; Icons come to mind, or a cartoon character&amp;rsquo;s face.&amp;nbsp; In these cases, I often zoom in well over 1,000% to get a clear view of the minutiae.&amp;nbsp; In spite of that, I want a &amp;ldquo;big picture&amp;rdquo; view of the whole graphic, to keep tabs on how the minor tweaks affect the whole.
For the longest time, I simply zoomed in and out as needed.&amp;nbsp; Keyboard shortcuts naturally help (Ctrl-+ and Ctrl-&amp;ndash; in Windows), but even so, it can get tedious.&amp;nbsp; Then, one day, I found an even better approach.&amp;nbsp; To maintain two (or more) views of the same work area, head to Window &amp;gt; New Window or Window &amp;gt; Duplicate Window, depending on your version of Flash.&amp;nbsp; Doing so opens a second (or third, etc.) view of your current workspace, functionally identical to Window &amp;gt; Arrange &amp;gt; New Window in Photoshop.&amp;nbsp; These views are synchronized, so a change to any one of them is immediately updated in all windows.&amp;nbsp; Generally speaking, after I create such a duplicate view, I head to Window &amp;gt; Tile to instantly arrange both views side-by-side.&amp;nbsp; In the &amp;ldquo;big ...</description> 
			<link>http://www.communitymx.com/blog/index.cfm?newsid=807</link>
			<guid isPermaLink="true">http://www.communitymx.com/blog/index.cfm?newsid=807</guid>
			<pubDate>Mon, 11 Dec 2006 12:23:45 GMT</pubDate>
		</item>
	</channel>
</rss>


