Flash Layout Engine in Reflex



As a component platform Reflex is built on a foundation of core libraries and utilities. Because of the unique culture of the project most of these solutions are independently useful to the Flash developer. Its layout engine is one of Reflex’s profitable solutions and can structure the visual flow of any member of ActionScript’s display list.

The following demo illustrates one of the default layout algorithms in Reflex, named Dock (notice the minimal use of containers used to achieve the structure). Click and drag to resize:
(more…)

Reflex: Rethinking Component Design

Reflex: Rethinking Component Design

So is the title of the upcoming 360|Flex presentation on Reflex, a toolkit for Flash developers that has been in the works. The conference in March will finally mark its début:

With the emergence of so many new technologies it is an exciting time to be a developer. Embracing the spirit of advancement, Reflex was created to extend the Flash Platform with a component toolset worthy of its industry. Reinventing the features of Flex for the creative workflow, Reflex enhances the Flash Player (rather than abstracting it) to meet the demands of next generation applications and devices. Come be among the first to see what Reflex can do and learn about its unique architecture, the details of the project, its goals and its future. (session description)

The presentation will begin at 1:00pm on Tuesday, the 9th of March. Right after lunch. Be sure to come early for a good seat.

Custom Binding Released!

Custom Binding Released!

Delivered as promised. It has a smaller memory footprint, a faster clock-speed and, best of all, it’s 100% weak-referenced. Data binding is supposed to be light and unobtrusive. Now you can have the smallest ActionScript 3 binding available, released as a component of the open source Flight Framework.

Flight’s data binding is powerful and simple, consisting of two classes. A Binding object represents a single data source: a source object and a source-path, such as model and "user.userName". Any number of event listeners and object/property pairs can be registered with this single Binding instance, allowing each to update when the data source changes. This class may be useful for special needs, but you usually don’t deal with Binding directly.

The Bind class is the primary interface to Flight binding and is used much like you would use Flex BindingUtils. This class exposes a static API for adding and removing bindings and listeners. It can also be instantiated via MXML for special cases where you need weak-reference binding that curly-brace bindings just don’t support. Here’s an example of usage:

Binding via Static ActionScript API:

// Bind.addBinding(target:Object, targetPath:String, source:Object, sourcePath:String, twoWay:Boolean = false):Boolean
 
Bind.addBinding(this, "userTxt.text", this, "model.user.userName");

Instance binds via MXML:

<!-- constructor: Bind(target:Object = null, targetPath:String = null, source:Object = null, sourcePath:String = null, twoWay:Boolean = false):void -->
 
<flight :Bind targetPath="userTxt.text" sourcePath="model.user.userName"/>

Visit the Google Project to download release 0.8.1 or higher.

(more…)

Flight Framework: Early Beta.

Flight Framework: Early Beta.

It isn’t easy for me to release code that isn’t finished, so I’ve had many projects come and go without ever seeing the light of day. But not Flight, not this time.

I’ve posted about Flight before: it’s a simple and powerful application framework in ranks with Cairngorm and some of the newer frameworks. Here’s an excerpt from Flight’s initial post:

The Flight Framework is the evolution of an ActionScript framework that has been around for a few years. It was a replacement to Cairngorm and was originally designed for web-based, design-centric applications such as logo makers and book builders. Even now the framework ships with the CommandHistory – an entire solution for undo and redo – and other practical utilities that strengthen its offering.

Flight Framework maintains an emphasis on supporting capable clients: Flex and Flash applications that are much more than just a pretty face to a server implementation. Through features like domains (modular MVC systems) and a prescribed structure, the framework transforms component scripting into real application development.

(more…)

360|Flex: Speaking on Undo & Redo

360|Flex: Speaking on Undo & Redo

And such a nice conference! I’m pleased to say that I will be speaking at the best conference around for Flex and Flash developers. The presentations at this conference have real depth for developers, and this year looks like a great lineup: the schedule.

My topic is on a subject I’ve dealt with frequently. Over the last few years I’ve been heavily involved in building up design-centric tools and applications, all Flash/Flex based. Of course, one of the first requirements of these type of applications is undo and redo:

