Posted in Uncategorized | Tagged http://tv.adobe.com/#vi+f1556v1715 | Leave a Comment »
Learn Flex in one week by going through this video training course. To maximize your learning, we recommend that you view the videos and complete the exercises in the order that they are listed. If you run into problems and have questions, you can ask a question on the Flex in a Week forum.
Note: Before starting the training, please ensure that you have installed Flex Builder. You can either use the free trial version or buy Flex Builder to go through the training.
Day 1: Flex basics
- Video: Comparing Flash, Flex, Flash Player and AIR (5:30)
- Video: Introducing Flex Builder (7:22)
- Video: Creating a Flex Builder workspace and project (7:04)
- Video: Using pre-built Flex controls (4:34)
- Video: Understanding MXML (4:07)
- Exercise: Creating a project and laying out controls (PDF, 827k)
- (Download Solution, ZIP, 13K)
- Video: Binding data between controls (5:48)
- Video: Handling user events (6:22)
- Video: Introducing the event object (10:40)
- Video: Adding EventListeners with ActionScript (5:21)
- Exercise: Binding data and handling a user event (PDF, 367k)
- (Download Starter, ZIP, 13K; Solution, ZIP, 13K)
- Video: Retrieving data via HTTPService (8:26)
- Exercise: Populating a control from an HTTPService request (PDF, 512k)
(Download assets, ZIP, 17K; Starter, ZIP, 13K; Solution, ZIP, 31K)
Day 2: Component development
- Video: Displaying data in the DataGrid (6:35)
- Video: Working with containers (12:12)
- Exercise: Working with containers (PDF, 139k)
- (Download Starter, ZIP, 31K; Solution, ZIP, 31K)
- Video: Creating custom MXML components (8:42)
- Exercise: Creating custom MXML components (PDF, 225k)
- (Download Starter, ZIP, 31K; Solution, ZIP, 32K)
- Video: Implementing value object classes (13:46)
- Video: Creating custom events (5:59)
- Video: Creating custom event classes (23:06)
- Exercise: Creating custom events and dispatching Data (PDF, 332k)
- (Download Starter, ZIP, 32K; Solution, ZIP, 33K)
- Video: Customizing item renderers (6:42)
- Exercise: Creating an item renderer (PDF, 123k)
- (Download Starter, ZIP, 33K; Solution, ZIP, 33K)
- Video: Exploring Flex Builder tips (5:18)
Day 3: Putting it all together
Posted in Uncategorized | Leave a Comment »
Posted in Uncategorized | Tagged 21 Flex Videos, Flex Videos | Leave a Comment »
LifeCycle DE overView Video: very usefull
https://admin.adobe.acrobat.com/_a295153/livecycledevoverview1/
As you probably know, Flex Data Services was recently renamed to LiveCycle Data Services ES, commonly referred to as LiveCycle DS. However, this name change has confused a lot of people because there was already a set of products named LiveCycle Enterprise Suite, commonly referred to as LiveCycle ES. After talking to many people at 360Flex and other events, I’ve concluded that the distinction and relationship between these is a bit muddy for most. more..
Posted in Uncategorized | Tagged BlazeDS, LiveCycle DS, LiveCycle ES | Leave a Comment »
In computing, a software framework provides “the skeleton of an application that can be customized by an application developer” Like software libraries, software frameworks aid the software developer by containing source code that solves problems for a given domain and provides a simple API. However, while a code library acts like a servant to other programs, software frameworks reverse the master/servant relationship. This reversal, called inversion of control, expresses the essence of software frameworks. more..
by wiki.
Posted in Uncategorized | Tagged framework, software framework, What is framework? | Leave a Comment »
Very clear view about the BlazeDS vs LCDS from Sujit Reddy G blog.
Following are the differences between LCDS and BlazeDS in terms of features. For more details on the features, please visit http://www.adobe.com/products/livecycle/dataservices/features.html
– Indicates the feature is available
| Features | BlazeDS | LCDS |
| Data management Services | ||
| Client-Server synchronization | ||
| Conflict resolution | ||
| Data paging | ||
| SQL adapter |
|
|
| Hibernate adapter |
|
|
| Document Services | ||
| LiveCycle remoting | ||
| RIA-to-PDF conversion | ||
| Enterprise-Class Flex application services | ||
| Data access/remoting |
|
|
| Proxy service |
|
|
| Automated testing support |
|
|
| Software clustering |
|
|
| Web tier compiler |
|
|
| Enterprise Integration | ||
| WSRP generation |
|
|
| Ajax data services |
|
|
| Flex-Ajax bridge |
|
|
| Runtime configuration |
|
|
| Open adapter architecture |
|
|
| JMS adapter |
|
|
| Server-side component framework integration |
|
|
| ColdFusion integration |
|
|
| Offline Application Support | ||
| Offline data cache |
|
|
| Local message queuing |
|
|
| Real – Time Data | ||
| Publish and Subscribe messaging |
|
|
| Real -time data quality of service |
|
|
| RTMP tunneling |
|
Posted in Uncategorized | Tagged BlazeDS, BlazeDS Vs LCDS, difference between BlazeDS and LCDS, LCDS | Leave a Comment »
Developing Flex RIAs with Cairngorm microarchitecture – Rapid and consistent development with Cairngorm and Flex
http://www.adobe.com/devnet/flex/articles/cairngorm_pt6.html
Posted in Uncategorized | Tagged Cairngorm microarchitecture, Flex, RIAs | Leave a Comment »
Posted in Uncategorized | Tagged adobe max2007, FLex Overview, RIA | Leave a Comment »
<?xml version=”1.0″ encoding=”utf-8″?>
<mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml” layout=”absolute” initialize=”init()” width=”1000″ height=”700″>
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.core.UIComponent;
import mx.controls.Alert;
import mx.collections.*;
private var swfURL:String = "avm1SWF.swf";
private var libMC:MovieClip;
private var fxStage:UIComponent = new UIComponent();
[Bindable]
private var totalSlides:ArrayCollection;
private var curSlide:int = 1;
private var myCursor:IViewCursor;
private function init():void{
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, swfComplete);
var fLoader:ForcibleLoader = new ForcibleLoader(loader);
fLoader.load(new URLRequest(swfURL));
fxStage.addChild(loader);
pptContainer.addChild(fxStage);
}
private function swfComplete(event:Event):void{
totalSlides = new ArrayCollection();
libMC = new MovieClip();
libMC = event.currentTarget.content as MovieClip;
for(var i:int = 1;i<Math.ceil(libMC.totalFrames/2);i++){
var o:Object = {label:i};
totalSlides.addItem(o);
}
myCursor = totalSlides.createCursor();
var sort:Sort = new Sort();
sort.fields = [new SortField("label")];
totalSlides.sort=sort;
totalSlides.refresh();
first.enabled = false;
back.enabled = false;
libMC.gotoAndStop(1);
}
private function currentSlide(n:int):void{
var on:int;
if(on < n){
if(n==1){
libMC.gotoAndPlay(libMC.totalFrames);
}else{
libMC.gotoAndStop(n*2-2);
}
}
n = n*2;
libMC.gotoAndStop(n);
on = n;
}
public function navigate(event:MouseEvent):void {
var goto:String = event.currentTarget.label;
switch(goto) {
case ‘first’:
firstCollection();
break;
case ‘back’:
backCollection();
break;
case ‘next’:
nextCollection();
break;
case ‘last’:
lastCollection();
break;
}
enableDisableButtons()
}
private function enableDisableButtons():void{
var firstInCollection:Boolean = totalSlides.getItemAt(0) == myCursor.current;
first.enabled = back.enabled = !firstInCollection
var lastInCollection:Boolean = totalSlides.getItemAt(totalSlides.length – 1) == myCursor.current;
last.enabled = next.enabled = !lastInCollection;
}
public function nextCollection():void {
if(! myCursor.afterLast) {
myCursor.moveNext();
currentSlide(myCursor.current.label);
}
}
public function backCollection():void {
if(!myCursor.beforeFirst) {
myCursor.movePrevious();
currentSlide(myCursor.current.label);
}
}
public function firstCollection():void {
myCursor.seek(CursorBookmark.FIRST);
currentSlide(myCursor.current.label);
}
public function lastCollection():void {
myCursor.seek(CursorBookmark.LAST);
currentSlide(myCursor.current.label);
}
public function countLast(theCursor:IViewCursor):int {
var counter:int=0;
var mark:CursorBookmark=theCursor.bookmark;
while (theCursor.moveNext()) {
counter++;
}
theCursor.seek(mark);
return counter;
}
public function loadCurrentSlide(c:int):void {
curSlide = c;
currentSlide(curSlide);
myCursor.findAny(totalSlides.getItemAt(curSlide-1));
var count:int = countLast(myCursor);
enableDisableButtons();
}
]]>
</mx:Script>
<mx:VBox width=”100%” >
<mx:HBox width=”100%” height=”550″>
<mx:VBox width=”20%” height=”550″>
<mx:Repeater id=”r” dataProvider=”{totalSlides}”>
<mx:Button label=”{‘Slide’+r.currentItem.label}” click=”loadCurrentSlide(event.currentTarget.repeaterIndex+1)”/>
</mx:Repeater>
</mx:VBox>
<mx:Box id=”pptContainer”>
</mx:Box>
</mx:HBox>
<mx:HBox width=”100%” horizontalAlign=”center”>
<mx:HBox>
<mx:Button label=”first” id=”first” click=”navigate(event)”/>
<mx:Button label=”back” id=”back” click=”navigate(event)”/>
<mx:Button label=”next” id=”next” click=”navigate(event)”/>
<mx:Button label=”last” id=”last” click=”navigate(event)”/>
</mx:HBox>
</mx:HBox>
</mx:VBox>
</mx:Application>
Posted in Uncategorized | Tagged avm1 swf to avm2 as3 swf, IViewCursor | Leave a Comment »
E4X
The ECMAScript for XML (E4X) specification defines a set of classes and functionality for working with XML data. E4X makes it easy to utilize XML structured data and reduce code complexity as well as create less coupling between code and external data.
Key features of E4X include:
- ECMAScript for XML specification defines a new set of classes and functionality for working with XML data.
- You manipulate XML data with well-known operators, such as the dot (.) operator.
- Use the @ and (.) operators not only to read data, but also to assign data.
- Using E4X functionality is much easier and more intuitive than “walking the DOM”.
E4X Example:
An example application is available here
Posted in Uncategorized | Tagged E4X, E4X sample | Leave a Comment »