« June 2007 | ^ Main | August 2007 »
July 30, 2007
Adobe Ships ColdFusion 8
http://www.adobe.com/aboutadobe/pressroom/pressreleases/200707/073007ColdFusion.html
YUMMMMMMMMYYYYYYYYYYYYY! :-D
This is an incredible release by the CF8 team. I was curious as to what they would add to this version to improve a pretty solid CF7 but they definitely have impressed me. Great work CF Team!
Posted by John C. Bland II at 8:32 AM | Permalink | Comments (0) | TrackBacks (0)
July 20, 2007
Flash CS3 Web Services Classes...coming soon!
I don’t have them anywhere close to complete but I have figured out how to make the calls (less than an hour ago). For my immediate need I’ll probably hard-code a few things for this application but I’m going to full flesh out these classes within the next week or so. I’ll probably post it to riaforge.com but you’ll definitely hear about it here as well.
More coming soon…
Posted by John C. Bland II at 1:50 PM | Permalink | Comments (0) | TrackBacks (0)
July 14, 2007
Amazon Unbox Flex'ing
Yep, they have a simple Flex widget on the homepage now. How do I know it is Flex and not Flash? Well, I could be wrong but this error looks just like Flex errors (namely the LayoutManager line):
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at Player/private::resizeHandler()
at Player/___Application1_resize()
at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.core::UIComponent/dispatchEvent()
at mx.core::UIComponent/private::dispatchResizeEvent()
at mx.core::UIComponent/setActualSize()
at mx.core::Application/private::resizeHandler()
at mx.core::Application/mx.core:Application::updateDisplayList()
at mx.core::UIComponent/validateDisplayList()
at mx.core::Container/validateDisplayList()
at mx.managers::LayoutManager/private::validateDisplayList()
at mx.managers::LayoutManager/private::doPhasedInstantiation()
at Function/http://adobe.com/AS3/2006/builtin::apply()
at mx.core::UIComponent/private::callLaterDispatcher2()
at mx.core::UIComponent/private::callLaterDispatcher()
at [enterFrameEvent]
Congrats on the upgrade Amazon! Despite the error, very simple and nice widget. It could be Flash CS3 but I doubt it. Either way…great work.
Posted by John C. Bland II at 3:32 PM | Permalink | Comments (0) | TrackBacks (0)
July 13, 2007
Flash CS3 AS3 - Remoting Sample
Hagel found this online (in the wake of my recent WS post): http://www.oscartrelles.com/archives/as3_flash_remoting_example. It is a good example of using Flash Remoting in Flash CS3’s AS3.
Remoting, at the core, has always been NetConnection anyway so Oscar’s example takes me back to my old RemotingConnector in AS2 (ahhh…the mileage it got me). :-D I haven’t looked at the core of the WebService classes in AS2 but it might be working from the same. Next week I’ll have to find out for sure though since the WS has to be integrated into the app.
Posted by John C. Bland II at 11:56 AM | Permalink | Comments (0) | TrackBacks (0)
Flash CS3 AS3 - Missing WebService Classes
:-(
:-(
:-(
That just about sums it up. Yet another reason why Flash CS3 truly misses the mark. Don’t get me wrong, I’ve found some pretty sweet things in it (TransitionManager, DocumentClass, and the granularity of MouseEvent targets rock hard!) but missing all of those components (namely Alert, Tree, and Data components) continue to ring the phrase “Flash CS3 sucks” over and over in my head. Mind you, there are some great upgrades they made but missing so many components and a SUPER CRAPPY development environment is huge. If I were building a simple app…no prob…but I’m not.
Regrettably, I should’ve pushed even harder to use Flex. I would’ve saved tons of time (built-in container classes [vbox, hbox, etc] with scrollbars, tree component, alert component, and now web services…all having to be done custom).
:-(
:-(
:-(
Posted by John C. Bland II at 11:45 AM | Permalink | Comments (0) | TrackBacks (0)
July 12, 2007
TiVo Store Shipping: iPOD Shuffle
Those who know me know why this is a “significant” post. I’m adamantly against buying an iPod. But…I didn’t buy this one. :-D Another great thing about TiVo is…you get folks to sign up for their service (or buy one) and you get reward points. Well, I hadn’t checked in a while but I had 10,000 points and 5,000 of them were about to expire!!! So, nothing else seemed worth it and I wanted an mp3 player so I grabbed the Shuffle.
Funny thing is…I don’t have any new mp3’s. I use URGE via Windows Media Player so I doubt I use it much. I may give it to Tia (wife) and let her use it since she’s running now. The only thing I would use it for is to play a metronome beat on the golf course (to help me keep my swing speed, etc in a smooth flow).
Oh well and anyways! :-) I will have it on 7/16 (or sooner) and will blog about how well it works and if I can get a 3rd party app to allow me to use Windows Media Player.
Posted by John C. Bland II at 10:13 AM | Permalink | Comments (0) | TrackBacks (0)
July 11, 2007
Desert Code Camp - September 15, 2007
DCC has happened twice and it always seems like I’m one of the only Adobe-minded presenters there. It would be great to see more presenters, especially ColdFusion, come out.
http://www.desertcodecamp.com/
DCC is open so suggest a track and/or session. If you want to present the session, register and click “I want to teach this” and you’re good to go.
Let’s bring CF and the Flash Platform to DCC and showcase some sweet stuff. .NET, etc is always covered, well, by the .NET community. Even Ruby has a good turn out. I want to see more CF/Flash Platform in the mix.
Here are my sessions:
http://www.desertcodecamp.com/signUp.aspx?session=202
http://www.desertcodecamp.com/signUp.aspx?session=207
http://www.desertcodecamp.com/signUp.aspx?session=200
http://www.desertcodecamp.com/signUp.aspx?session=201
http://www.desertcodecamp.com/signUp.aspx?session=219
That’s a tall order but I’m comfortable speaking on all of them so it won’t be a big problem. I wanted to speak on CF8 but I didn’t suggest that track until after adding the above. :-( Oh well, I hope someone steps up and showcases CF8.
Join us at DCC and let’s make this another successful conference!
Posted by John C. Bland II at 11:06 AM | Permalink | Comments (0) | TrackBacks (0)
AS3 XMLDataLoader
Unlike my previous AS2 version, this one is pretty much nothing but XML data loading, literally. I’ll get right to it and put the code in here. First, here’s how you use it:
//this would go somewhere in a class or on the timeline
XMLDataLoader.instance.addEventListener(XMLDataLoader.instance.LOAD_COMPLETE, parseMyData);
XMLDataLoader.instance.url = “my.xml”;
XMLDataLoader.instance.trigger();private function parseMyData(event:XMLDataEvent):void{
trace(event.data); //traces the XML data
}
Here is the XMLDataLoader class:
/**
* XML Data Loader
* @author John C. Bland II
* @version 0.1
*/package classes.data {
import flash.net.*;
import flash.events.*;
import classes.events.XMLDataEvent;
public class XMLDataLoader extends DataLoader{
private var _url:String = “”;
public function get url():String{ return _url; }
public function set url(value:String):void{ _url = value; }
private var _loader:URLLoader = new URLLoader();
public function XMLDataLoader(enforcer:SingletonEnforcer){
if(enforcer null){
throw new ArgumentError(“XMLDataLoader is a Singleton class. Use XMLDataLoader.instance.”);
return;
}
_loader.addEventListener(Event.COMPLETE, onLoadComplete);
}
private function onLoadComplete(event:Event):void{
var ev:XMLDataEvent = new XMLDataEvent(LOAD_COMPLETE);
ev.data = new XML(_loader.data);
dispatchEvent(ev);
}
private function onLoadFailed(event:Event):void{
dispatchEvent(new Event(LOAD_FAILED));
}
public function trigger():void{
if(_url.length 0){
throw new Error(“XMLDataLoader.url must be set before calling trigger()”);
return;
}
_loader.load(new URLRequest(_url));
}
/**
* Singleton implementation
*/
private static var _instance:XMLDataLoader;
public static function get instance():XMLDataLoader{
if(_instance == null) _instance = new XMLDataLoader(new SingletonEnforcer);
return _instance;
}
}
}class SingletonEnforcer{}
This is a Singleton so be sure to keep the SingletonEnforcer at the bottom of the file (inaccessible to external code). Notice there is an XMLDataEvent, which is custom.
/**
* XMLDataEvent
* @author John C. Bland II
* @version 0.1
*/package classes.events {
import flash.events.Event;public class XMLDataEvent extends Event{
private var _data:XML;
public function get data():XML{ return _data; }
public function set data(value:XML):void{ _data = value; }
public function XMLDataEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false){
super(type, bubbles, cancelable);
}
}
}
That’s it. In a nutshell, add an event listener, set the url, trigger the data load, and do whatever you want with the data when it is completely loaded.
Enjoy.
Posted by John C. Bland II at 10:50 AM | Permalink | Comments (0) | TrackBacks (0)
July 9, 2007
Flash CS3 AS3: doubleClickEnabled "Gotcha"
Ok…I fought with this for wayyyyy too long, gave up, tried again tonight (for way too long), gave up, then had a thought. I went back to the help docs to re-read the instructions about using mouseEnabled as well as doubleClickEnabled…nothing new. Well, maybe something new. I noticed there was a related link to mouseChildren.
This was interesting and made me think. I noticed all stage items did not use the hand cursor. So, like all great developers, I used useHandCursor = true which works on certain parts of the items. I figured out it was because the children had mouse abilities too, which is a good default option in my opinion.
Ultimately, I remembered Ron Haberle’s code about using double click. His code (see below) was all code (just 1 sprite with a drawing) so there were no children with possible clicks.
import flash.display.Sprite;
import flash.events.MouseEvent;
var sp:Sprite = new Sprite();
sp.x = 100;
sp.y = 100;
sp.graphics.beginFill(0xe4e5e6);
sp.graphics.drawRect (0, 0, 100, 100);
sp.doubleClickEnabled = true;
sp.addEventListener(MouseEvent.DOUBLE_CLICK, handleClick);
addChild(sp);
function handleClick(evt:Event):void {
trace(“Double Click”);
}
This didn’t work for me. Let’s get back to present day/time from the previous paragraph (before “Ultimately, …”).
All I had to add was mouseChildren = false; to my constructor and the event was firing like clockwork. :-) Good thing too. I was about to mark off this item as a CS3 bug in the bug list. LOL. Hey, when all else fails…blame the software, another sign of a great developer. LMBO. ;-)
Posted by John C. Bland II at 1:24 AM | Permalink | Comments (2) | TrackBacks (0)
July 4, 2007
I'm "Burning"
http://feeds.feedburner.com/johncblandii
That’s my new feed on FeedBurner.com. I’ve seen it and used it a few times but I’m pretty excited about using it for this blog. I’ll update the feed image to point you there from now on.
Feel free to drop my current feed and grab the new one.
Burn on!
Posted by John C. Bland II at 12:20 AM | Permalink | Comments (0) | TrackBacks (0)
July 2, 2007
Flash CS3 AirCompiler
Grant (Skinner) sent this to the list, over the weekend, and I had a chance to play with it. After setting it up (which he admittedly says isn’t the fastest; they’re working on it though) I was able to hit Test and have my CS3 app in an AIR window just that easy. Very nice!
Posted by John C. Bland II at 10:50 AM | Permalink | Comments (0) | TrackBacks (0)