Undo History with Flight – level 200, Intermediate
Undo & redo is a core feature to many applications, yet it’s missing from your Flash and Flex projects. Learn how to easily add history to your applications with little effort. This session covers the concepts, benefits and the techniques of history management. It breaks down the complexity of undo & redo implementation into simple code, illustrating the use of the Command Pattern and providing the tools necessary to get up and running within minutes. This session is targeted toward intermediate developers, but will be a great overview of application history for beginners and non-programmers.

Also, there’s a pre-showing of the presentation at our next uFlash meeting. For everyone else, don’t forget to register for 360|Flex! The discount pricing for early registration is first come first serve.

AS3 Button Behavior Made Easy

AS3 Button Behavior Made Easy

I posted a rant on “releaseOutside” earlier this month – finally, here is the example and the code for making anything a Button in ActionScript 3. I’ve also added some really nice features since then. I realized after venting about dragOver, dragOut, and releaseOutside that, unless you built custom components in ActionScript 2, you probably have no idea what these events actually mean for a Button. So now, instead of imparting the boring details of exactly how a Button should work, I’ve implemented 3 new events: stateUp, stateOver and stateDown.
(more…)

My First Curve-To-Curve Intersection Tests.

My First Curve-To-Curve Intersection Tests.

Finding the intersection of two lines is a fairly straightforward algorithm. You find their slopes, factor the equation, simple. But finding the intersection between two quadratic bezier curves doesn’t seem to have a simple equation. From the sources I’ve read (I’ll try and find them again so I can cite and quote them) curve-to-curve intersection can only be solved as an approximation.

There are a lot of cool things you can do once you have both line and curve intersections figured out. For example you can combine two shapes wherever they overlap. You can also do some less obvious things such as path offsets (equivalent to Flash authoring’s Modify > Shapes > Expand Fill)
(more…)

NEW! “releaseOutside” Event in AS3

NEW! “releaseOutside” Event in AS3

Wow, making a simple button out of a Sprite in AS3 is not an obvious task. I mean a proper button with correct states and with dragOver, dragOut, and releaseOutside -type behavior. Those who coded much in AS2 know what I’m talking about. When a button is pressed and the mouse moves off the button (still pressed) onto a neighboring button, the second button shouldn’t dispatch the rollOver event and subsequently switch to an over state, the first button shouldn’t dispatch a rollOut but a dragOut, etc etc.
(more…)

New & Improved Flex/Flash Data Binding

New & Improved Flex/Flash Data Binding

I’m just finishing up the development of another weak-referenced data binding. The implementation I’ll be releasing soon works seamlessly with Flex and Flash projects, ensuring that application bindings don’t cause memory leaks. And it’s smaller and faster than Flex’s built-in BindingUtils (more…)

ActionScript 3.0 Language Reference for Flash Player 10

ActionScript 3.0 Language Reference for Flash Player 10

I can never find the language reference for Flash Player 10. I finally bookmarked the thing, but thought it might be useful to share the (apparently un-indexed) web location: flash player 10 language reference

The api for the new Vector type is here, which is identical to the Array in all ways except the sort and sortOn (I wish they’d have Array and Vector implement a similar interface)

    Also the references I use the most recently

  • the new drawing api features: GraphicsPath, GraphicsData, lineBitmapStyle
  • DisplayObject 3D: the ever-so-cool ‘z’ coordinate, PerspectiveProjection, Matrix3D

