Showing posts with label RIA. Show all posts
Showing posts with label RIA. Show all posts

Thursday, December 7, 2006

FLEX - i - FRAME

One of the biggeset pain points of FLEX/Flash (as i see it) is its inability to render HTML in its totality. FLEX supports a few HTML Tags, but not all. Another question that people pose to me is... "When are you guys gonna include PDF rendering in Flash ?".

I hope the answer to that is soon (since its the logical way to go), but here's a (partial) answer to people's woes. I call it "FLEX - i - FRAME". Its an old wine in new bottle, considering the fact that Flash Designers/Developers have been using it since time immemorial.

Thanks to Cristophe, who ported the idea to FLEX1.5 in AS2 (read the post here) and then Brian who gracefully ported the same to AS3 with FLEX 2.0 (read that post here). It has an awesome way of resizing the iFrame when the Flex Application is sized. The great part is, it can make it look like you are rendering HTML and even PDF content inside a Flash/Flex Application.

I took Brian's iFrame MXML component and made a quick application (in about half hour) to show its capabilities. This application will be a one-stop-shop for all resources pertaining to Adobe India's "Adobe Developer Olympiad" RIA Challenge. You can choose from a choice of sites/resources and PDFs from inside this application. So here it is

FLEX - i - FRAME

(To view source, right click on the movie once
you click the above link OR click here)

You can download the whole source code, complete with all dependent files (javascripts, assets.. etc) and use it to playaround with iFrame yourself :)

The trick is very simple. Its just a clever use of the External API interface that lets the Actionscript inside a Flash movie, talk to the Javascript inside the html (in which it is embedded). In this case, the approach is to let the javascript position an IFrame on top of a specific area of your Flex application to provide a container for the HTML content which will then appear embedded in the application.

The IFrame component extends Canvas and is used like any other Flex container. Behind the scenes, it acts as a proxy for the actual HTML IFrame. For example, when the IFrame component is resized or moved it automatically asks the HTML document to resize/move the actual IFrame. You can easily find the ExternalInterface calls in IFrame.mxml and the corresponding JavaScript functions in iFrameDemo.html (renamed to iFrameDemohtml.mxml for reading purposes).

But what kind of surprised me was the amazing perfomance of the History Managemet API. While still within the FLEX Application, you can use the browser back button to navigate to earlier pages... really NEAT !!!

People participating in the ADO RIA Challenge, go ahead and use this innovatively in your application. For more details on ActionScript - JavaScript interaction through External APIs, refer the following links.

Sunday, November 26, 2006

Adobe Developer Olympiad (Win Rs. 50,000)

Adobe India on Friday, announced the Adobe Developer Olympiad. Adobe made its grand entry onto the programming world, with the acqusition of Macromedia... Adding Flash & ColdFusion to its kitty. Now with FLEX2.0 out in the open, Adobe has enough push to reach out to developers and its doing exactly that.

First came the Adobe Developer Derby, which saw some awesome applications being churned out. Check the results and the winning applications here. Then there was an Aussy equivalent of the Derby, which went well too.

So now we have decided to focus on one of the (probably THE) largest developer bases in the world. INDIA !! Our philosophy to start from the grass root level has spun this idea of Adobe Developer Olympiad for Students. The key highlights for the same
  • Any student pursuing a degree in any stream as a full time student of a recognized university in India is eligible to participate in the contest.
  • Submissions can be in 3 categories: Engineering (components), Applications, and ColdFusion integration.
  • Each category has a prize of Rs. 50,000
  • You can participate individually or as a team of upto 5 members
Check out these following links to start off....
More updates will follow... Any queries, mail to the Developer Olympiad Mailing list (ado@adobe .com)