And I’d love to get involved with the dynamic sound generation, but right now that’s left to my genius co-worker Joe Snow.

 Page 1 of 2  1  2 »
  • zoloft order
  • try viagra for free
  • buy medicine online
  • cholesterol care
  • alternative antibiotics
  • reducing cholesterol
  • bone loss treatment
  • cat products
  • reduce swelling methods
  • osteoporosis medication side effects
  • pets products
  • at home acne treatments
  • types of blood pressure medicine
  • cholesterol medication
  • vitamin nutrition supplement
  • buy birth control pills
  • order calcium carbonate
  • viagra and buy
  • reducing high blood pressure
  • order metformin online
  • buy prescription medication online
  • generic for viagra
  • accutane buy
  • skin solutions
  • cialis approval
  • treating chlamydia
  • fat loss tips
  • buy birth control pills
  • help for edema
  • cheap pain pills
  • healthy dog puppy food
  • new stop smoking medication
  • high cholesterol meds
  • healthy pet
  • vitamin metabolism
  • buy levitra onlines
  • lisinopril 5mg
  • new diabetes meds
  • arthritis in back
  • how to increase bust
  • drugstore online
  • weight loss help
  • cheap phentermine
  • canadian drug stores
  • cure for aids
  • zyban online from canada
  • cheap premarin
  • generic viagra lowest price
  • suffering produces endurance
  • longer lasting erection
  • viagra how works
  • skin cancer treatments
  • throat gonorrhea
  • information on congestive heart failure
  • new weight loss drugs
  • cialis blood pressure
  • preventing pregnancy after sex
  • stopping hair loss
  • online pharmacy in canada
  • price zyban
  • stop hair loss
  • quitting zyban
  • buy soma cheap online
  • list of prescription pain meds
  • treat high blood pressure
  • prescription med
  • drugs to help sleep
  • preventing pregnancy after sex
  • omega fish oil
  • senna constipation
  • order medication
  • how to relieve lower back pain
  • weight loss drinks
  • weight loss for women
  • safest weight loss pill
  • treatments for lung cancer
  • diabetes drug
  • treatments for high blood pressure
  • free weight loss program
  • nolvadex no prescription
  • anxiety insomnia
  • control premature ejaculation
  • causes erectile dysfunction
  • best hangover remedy
  • what is diazepam
  • body building product
  • clomid dosage
  • bipolar disorder
  • fast antibiotics cure chlamydia
  • buy singulair
  • aids for sleeping
  • hair loss cures
  • lisinopril 5mg
  • arthritis help
  • medication price
  • risperdal anxiety
  • blockers calcium channel
  • online soma
  • ambien 20mg
  • hair loss in children
  • best hair loss treatment
  • hand skin problems
  • good guide health womans
  • zyban pharmacy
  • buy singulair
  • what is generic viagra
  • chewable viagra
  • buy pain pills on line
  • new medicine for diabetes
  • osteoporosis therapy
  • strength training
  • tips to help loss weight
  • relieve pain in neck
  • increasing breast size naturally
  • new fda diet pill
  • vardenafil effectiveness
  • ambien 10
  • dog s health
  • severe leg muscle pain
  • dietary drug
  • alprazolam
  • allergies singulair
  • alternative therapy for rheumatoid arthritis
  • anxiety
  • new diet supplements
  • care dog skin
  • hair loss treatments for women
  • fluconazole interaction
  • carisoprodol price
  • online kamagra
  • infection lung
  • effective weight loss
  • lopressor drug
  • antibiotics gonorrhea
  • stress relievers
  • effexor dose
  • dog s health
  • generic online order viagra
  • buy generic cialis online
  • food allergies
  • scabies treatments
  • buy stopping diabetes
  • drugs for energy
  • repels insects
  • cialis on line
  • cheap baclofen
  • treatmemt of diabetes
  • treatment of obesity
  • where can i buy arthritis drugs
  • medical chlamydia
  • does levitra work
  • generic 5mg proscar cheap
  • cancer medications
  • prescription medication
  • abnormal blood clots
  • blood pressure treatment
  • cialis contraindications
  • online paxil
  • on line drug stores
  • control premature ejaculation
  • prozac depression
  • pain in chest
  • cheap canadian pharmacy
  • muscle and fitness
  • how to find medication prescriptions xanax
  • how do a stop smoking
  • simvastatin reaction
  • cheapest levitra
  • flu medicine
  • nausea cure
  • celebrex information
  • online pharmacy discount
  • online pharmacy discount drugs
  • over weight dog
  • diet and health products
  • lamisil generic
  • strength training
  • buy levitra online with fast delivery
  • weight loss drugs order
  • depression in men
  • dog health help
  • medication for depression
  • high blood calcium level
  • generic amoxicillin
  • cures for lung cancer
  • diet and health products
  • buy levaquin
  • drugs weight loss
  • prevention of hypertension
  • drugs for depression
  • sildenafil kamagra
  • cialis alcohol
  • singulair generic
  • pain management
  • wellbutrin cymbalta
  • buy zocor
  • cholesterol treatment
  • singulair generic
  • zoloft discount
  • european online pharmacy