[Flashcoders] Flash IOS Enterprise distribution on a PC

2012-09-25 Thread Paul Andrews

Anyone know of a guide to making an enterprise distribution on a PC?

Thanks,

Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Actionscript lives on.

2012-09-18 Thread Paul Andrews

On 18/09/2012 10:48, Cédric Muller wrote:

Jon Bradley wrote :

The problem of flash for mobile is as much about politics and protecting the 
Apple appstore than anything else -it seems to me that flash was a threat by 
allowing apps to be produced bypassing Apples appstore.

It is the problem of HTML5 too, since all these may happen in the browser, they 
all bypass and gracefully skip the appstore model.
I think the problem is the AppStore, and not the technology(ies). And you are 
right, it has much to do with politics and moneymaking.


A couple of months ago I worked on an iPad project and decided to give 
it a go using HTML5. Part of the project used sound and video, so it 
required use of the HTML5 cache to permit offline use of the web app.


It all worked wonderfully until there was no internet connection. No 
sound or video.


It turns out that the iPad won't cache those assets so I then went ahead 
and rebuilt the app using Flash with an IOS target.


So Apple seems to be protecting themselves from standalone HTML5 webapps 
too.


Paul


Cedric___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders




___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Actionscript lives on.

2012-09-18 Thread Paul Andrews
The web standards comittee already squashed Adobe's attempt to get 
ecmascript 2 adopted as a browser standard - making actionscript and 
javascript compatible.


Adobe is never going to try and make Flash compete with javascript as a 
DOM manipulator.


Adobe is going to concentrate on markets where flash has an advantage.

Paul

On 18/09/2012 11:35, Karl DeSaulniers wrote:
I personally think that if Flash wants to compete with the likes of 
HTML 5 and jQuery, it needs to step out of the plugin area.
Make it an EMCA viable script language. Like Actionscript becoming 
Javascripts competitor. Make it so Actionscript can control and 
manipulate DOM.

Just sayin..

Karl

PS: I don't think the original topic was vectors anyway, so your good. :)

On Sep 18, 2012, at 5:26 AM, Cédric Muller wrote:


Karl DeSaulniers wrote :

Flash is not dead. It's hibernating.
. With SOME of the fault in the way flash handles things.


Adobe was a little confusing on that one. It somehow proved it lacked 
of vision, and failed to capitalize the 'money grabbing' process that 
was needed for Mankind (sarcasm). And since then, it looks like Flash 
is living the Director's fate (and maybe the Director's Cut too ...). 
Flash is still very good, as a runtime. As are a lot of runtimes. 
What we observe is that browsers are runtimes, and that we can do 
many things with them that don't justify Flash use anymore (as it was 
always the case, take the usability gurus .. err darketers ). So all 
in all, Flash Player is still a strong runtime that lets developpers 
leverage some amazing things with it. Moreover, this AppStore storm 
got rid of a lot of bad Flash use (indirectly, a lot of bad 
applications with bad usability principles can be found on the iOS 
ecosystem from now on). Flash is now considered as a technology, and 
no more as a new paradigm (which is what the iOS AppStore is 
currently going through). 15 minutes of fame.


Cedric.

Sorry for the OT, as I don't really anything to add regarding vectors 
vs bitmaps ... though I 'plus' the view that it truly depends on the 
utilization: sometimes bitmaps are better, sometimes vectors are 
better: know your tech and make experiments in order to test in real 
situations. (Though I was amazingly amazed by the way Flash Player 
simply merges with Retina displays, for example. Vectors power!)

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Karl DeSaulniers
Design Drumm
http://designdrumm.com


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders




___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Actionscript lives on.

2012-09-18 Thread Paul Andrews

On 18/09/2012 18:49, Gustavo Duenas wrote:

what program did you use for creating apps for android and ios?


Btw I didn't left Flash, I use it for making Android and iOS apps and 
it works very well.




Gus
On Sep 18, 2012, at 11:02 AM, Ima Newsletta wrote:

Actionscript can manipulate DOM... because as1 is quite the same as 
js.
My personal experience: I'm a flash developer since 2002, I've begun 
with Flash 6 (before I was a classic programmer, c, clipper and so 
on).
I appreciated very much when As3 came out because I was freed by that 
nightmare of implementing class with prototype, by passing always the 
context and so on...
Now, because I have family, I was forced to learn html+js (and 
obviously jQuery) and I'm back into prototypes and context nightmare.
Ok let's say that I feel pretty strong and confortable with them, but 
it's a jump of at least 6 years in the past.
However, the REAL NIGHTMARE that I had forgottend since 2002 is that 
OBVIOUSLY html+js (also by using jQuery) differs from browser to 
browser.
jQuery helps a lot, however you have to test your webapp  on many 
browser and a lot of times what works on one, doesn't on another.
The real bad thing is that also on the language javascript there are 
important differences among the browser and you'll learn these only 
when they are in front of you.
For example, setTimeout(myFunction, 1000, myParam) won't work on 
explorer and you have to write it in this way:

setTimeout(function(){myFunction(myParam)} , 1000);
And this is just an example...

Btw I didn't left Flash, I use it for making Android and iOS apps and 
it works very well.
I made 4 apps, free on Android (with advertising banners by using an 
ANE) and with fee on Apple Store.


P.S. Sorry for my English, it's not my native tongue.


Il 18/09/2012 15:22, Merrill, Jason ha scritto:
Make it an EMCA viable script language. Like Actionscript becoming 
Javascripts competitor. Make it so Actionscript can control and 
manipulate DOM.

Just sayin..

THAT would be AWESOME and make me VERY HAPPY.

 Jason Merrill
 Instructional Technology Architect II
 Bank of America  Global Learning


--
This message w/attachments (message) is intended solely for the use 
of the intended recipient(s) and may contain information that is 
privileged, confidential or proprietary. If you are not an intended 
recipient, please notify the sender, and then please delete and 
destroy all copies and attachments, and be advised that any review 
or dissemination of, or the taking of any action in reliance on, the 
information contained in or attached to this message is prohibited.
Unless specifically indicated, this message is not an offer to sell 
or a solicitation of any investment products or other financial 
product or service, an official confirmation of any transaction, or 
an official statement of Sender. Subject to applicable law, Sender 
may intercept, monitor, review and retain e-communications (EC) 
traveling through its networks/systems and may produce any such EC 
to regulators, law enforcement, in litigation and as required by law.
The laws of the country of each sender/recipient may impact the 
handling of EC, and EC may be archived, supervised and produced in 
countries other than the country in which you are located. This 
message cannot be guaranteed to be secure or free of errors or viruses.


References to Sender are references to any subsidiary of Bank of 
America Corporation. Securities and Insurance Products: * Are Not 
FDIC Insured * Are Not Bank Guaranteed * May Lose Value * Are Not a 
Bank Deposit * Are Not a Condition to Any Banking Service or 
Activity * Are Not Insured by Any Federal Government Agency. 
Attachments that are part of this EC may have additional important 
disclosures and disclaimers, which you should read. This message is 
subject to terms available at the following link:
http://www.bankofamerica.com/emaildisclaimer. By messaging with 
Sender you consent to the foregoing.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders




___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Actionscript lives on.

2012-09-17 Thread Paul Andrews

On 17/09/2012 22:10, Jon Bradley wrote:

Just look up the storage and memory needs of a vector point (plus it's 
animation) and compare that to an RGB triplet.

It's pretty easy to find what you are looking for.


I don't think it's easy at all. A complex image with a lot of irregular 
detail may require more vector data to represent than a bitmap. 
Similarly an animation over multiple frames may require a lot of bitmaps 
to represent it, but relatively few vectors, particularly with tweening.


There is no absolute answer to the efficiency of vector representation 
versus bitmaps - it depends on what is being represented.


In general, many images can be represented with vector data more 
concisely than bitmaps so vectors would be more compact.


The problem of flash for mobile is as much about politics and protecting 
the Apple appstore than anything else -it seems to me that flash was a 
threat by allowing apps to be produced bypassing Apples appstore.


Adobe has said for years that mobile platforms should use bitmaps to 
conserve processor utilisation. The other real problem with flash is 
that some developers use inefficient processing loops that eat up 
processing power - I can often see it on my laptop when the fan suddenly 
kicks in after I've launched a flash app.





-j

On Sep 17, 2012, at 4:57 PM, Henrik Andersson he...@henke37.cjb.net wrote:


Ross P. Sclafani skriver:

http://www.adobe.com/devnet/flash/articles/optimizing-mobile-performance.html


That discusses runtime performance, not how big the data is. And it does
not provide any concrete research results. Just unscientific individual
observations.

I want concrete numbers that discuss how vector graphics impact the size
of the animation.
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders




___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


[Flashcoders] Catfish adverts

2012-05-24 Thread Paul Andrews
I have been asked to work on some flash catfish adverts. Does anyone 
know of any references about how they should behave? I can't find much 
online about them - specifically the close functionality.


Thanks,

Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Catfish adverts

2012-05-24 Thread Paul Andrews

Thanks Guys!

Paul

On 24/05/2012 10:39, Karl DeSaulniers wrote:

Lol, didn't see this post.

Best,
Karl


On May 24, 2012, at 3:55 AM, David Hunter wrote:

maybe this might shed some light: 
http://www.matto1990.com/jquery/catfish/


presumably the close functionality is some kind of 
ExternalInterface.call();


Hope that helps.

On 24 May 2012 09:30, Paul Andrews p...@ipauland.com wrote:

I have been asked to work on some flash catfish adverts. Does anyone 
know
of any references about how they should behave? I can't find much 
online

about them - specifically the close functionality.

Thanks,

Paul
__**_
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.**com Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/**mailman/listinfo/flashcodershttp://chattyfig.figleaf.com/mailman/listinfo/flashcoders 







--
David Hunter

www.davidhunterdesign.com
+44 (0) 7869 104 906
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Karl DeSaulniers
Design Drumm
http://designdrumm.com

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders




___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Can Javascript Listen to Flash Events?

2012-05-22 Thread Paul Andrews

I think you're doomed if you don't have the fla.

On 22/05/2012 16:43, Ted Lehr wrote:

So I have a swf that needs to run locally and make an ExternalInterface.call 
... I am unable to make settings changes to the users Flash Players ... so as 
of now it seems unpossible!

My thoughts was to see if the javascript can listen for a flash event (the end 
of a flv in FLVPlayback to be specific)

Any thoughts?

Ted
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders




___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] RE: Can Javascript Listen to Flash Events?

2012-05-22 Thread Paul Andrews

Just get a flash event handler to call a javascript function.

You probably don't have the security setting for the project set right - 
network access only.


Paul


On 22/05/2012 17:06, Ted Lehr wrote:

Oh - yes - I have the .fla... I just am running into issues when I try to have 
the swf call out to the javascript - I get the security warning from the player 
- so I am trying to figure out how to, instead of having the swf make a call 
out - maybe the javascript could just listen to the player...


-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com on behalf of Merrill, Jason
Sent: Tue 5/22/2012 11:52 AM
To: Flash Coders List
Subject: [Flashcoders] RE: Can Javascript Listen to Flash Events?

You would have to add code to the .swf, but yes, Javascript can listen for 
Flash events and vice versa.

  Jason Merrill
  Instructional Technology Architect II
  Bank of America  Global Learning





___

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com 
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Ted Lehr
Sent: Tuesday, May 22, 2012 11:44 AM
To: flashcoders@chattyfig.figleaf.com
Subject: [Flashcoders] Can Javascript Listen to Flash Events?

So I have a swf that needs to run locally and make an ExternalInterface.call 
... I am unable to make settings changes to the users Flash Players ... so as 
of now it seems unpossible!

My thoughts was to see if the javascript can listen for a flash event (the end 
of a flv in FLVPlayback to be specific)

Any thoughts?

Ted
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

--
This message w/attachments (message) is intended solely for the use of the 
intended recipient(s) and may contain information that is privileged, 
confidential or proprietary. If you are not an intended recipient, please 
notify the sender, and then please delete and destroy all copies and 
attachments, and be advised that any review or dissemination of, or the taking 
of any action in reliance on, the information contained in or attached to this 
message is prohibited.
Unless specifically indicated, this message is not an offer to sell or a 
solicitation of any investment products or other financial product or service, 
an official confirmation of any transaction, or an official statement of 
Sender. Subject to applicable law, Sender may intercept, monitor, review and 
retain e-communications (EC) traveling through its networks/systems and may 
produce any such EC to regulators, law enforcement, in litigation and as 
required by law.
The laws of the country of each sender/recipient may impact the handling of EC, 
and EC may be archived, supervised and produced in countries other than the 
country in which you are located. This message cannot be guaranteed to be 
secure or free of errors or viruses.

References to Sender are references to any subsidiary of Bank of America 
Corporation. Securities and Insurance Products: * Are Not FDIC Insured * Are Not Bank 
Guaranteed * May Lose Value * Are Not a Bank Deposit * Are Not a Condition to Any Banking 
Service or Activity * Are Not Insured by Any Federal Government Agency. Attachments that 
are part of this EC may have additional important disclosures and disclaimers, which you 
should read. This message is subject to terms available at the following link:
http://www.bankofamerica.com/emaildisclaimer. By messaging with Sender you 
consent to the foregoing.
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] RE: Can Javascript Listen to Flash Events?

2012-05-22 Thread Paul Andrews

On 22/05/2012 17:36, Ted Lehr wrote:

I cannot change security settings for the player - this will be used by a lot 
of people and I cannot go to each work station and change that setting... 
unless you are talking about some other setting...


I was talking about the local playback settings in the publish tab in 
the IDE.




-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com on behalf of Paul Andrews
Sent: Tue 5/22/2012 12:15 PM
To: flashcoders@chattyfig.figleaf.com
Subject: Re: [Flashcoders] RE: Can Javascript Listen to Flash Events?

Just get a flash event handler to call a javascript function.

You probably don't have the security setting for the project set right -
network access only.

Paul


On 22/05/2012 17:06, Ted Lehr wrote:

Oh - yes - I have the .fla... I just am running into issues when I try to have 
the swf call out to the javascript - I get the security warning from the player 
- so I am trying to figure out how to, instead of having the swf make a call 
out - maybe the javascript could just listen to the player...


-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com on behalf of Merrill, Jason
Sent: Tue 5/22/2012 11:52 AM
To: Flash Coders List
Subject: [Flashcoders] RE: Can Javascript Listen to Flash Events?

You would have to add code to the .swf, but yes, Javascript can listen for 
Flash events and vice versa.

   Jason Merrill
   Instructional Technology Architect II
   Bank of America  Global Learning





___

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com 
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Ted Lehr
Sent: Tuesday, May 22, 2012 11:44 AM
To: flashcoders@chattyfig.figleaf.com
Subject: [Flashcoders] Can Javascript Listen to Flash Events?

So I have a swf that needs to run locally and make an ExternalInterface.call 
... I am unable to make settings changes to the users Flash Players ... so as 
of now it seems unpossible!

My thoughts was to see if the javascript can listen for a flash event (the end 
of a flv in FLVPlayback to be specific)

Any thoughts?

Ted
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

--
This message w/attachments (message) is intended solely for the use of the 
intended recipient(s) and may contain information that is privileged, 
confidential or proprietary. If you are not an intended recipient, please 
notify the sender, and then please delete and destroy all copies and 
attachments, and be advised that any review or dissemination of, or the taking 
of any action in reliance on, the information contained in or attached to this 
message is prohibited.
Unless specifically indicated, this message is not an offer to sell or a 
solicitation of any investment products or other financial product or service, 
an official confirmation of any transaction, or an official statement of 
Sender. Subject to applicable law, Sender may intercept, monitor, review and 
retain e-communications (EC) traveling through its networks/systems and may 
produce any such EC to regulators, law enforcement, in litigation and as 
required by law.
The laws of the country of each sender/recipient may impact the handling of EC, 
and EC may be archived, supervised and produced in countries other than the 
country in which you are located. This message cannot be guaranteed to be 
secure or free of errors or viruses.

References to Sender are references to any subsidiary of Bank of America 
Corporation. Securities and Insurance Products: * Are Not FDIC Insured * Are Not Bank 
Guaranteed * May Lose Value * Are Not a Bank Deposit * Are Not a Condition to Any Banking 
Service or Activity * Are Not Insured by Any Federal Government Agency. Attachments that 
are part of this EC may have additional important disclosures and disclaimers, which you 
should read. This message is subject to terms available at the following link:
http://www.bankofamerica.com/emaildisclaimer. By messaging with Sender you 
consent to the foregoing.
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http

Re: [Flashcoders] MVC style Correction

2012-03-07 Thread Paul Andrews

On 07/03/2012 15:37, Ross Sclafani wrote:

yay me!


Indeed!

Your MVC introductory example was superb.

Paul


Ross P. Sclafani
design / technology / creative

http://ross.sclafani.net
http://www.twitter.com/rosssclafani
http://www.linkedin.com/in/rosssclafani
[347] 204.5714




let go of even your longest held beliefs,
the only truth is in observation.

On Mar 7, 2012, at 10:27 AM, David Hunter wrote:


Hi all,

Really pleased that my original question has generated so much positive
discussion, debate and learning on MVC. For me it has certainly shed some
light on different ways to implement it and probably some improvements or
different approaches I could take in the future.

Currently I connect them all together exactly as Ross has his set up in his
first example. Although I may experiment with some slightly different
approaches or try out a framework.

Regards,

David


On 7 March 2012 07:25, Corc...@chello.nl  wrote:


+1

Best regards,
Cor van Dooren

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of John
McCormack
Sent: dinsdag 6 maart 2012 21:30
To: Flash Coders List
Subject: Re: [Flashcoders] MVC style Correction

Absolutely agree, so thank you everyone - very much.
Each day I look for more.

As a result of people talking about RobotLegs I bought and today received
Joel Hooks' ActionScript Developers Guide to RobotLegs.

A new direction - which I am thankful for.

John

On 06/03/2012 18:57, Kevin Newman wrote:

Also, this thread has helped to flesh out my understanding of MVC to a
substantial degree. I love that. :-)

Kevin N.


On 3/6/12 11:40 AM, Kevin Newman wrote:

That's how I understand MVC anyway.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders






___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders




--
David Hunter

www.davidhunterdesign.com
+44 (0) 7869 104 906
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] MVC style Correction

2012-03-06 Thread Paul Andrews

On 06/03/2012 10:35, Karl DeSaulniers wrote:

I kind of like that.

I guess I am looking to the controller to do the event dispatching to 
the model
The controller manipulates the model, so it wouldn't really need to 
dispatch events to it.


the model to listening for the result. the view listening for changes 
to the model.
The model won't be listening for anything (though that is blurred as we 
progress to model persistence, which may be asynchronous - saving across 
a network, fetching data from a remote server, etc).


View allows user interaction,
View messages controller,
controller updates model,
view updates according to model changes.



On Mar 6, 2012, at 4:26 AM, Cor wrote:


You could ofcourse take another approach:
In the view:
dispatchEvent(new Event(View.YOURVIEWEVENT));

and in the Contoller:

View.addEventListener(View.YOURVIEWEVENT, callback);

So there is a loose coupling as Paul wrote.


-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Karl
DeSaulniers
Sent: dinsdag 6 maart 2012 11:08
To: Flash Coders List
Subject: Re: [Flashcoders] MVC style Correction

Forgive me if I am wrong, but I watched that video and it confused me.
The gentleman started creating the view first then made the model and 
had
the interaction between the two then went and created the controller 
and in

creating the controller took away some code from the view that the model
handled and gave it to the controller. He also had the view having 
reference

to the model and controller.

var model:Model = new Model();
var controller:Controller = new Controller(model); var view:View = new
View(model, controller);

shouldn't it be..

var controller:Controller = new Controller(); var model:Model = new
Model(controller); var view:View = new View(model);

?

Trying to wrap my head around this.
Thanks for this video though Cor!
It helped me see a real example so far of how to implement a MVC.


Best,
Karl


On Mar 5, 2012, at 7:00 AM, Cor wrote:


Thanks Paul,

In the documentation I read there is mostly the View telling the
Controller an event has taken place.
The View holds e reference of the Model and the Controller.
Look at :
http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en/devnet/a
ctions cript/pdfs/ora_as3_design_patterns_ch12.pdf

on page number 429 (is the 11th page of this file)

So I have create this in my Document class like this:

var model:Model = Model.getInstance(); //Singleton
var controller:Controller = new Controller(model);
var view:View = new View(model, controller,

this.stage);

addChild(view);


To check if I understand you correctly, you would do something like
this:

var model:Model = Model.getInstance(); //Singleton
var view:View = new View(model,  this.stage);
var controller:Controller = new Controller(model,
view);
addChild(view);

And in the view instance, instead of my way:

private function btn_clickHandler(e:MouseEvent):void {


controller.setValueInModel(arrayButtons.indexOf(e.target));
}

private function btn_clickHandler(e:MouseEvent):void {

myPublicVar = arrayButtons.indexOf(e.target);
dispatchEvent(new Event(View.MY_CUSTOM_EVENT));
}

Ofcourse the Controller would then have a listener :
view.addEventListener(
View.MY_CUSTOM_EVENT, callback_function);

Correct???

Regards
Cor

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Paul
Andrews
Sent: maandag 5 maart 2012 13:31
To: Flash Coders List
Subject: Re: [Flashcoders] MVC style Correction

On 05/03/2012 10:26, Cor wrote:

@Karl,

I just created my first MVC and it is still in progress...
Lots of fun!

This video helped me a lot!
http://pv3d.org/2009/02/11/actionscript-3-model-view-controller-mvc/

Unfortuneatly the tutor mentions Controller can update View, but that
example is not included.
If anyone can give me a little example of how that is done in MVC,
don't hasitate. :-)


I don't think the controller should be updating the view. Period.
Nor do I
think that the view should be calling methods of the controller class.

One of the main benefits of MVC is separation of concerns. Views
shouldn't
care about controllers, controllers should care about views.

My views dispatch events about their changes and the controller
listens for
the events, not caring which view dispatched it.
The controller updates the model, and the view listens for changes
in the
model.

There are several ways to build the MVC pattern. The video shows one
way,
but really it shows a coupling that shouldn't be as tight as it is
and the
idea of a controller updating a view, is a no-no.

Sometimes people use a micro-mvc architecture within a view to
control it -
no problem about that, but we should keep our MVC components

Re: [Flashcoders] MVC style Correction

2012-03-05 Thread Paul Andrews

On 05/03/2012 10:26, Cor wrote:

@Karl,

I just created my first MVC and it is still in progress...
Lots of fun!

This video helped me a lot!
http://pv3d.org/2009/02/11/actionscript-3-model-view-controller-mvc/

Unfortuneatly the tutor mentions Controller can update View, but that
example is not included.
If anyone can give me a little example of how that is done in MVC, don't
hasitate. :-)


I don't think the controller should be updating the view. Period. Nor do 
I think that the view should be calling methods of the controller class.


One of the main benefits of MVC is separation of concerns. Views 
shouldn't care about controllers, controllers should care about views.


My views dispatch events about their changes and the controller listens 
for the events, not caring which view dispatched it.
The controller updates the model, and the view listens for changes in 
the model.


There are several ways to build the MVC pattern. The video shows one 
way, but really it shows a coupling that shouldn't be as tight as it is 
and the idea of a controller updating a view, is a no-no.


Sometimes people use a micro-mvc architecture within a view to control 
it - no problem about that, but we should keep our MVC components as 
separate black boxes.


Paul

best regards
Cor van Dooren
The Netherlands

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Karl
DeSaulniers
Sent: maandag 27 februari 2012 11:19
To: Flash Coders List
Subject: Re: [Flashcoders] MVC style Correction

That actually makes a lot of sense to me and I haven't written one MVC yet.
Thanks for the break-down!
In relation to what Henrik said about using adaptors, I see the sub
controllers as the adaptors, but they are not actually adaptors, just sub
controllers with targets to the main controller.
Yes?

Best,
Karl


On Feb 27, 2012, at 1:16 AM, Ross Sclafani wrote:


thanks, its just how i do MVC

it really get interesting when you follow a mitosis development
pattern... You start with one model, controller, and view, add
features to each in parallel, and as each class gets too big, you
break them out into subcontrollers, submodels, and subviews. Then
sub-sub. My projects have a triple-tree structure branching out from
the core model, controller, and view classes

finer granularity as you reach further in, and always broken into M,
V, and C:

Models contain properties only. they dispatch a CHANGE Event every
time one of their properties change,.

Views display properties of the model. they listen for the CHANGE
Event, and update their appearance with the new values stored in the
model every time it changes.

Controllers manipulate properties of the model. Whether trigger by
event handlers in the views, or internal timers or network activity,
any command that sets any value of any property of the model is placed
in a controller. Controllers might use other controllers to trigger
changes in submodels outside its subdomain

the project starts off very compact, then grows with its functionality
as required, always growing out from the center so you never paint
yourself into a corner

then later to optimize, you can get specific about which submodel a
particular view is listening to, in turn limiting the number of change
events it receives to those actually represented in the view.

all subcontrollers hold a reference to the root controller, so it is
easy to target any node on the controller tree from anywhere inside of
it.

same with the model tree. some submodel properties can emit the CHANGE
Event only on a local level, and not send the event up the hierarchy,
isolating the scope of view updates

An MVC Example

FLVPlayback is an interesting MVC  component:

it holds a NetStream as a model of the video

it holds a Video as a view of the Video

It acts as controller to set the model in motion by connecting it to a
stream

the ui is also a view of the video: the percent elapsed is represented
n the scrub bar, ther is a play button while paused, a pause button
while playing, then there are the time readouts..

if the video its playing,
the user clicks pause in the view,
it tells the controller to pause the stream in the model, which
notifies the views, so the Video is paused, and  pause button becomes
a play button.

thats how i do MVC.
data is stored in mvc.models,
data is displayed in mvc.views, and
data is manipulated in mvc.controllers.


Ross P. Sclafani
design / technology / creative

http://ross.sclafani.net
http://www.twitter.com/rosssclafani
http://www.linkedin.com/in/rosssclafani
[347] 204.5714

On Feb 26, 2012, at 11:09 PM, Karl DeSaulniers wrote:


BTW Ross, I thought your example was great.

Karl DeSaulniers
Design Drumm
http://designdrumm.com

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders





Re: [Flashcoders] MVC style Correction

2012-03-05 Thread Paul Andrews

That's a lot to follow.

As you show in your example, my views dispatch custom events *with 
payloads*, where required, so if a slider value is changed I might 
dispatch VOLUME_CHANGE with the changed value, or a reference to it.


Controllers need to pickup the events broadcast by the views. I use a 
central policeman controller, and the views dispatch events from that. 
Controllers aren't usually sitting on the display list, so dispatching 
the event from the view would be a problem.


My views dispatch the events off the controller, but have no idea of the 
internals of the controller. Generally my views find the controller and 
model via singletons, not the constructor.


So a view change would be:  Controller.getInstance().dispatchEvent(new 
PayloadEvent(View.VOLUME_CHANGE,{volume:5}));


PayloadEvent is just an event that takes an object payload -  a lazy way 
to do custom events.


The controller knows nothing about the view, really.

Your example has the controller knowing about the view, but my 
controller knows nothing about the views, so the controller listens to 
events being dispatched from itself.


There are so many ways to skin this cat.

Paul

On 05/03/2012 13:00, Cor wrote:

Thanks Paul,

In the documentation I read there is mostly the View telling the Controller
an event has taken place.
The View holds e reference of the Model and the Controller.
Look at :
http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en/devnet/actions
cript/pdfs/ora_as3_design_patterns_ch12.pdf

on page number 429 (is the 11th page of this file)

So I have create this in my Document class like this:

var model:Model = Model.getInstance(); //Singleton
var controller:Controller = new Controller(model);
var view:View = new View(model, controller,
this.stage);
addChild(view);


To check if I understand you correctly, you would do something like this:

var model:Model = Model.getInstance(); //Singleton
var view:View = new View(model,  this.stage);
var controller:Controller = new Controller(model,
view);
addChild(view);

And in the view instance, instead of my way:

private function btn_clickHandler(e:MouseEvent):void {


controller.setValueInModel(arrayButtons.indexOf(e.target));
}

private function btn_clickHandler(e:MouseEvent):void {

myPublicVar = arrayButtons.indexOf(e.target);
dispatchEvent(new Event(View.MY_CUSTOM_EVENT));
}   

Ofcourse the Controller would then have a listener : view.addEventListener(
View.MY_CUSTOM_EVENT, callback_function);

Correct???

Regards
Cor

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Paul Andrews
Sent: maandag 5 maart 2012 13:31
To: Flash Coders List
Subject: Re: [Flashcoders] MVC style Correction

On 05/03/2012 10:26, Cor wrote:

@Karl,

I just created my first MVC and it is still in progress...
Lots of fun!

This video helped me a lot!
http://pv3d.org/2009/02/11/actionscript-3-model-view-controller-mvc/

Unfortuneatly the tutor mentions Controller can update View, but that
example is not included.
If anyone can give me a little example of how that is done in MVC,
don't hasitate. :-)

I don't think the controller should be updating the view. Period. Nor do I
think that the view should be calling methods of the controller class.

One of the main benefits of MVC is separation of concerns. Views shouldn't
care about controllers, controllers should care about views.

My views dispatch events about their changes and the controller listens for
the events, not caring which view dispatched it.
The controller updates the model, and the view listens for changes in the
model.

There are several ways to build the MVC pattern. The video shows one way,
but really it shows a coupling that shouldn't be as tight as it is and the
idea of a controller updating a view, is a no-no.

Sometimes people use a micro-mvc architecture within a view to control it -
no problem about that, but we should keep our MVC components as separate
black boxes.

Paul

best regards
Cor van Dooren
The Netherlands

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Karl
DeSaulniers
Sent: maandag 27 februari 2012 11:19
To: Flash Coders List
Subject: Re: [Flashcoders] MVC style Correction

That actually makes a lot of sense to me and I haven't written one MVC

yet.

Thanks for the break-down!
In relation to what Henrik said about using adaptors, I see the sub
controllers as the adaptors, but they are not actually adaptors, just
sub controllers with targets to the main controller.
Yes?

Best,
Karl


On Feb 27, 2012

Re: [Flashcoders] MVC style Correction

2012-03-05 Thread Paul Andrews
The dependency with this is that any changes to the UI - additional 
views being added or removed, requires that the controller be changed 
too. Any change to a view could cause the controller to become broken.


For this reason, I would say it's bad practice.


On 05/03/2012 13:57, Merrill, Jason wrote:

tutor mentions Controller can update View, but that example is not included.
If anyone can give me a little example of how that is done in MVC, don't 
hasitate

In about the simplest form:


//In the controller:

onSomeEventHandler(event:SomeEvent):void
{
_someViewInstance.update();
}


//In the view:

public function update():void
{
//Do stuff to change the view
}

Hope that helps.


  Jason Merrill
  Instructional Technology Architect II
  Bank of America  Global Learning





___

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com 
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Cor
Sent: Monday, March 05, 2012 5:27 AM
To: 'Flash Coders List'
Subject: RE: [Flashcoders] MVC style Correction

@Karl,

I just created my first MVC and it is still in progress...
Lots of fun!

This video helped me a lot!
http://pv3d.org/2009/02/11/actionscript-3-model-view-controller-mvc/

Unfortuneatly the tutor mentions Controller can update View, but that example 
is not included.
If anyone can give me a little example of how that is done in MVC, don't 
hasitate. :-)

best regards
Cor van Dooren
The Netherlands

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Karl DeSaulniers
Sent: maandag 27 februari 2012 11:19
To: Flash Coders List
Subject: Re: [Flashcoders] MVC style Correction

That actually makes a lot of sense to me and I haven't written one MVC yet.
Thanks for the break-down!
In relation to what Henrik said about using adaptors, I see the sub controllers 
as the adaptors, but they are not actually adaptors, just sub controllers with 
targets to the main controller.
Yes?

Best,
Karl


On Feb 27, 2012, at 1:16 AM, Ross Sclafani wrote:


thanks, its just how i do MVC

it really get interesting when you follow a mitosis development
pattern... You start with one model, controller, and view, add
features to each in parallel, and as each class gets too big, you
break them out into subcontrollers, submodels, and subviews. Then
sub-sub. My projects have a triple-tree structure branching out from
the core model, controller, and view classes

finer granularity as you reach further in, and always broken into M,
V, and C:

Models contain properties only. they dispatch a CHANGE Event every
time one of their properties change,.

Views display properties of the model. they listen for the CHANGE
Event, and update their appearance with the new values stored in the
model every time it changes.

Controllers manipulate properties of the model. Whether trigger by
event handlers in the views, or internal timers or network activity,
any command that sets any value of any property of the model is placed
in a controller. Controllers might use other controllers to trigger
changes in submodels outside its subdomain

the project starts off very compact, then grows with its functionality
as required, always growing out from the center so you never paint
yourself into a corner

then later to optimize, you can get specific about which submodel a
particular view is listening to, in turn limiting the number of change
events it receives to those actually represented in the view.

all subcontrollers hold a reference to the root controller, so it is
easy to target any node on the controller tree from anywhere inside of
it.

same with the model tree. some submodel properties can emit the CHANGE
Event only on a local level, and not send the event up the hierarchy,
isolating the scope of view updates

An MVC Example

FLVPlayback is an interesting MVC  component:

it holds a NetStream as a model of the video

it holds a Video as a view of the Video

It acts as controller to set the model in motion by connecting it to a
stream

the ui is also a view of the video: the percent elapsed is represented
n the scrub bar, ther is a play button while paused, a pause button
while playing, then there are the time readouts..

if the video its playing,
the user clicks pause in the view,
it tells the controller to pause the stream in the model, which
notifies the views, so the Video is paused, and  pause button becomes
a play button.

thats how i do MVC.
data is stored in mvc.models,
data is displayed in mvc.views, and
data is manipulated in mvc.controllers.


Ross P. Sclafani
design / technology / creative

http://ross.sclafani.net
http://www.twitter.com/rosssclafani
http://www.linkedin.com/in/rosssclafani
[347] 204.5714

On Feb 26, 2012, at 11:09 PM, Karl DeSaulniers wrote:


BTW Ross, I thought your example was great.

Karl DeSaulniers
Design Drumm
http://designdrumm.com


Re: [Flashcoders] MVC style Correction

2012-03-05 Thread Paul Andrews

On 05/03/2012 14:13, Merrill, Jason wrote:

It's the simplest form of MVC. I didn't say it was the best, I was just giving 
the man what he asked for. :)
Fair enough, but they do sell cigarettes with a health warning these 
days..  ;-)


  Jason Merrill
  Instructional Technology Architect II
  Bank of America  Global Learning





___


-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com 
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Paul Andrews
Sent: Monday, March 05, 2012 9:11 AM
To: flashcoders@chattyfig.figleaf.com
Subject: Re: [Flashcoders] MVC style Correction

The dependency with this is that any changes to the UI - additional views being 
added or removed, requires that the controller be changed too. Any change to a 
view could cause the controller to become broken.

For this reason, I would say it's bad practice.


On 05/03/2012 13:57, Merrill, Jason wrote:

tutor mentions Controller can update View, but that example is not included.
If anyone can give me a little example of how that is done in MVC,
don't hasitate

In about the simplest form:


//In the controller:

onSomeEventHandler(event:SomeEvent):void
{
_someViewInstance.update();
}


//In the view:

public function update():void
{
//Do stuff to change the view
}

Hope that helps.


   Jason Merrill
   Instructional Technology Architect II
   Bank of America  Global Learning





___

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Cor
Sent: Monday, March 05, 2012 5:27 AM
To: 'Flash Coders List'
Subject: RE: [Flashcoders] MVC style Correction

@Karl,

I just created my first MVC and it is still in progress...
Lots of fun!

This video helped me a lot!
http://pv3d.org/2009/02/11/actionscript-3-model-view-controller-mvc/

Unfortuneatly the tutor mentions Controller can update View, but that example 
is not included.
If anyone can give me a little example of how that is done in MVC,
don't hasitate. :-)

best regards
Cor van Dooren
The Netherlands

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Karl
DeSaulniers
Sent: maandag 27 februari 2012 11:19
To: Flash Coders List
Subject: Re: [Flashcoders] MVC style Correction

That actually makes a lot of sense to me and I haven't written one MVC yet.
Thanks for the break-down!
In relation to what Henrik said about using adaptors, I see the sub controllers 
as the adaptors, but they are not actually adaptors, just sub controllers with 
targets to the main controller.
Yes?

Best,
Karl


On Feb 27, 2012, at 1:16 AM, Ross Sclafani wrote:


thanks, its just how i do MVC

it really get interesting when you follow a mitosis development
pattern... You start with one model, controller, and view, add
features to each in parallel, and as each class gets too big, you
break them out into subcontrollers, submodels, and subviews. Then
sub-sub. My projects have a triple-tree structure branching out from
the core model, controller, and view classes

finer granularity as you reach further in, and always broken into M,
V, and C:

Models contain properties only. they dispatch a CHANGE Event every
time one of their properties change,.

Views display properties of the model. they listen for the CHANGE
Event, and update their appearance with the new values stored in the
model every time it changes.

Controllers manipulate properties of the model. Whether trigger by
event handlers in the views, or internal timers or network activity,
any command that sets any value of any property of the model is
placed in a controller. Controllers might use other controllers to
trigger changes in submodels outside its subdomain

the project starts off very compact, then grows with its
functionality as required, always growing out from the center so you
never paint yourself into a corner

then later to optimize, you can get specific about which submodel a
particular view is listening to, in turn limiting the number of
change events it receives to those actually represented in the view.

all subcontrollers hold a reference to the root controller, so it is
easy to target any node on the controller tree from anywhere inside
of it.

same with the model tree. some submodel properties can emit the
CHANGE Event only on a local level, and not send the event up the
hierarchy, isolating the scope of view updates

An MVC Example

FLVPlayback is an interesting MVC  component:

it holds a NetStream as a model of the video

it holds a Video as a view of the Video

It acts as controller to set the model in motion by connecting it to
a stream

the ui is also a view of the video: the percent elapsed is
represented n the scrub bar, ther is a play button while paused, a
pause button while playing, then there are the time readouts..

if the video its playing,
the user clicks pause

Re: [Flashcoders] MVC style Correction

2012-03-05 Thread Paul Andrews

I think a view can handle it's own rollover without concerning a controller.

A controller is only there to manipulate the model on behlaf of the 
view. It has no interest in visuals.


On 05/03/2012 14:36, Ross Sclafani wrote:

i prefer to have the model update the views.

preferably via event for loose coupling.


the situations that a controller would alter a view  in the versions of MVC i 
have studied are for things that are pure visual responses.

like say a rollover:

ROLL_OVER event on View --  calls onRollOver on controller --  sets highlight 
on View.

Because the Flash SDK provides such a rich display API, I personally avoid this 
and leave any pure view event handling to the View internals to limit the 
public properties of Views.

I could see a scenario where one such rollover needs to cause changes in 
multiple views, and this approach could be implemented, but i would normally 
rout these types updates through a submodel dedicated to UI.

again, I value encapsulation above most other benefits of allowing the 
controller access to view properties, so i follow a standard unidirectional 
triangular flow.


Ross P. Sclafani
design / technology / creative

http://ross.sclafani.net
http://www.twitter.com/rosssclafani
http://www.linkedin.com/in/rosssclafani
[347] 204.5714
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] MVC style Correction

2012-03-05 Thread Paul Andrews

On 05/03/2012 14:43, Merrill, Jason wrote:

Fair enough, but they do sell cigarettes with a health warning these days..  ;-)

Trolling is so 2 years ago. :)


I don't know why you consider the comment trolling.

The OP wanted to know about how to do a technique and it's seems 
reasonable enough to suggest why it would also help them further by 
explaining why the technique is bad.



  Jason Merrill
  Instructional Technology Architect II
  Bank of America  Global Learning





___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] MVC style Correction

2012-03-05 Thread Paul Andrews

On 05/03/2012 14:36, Ross Sclafani wrote:

snip


I could see a scenario where one such rollover needs to cause changes in 
multiple views, and this approach could be implemented, but i would normally 
rout these types updates through a submodel dedicated to UI.



Do you have an example? I've always considered rollovers as direct 
feedback to the user on the element currently in focus. Any

such use across multiple views eludes me for the minute.


Ross P. Sclafani
design / technology / creative

http://ross.sclafani.net
http://www.twitter.com/rosssclafani
http://www.linkedin.com/in/rosssclafani
[347] 204.5714
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] MVC style Correction

2012-03-05 Thread Paul Andrews
I'm guessing we're now into nuancing the model to hold view states and 
the presenter is controlling multiple views, or is that wrong?


On 05/03/2012 15:33, Peter Ginneberge wrote:
The dependency with this is that any changes to the UI - additional 
views being added or removed, requires that the controller be changed 
too. Any change to a view could cause the controller to become broken.


For this reason, I would say it's bad practice.


Not necessarily so.
But.. you'd use an interface, which the view implements.
In which case you'd probably be talking about a Presenter rather than 
a Controller :)


pseudo code:

// PRESENTER
private var view:IView;
public function ViewPresenter(v:IView) {
   view = v;
   // add listeners and whatnot..
}

onSomeEventHandler(event:SomeEvent):void {
   view.update();
}



// VIEW
public class MyView implements IView {
   public function update()(// do stuff);
}



// VIEW INTERFACE
public interface IView {
   public function update();
}

GWT uses this kind of architecture:
http://code.google.com/intl/nl/webtoolkit/articles/mvp-architecture.html
http://code.google.com/intl/nl/webtoolkit/articles/mvp-architecture.html#binding 



http://code.google.com/intl/nl/webtoolkit/articles/mvp-architecture-2.html 



http://www.google.com/intl/nl/events/io/2009/sessions/GoogleWebToolkitBestPractices.html 



So in GWT I usually have:

(only 1) AppController
(several) Presenter + View + Model triads

A view dispatches events to which the presenter listens.
Presenter talks to view via its interface.

View doesn't know the presenter, Presenter doesn't know the view, only 
its interface.


regards,
Muzak

- Original Message - From: Paul Andrews p...@ipauland.com
To: flashcoders@chattyfig.figleaf.com
Sent: Monday, March 05, 2012 3:11 PM
Subject: Re: [Flashcoders] MVC style Correction


The dependency with this is that any changes to the UI - additional 
views being added or removed, requires that the controller be changed 
too. Any change to a view could cause the controller to become broken.


For this reason, I would say it's bad practice.


On 05/03/2012 13:57, Merrill, Jason wrote:
tutor mentions Controller can update View, but that example is not 
included.
If anyone can give me a little example of how that is done in MVC, 
don't hasitate

In about the simplest form:


//In the controller:

onSomeEventHandler(event:SomeEvent):void
{
_someViewInstance.update();
}


//In the view:

public function update():void
{
//Do stuff to change the view
}

Hope that helps.


  Jason Merrill


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] MVC style Correction

2012-03-05 Thread Paul Andrews

On 05/03/2012 16:44, Kevin Newman wrote:

If the model is updating the view,

Not my model. My views listen for model change events.

then it doesn't sound like you have a generic view at all. This can be 
appropriate in certain cases, but if you really want reusable View 
objects (like a generic scrolling text or image list view), they 
should be generic and abstracted from the underlying data sources (the 
model) - and have the data filtered through a data adapter, usually 
associated with the controller (or you can skip the adapter, and just 
bulk convert the entire model list data into generic view data, if 
it'll fit in memory or won't be updated in real time).

I think that you're referring to the OTT pattern, favoured by many.

I try and keep things simple.



In this version of MVC, to answer the original question - the 
controller sets up the view and wires the data source, but doesn't 
necessarily directly update the view (though that's who's job it is).


In iOS these kinds of controllers are actually called view 
controllers - for maybe obvious reasons. :-)


Kevin N.


On 3/5/12 7:31 AM, Paul Andrews wrote:
I don't think the controller should be updating the view. Period. Nor 
do I think that the view should be calling methods of the controller 
class.


One of the main benefits of MVC is separation of concerns. Views 
shouldn't care about controllers, controllers should care about views.


My views dispatch events about their changes and the controller 
listens for the events, not caring which view dispatched it.
The controller updates the model, and the view listens for changes in 
the model.


There are several ways to build the MVC pattern. The video shows one 
way, but really it shows a coupling that shouldn't be as tight as it 
is and the idea of a controller updating a view, is a no-no.


Sometimes people use a micro-mvc architecture within a view to 
control it - no problem about that, but we should keep our MVC 
components as separate black boxes. 


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


[Flashcoders] Algorithm ideas

2012-03-05 Thread Paul Andrews
Lets imagine I have 100 sprites scattered around the stage - no regular 
pattern, but generally spread evenly.


My task is to remove 40 of them. That's easy, but I want to remove them 
as evenly as possible, so the density thins but is reasonably consistent 
across the stage.


Any ideas? I don't know if there is a standard algorithm for this.

Paul


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Algorithm ideas

2012-03-05 Thread Paul Andrews

On 05/03/2012 23:12, Paul Andrews wrote:
Lets imagine I have 100 sprites scattered around the stage - no 
regular pattern, but generally spread evenly.


My task is to remove 40 of them. That's easy, but I want to remove 
them as evenly as possible, so the density thins but is reasonably 
consistent across the stage.


Any ideas? I don't know if there is a standard algorithm for this.


No worries - I worked it out. Should have had some thinking time before 
posting.


Paul


Paul


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] MVC style Correction

2012-02-27 Thread Paul Andrews
I don't think that it makes sense to categorise every class in terms of 
the MVC trinity.


Classes that implement the MVC pattern, sure, but not everything else.

There's no need to put a sound processing class within the view class 
hierachy, even if the view uses it to play audio from the model. It 
would make it harder to see the actual classes involved in implementing 
views. A given class could be used inside a view and also in a controller.



On 27/02/2012 21:19, Mattheis, Erik (MIN-WSW) wrote:

I've been putting all my class files in one of three folders, model, view, 
controller. I'm mostly concerned with making the code as easy to understand as 
possible.

Where would you expect transfer object class - a class that just defines a set 
of values to pass as a group?

Where would you expect a custom event class?

Where would you put a class that reads from and writes to the file system? 
Air.File has methods that produce UI elements. What are benefits/drawbacks to 
writing the extra code to get File.browseForOpen() somewhere in the View?

What about a class that holds string values to display ion dialog boxes, on 
buttons, etc? Is that part of the view or should it be defined in the model?



_ _ _
Erik Mattheis | Weber Shandwick
P: (952) 346.6610
M: (612) 377.2272
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] MVC style Correction

2012-02-25 Thread Paul Andrews

On 24/02/2012 15:15, Merrill, Jason wrote:

Maybe I'm off, but I don't think the controller should manipulate data.

Who is then?


  Jason Merrill
  Instructional Technology Architect II
  Bank of America  Global Learning





___

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com 
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Mattheis, Erik 
(MIN-WSW)
Sent: Thursday, February 23, 2012 8:26 PM
To: Flash Coders List
Subject: Re: [Flashcoders] MVC style Correction

Ross Sclafaniross.sclaf...@gmail.com  wrote:
It is very easy to locate any code in one of my projects by ascertaining the 
domain of the code in question and looking in the appropriate branch.
Does it store data? It's in the model. Does it interpret and display data? Try 
your views. Does it manipulate data? Look in the controller.

This thread has been useful, thanks all. I've a ton of questions regarding 
judgment calls and below I post a class illustrating a few I've struggled with. 
The comments are intended to be my questions/admissions of bafflement. I'm 
unsure where in a MVC this class should go as its main purpose is to work with 
the File class which itself has methods which retrieve 
(File.applicationDirectory), interpret (File.exists) and display 
(File.browseForOpen) data.

The class also is a dreaded example of allowing the view to listen directly to 
the model for events, perhaps only because I've misguidedly decided to make it 
part of the model as it has to do with copying and deleting a SQLite file used 
in the app.

package mvc.model {
  /* saveFileAs() saves a copy of a SQLite DB for the purposes of  transferring 
data to an instance of this app on another  computer.

closeDBAndReplace() = replaces the db file if the user  is importing data.
  */
  import flash.events.EventDispatcher;
  import flash.events.Event;
  import flash.filesystem.File;
  // class Data works with a SQLite DB
  import mvc.model.Data;
  // Where in a MVC should custom event classes  // be located? I wish to pass my own 
objects  // along with events, usually Transfer Objects
  // or a string to be displayed
  import mvc.controller.CustomDataEvent;

  public class ManipulateDBFile extends EventDispatcher {

   private var _data:Data;
   private var _sourceFile:File;
   private var _copyToDirectory:File;

   public function ManipulateDBFile(data:Data) {
_data = data;
   }

   public function saveFileAs() : void {
var docsDir:File = File.desktopDirectory;
// This creates a UI element. I would look for this code in the view!
docsDir.browseForDirectory('Save File in  ...');
// This is asking a UI elemt to inform the Model directly. Big bad no?
docsDir.addEventListener(Event.SELECT, copyFile);
   }

   private function copyFile(e:Event):void  {
_sourceFile = File.applicationStorageDirectory.resolvePath(msgDB.db);
_copyToDirectory = e.target.resolvePath(msgDB.db);
if (_copyToDirectory.exists) {
 // Passing this event through the Controller seems to create complexity,
 // or at least unnecessary lines of code. Is there an advantage gained by
 // communicating to the view through the controller here?
 var evt:CustomDataEvent = new 
CustomDataEvent(CustomDataEvent.FILE_ALREADY_EXISTS);
 dispatchEvent(evt);
}
else {
 replaceFile();
}
   }

   public function replaceFile() : void {
var evt:CustomDataEvent = new 
CustomDataEvent(CustomDataEvent.COPY_COMPLETE);
try {
 _sourceFile.copyTo(_copyToDirectory, true);
 dispatchEvent(evt);
}

catch (error:Error) {
 evt.param = error.message;
 dispatchEvent(evt);
}
_sourceFile = null;
_copyToDirectory = null;
   }

   public function closeDBAndReplace() : void {
// The file cannot be deleted if there is a SQLConnection to it.
// The class that is aware of a possible connection also does the
// deletion. But deleting the file seems to conceptually
// fit into this class better
_data.addEventListener(CustomDataEvent.DRILL_RESET, findFile, false, 0, 
true);
_data.deleteDBFile();

   }

   private function findFile(e:CustomDataEvent) : void {
_data.removeEventListener(CustomDataEvent.DRILL_RESET, findFile, false);
var docsDir:File = File.desktopDirectory;
docsDir.browseForOpen('Select msgDB.db file ...');
docsDir.addEventListener(Event.SELECT, replaceDBFile);
   }

   private function replaceDBFile(e:Event):void  {
var sourceFile:File = e.target as File;
var destination:File = 
File.applicationStorageDirectory.resolvePath(msgDB.db);
try {
 sourceFile.copyTo(destination, true);
 dispatchEvent(new CustomDataEvent(CustomDataEvent.RESTART_REQUIRED));
}
catch (error:Error) {
 trace(Error:, error.message);
}
   }
  }
}

On 2/17/12 6:07 PM, Ross Sclafaniross.sclaf...@gmail.com  wrote:
It is very easy to locate any code in one of my projects by ascertaining the 
domain of the code in 

Re: [Flashcoders] Fwd: MVC

2012-02-16 Thread Paul Andrews

Excellent job.

I have one small point, on a practical level.

For the views, in particular, I don't usually pass arguments to the 
constructor. It's not such a big deal for code-only examples, but in my 
flash world I mix my components between stuff created dynamically and 
things created in the IDE - sometimes I build components as assemblies 
on the stage using the IDE. The point is that passing arguments to the 
constructor then becomes an issue for a view.


Might I suggest an init() function to pass in Model and Controller?

Paul



On 16/02/2012 07:59, Ross Sclafani wrote:

From: Ross Sclafaniross.sclaf...@gmail.com
Date: February 16, 2012 2:39:34 AM EST
To: Corc...@chello.nl
Cc: Flash Coders Listflashcoders@chattyfig.figleaf.com, 
flashcoder...@googlegroups.com
Subject: Re: MVC

feel free to hit me up any time ill try to have time to respong

none the less, this should get you started:

/*
  * Model.as
  *
  * mvc.Model;
  */
package mvc {
import flash.events.EventDispatcher;
import flash.events.Event;
class Model extends EventDispatcher{
private var _count:int = 0;
public function get count():int{
return _count;
}
public function set count(value:int):void{
this._count= value;
update();
}
public function Model(){
super()
}
private function update():void{
this.dispatchEvent(new Event(Event.CHANGE));
}
}
}


/*
  * Controller.as
  *
  * mvc.Controller;
  */
package mvc {
public  class Controller {
private var model:Model;
public function Controller(model:Model){
super()
this.model = model;
}
public function countUp():void{
this.model.count++;
}
}
}

/*
  * View.as
  *
  * mvc.View;
  */
package mvc {
import flash.text.TextField;
import flash.events.Event;
import flash.display.Sprite;
public  class View extends Sprite(){
private var model:Model;
private var controller Controller;
private var textField:TextField = new TextField();
public function View(model:Model, controller:Controller){
model.addEventListener(Event.CHANGE, 
this.model_changeHandler);
super()
this.model = model;
this.controller = controller;
this.addChild(this.textField);
this.stage.addEventListener(MouseEvent.CLICK, 
this.stage_clickHandler)

}
private function stage_clickHandler(event:MouseEvent):void{
this.controller.countUp();
}
private function model_changeHandler(event:Event):void{
this.textField.text = this.model.count
}
}
}
/*
  * App.as
  *
  * MVC screen click counter.
  */
package{
import mvc.Model;
import mvc. View;
import mvc.Controller;
public class App{
private var model:Model = new Model();
private var controller:Controller = new Controller(this.model);
private var view:View = new View(model, controller);
public function App(){
this.addChild(this.view);
}
}
}

Now imagine a Model with more properties.
And tons of different Views of them that data.
Some of which provide a UI linked to Controller methods that manipulate it.

_ross


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Fwd: MVC

2012-02-16 Thread Paul Andrews

On 16/02/2012 10:54, tom rhodes wrote:

traditional vanilla MVC tends to use composition like the example given,
check out robotlegs if you don't like it :) then you inject dependencies
instead of passing them around and everything gets a bit more loosely
coupled...


It's not a question of not liking it - your example is perfect for a 
coded-only solution, slightly less practical when working in a 
mixed-mode with the Flash IDE being involved in view instantiation.




On 16 February 2012 11:46, Paul Andrewsp...@ipauland.com  wrote:


Excellent job.

I have one small point, on a practical level.

For the views, in particular, I don't usually pass arguments to the
constructor. It's not such a big deal for code-only examples, but in my
flash world I mix my components between stuff created dynamically and
things created in the IDE - sometimes I build components as assemblies on
the stage using the IDE. The point is that passing arguments to the
constructor then becomes an issue for a view.

Might I suggest an init() function to pass in Model and Controller?

Paul




On 16/02/2012 07:59, Ross Sclafani wrote:


From: Ross Sclafaniross.sclafani@gmail.**comross.sclaf...@gmail.com
Date: February 16, 2012 2:39:34 AM EST
To: Corc...@chello.nl
Cc: Flash Coders 
Listflashcoders@chattyfig.**figleaf.comflashcoders@chattyfig.figleaf.com,
flashcoder...@googlegroups.com
Subject: Re: MVC

feel free to hit me up any time ill try to have time to respong

none the less, this should get you started:

/*
  * Model.as
  *
  * mvc.Model;
  */
package mvc {
import flash.events.EventDispatcher;
import flash.events.Event;
class Model extends EventDispatcher{
private var _count:int = 0;
public function get count():int{
return _count;
}
public function set count(value:int):void{
this._count= value;
update();
}
public function Model(){
super()
}
private function update():void{
this.dispatchEvent(new Event(Event.CHANGE));
}
}
}


/*
  * Controller.as
  *
  * mvc.Controller;
  */
package mvc {
public  class Controller {
private var model:Model;
public function Controller(model:Model){
super()
this.model = model;
}
public function countUp():void{
this.model.count++;
}
}
}

/*
  * View.as
  *
  * mvc.View;
  */
package mvc {
import flash.text.TextField;
import flash.events.Event;
import flash.display.Sprite;
public  class View extends Sprite(){
private var model:Model;
private var controller Controller;
private var textField:TextField = new TextField();
public function View(model:Model, controller:Controller){
model.addEventListener(Event.**CHANGE,
this.model_changeHandler);
super()
this.model = model;
this.controller = controller;
this.addChild(this.textField);
this.stage.addEventListener(**MouseEvent.CLICK,
this.stage_clickHandler)

}
private function stage_clickHandler(event:**
MouseEvent):void{
this.controller.countUp();
}
private function model_changeHandler(event:**Event):void{
this.textField.text = this.model.count
}
}
}
/*
  * App.as
  *
  * MVC screen click counter.
  */
package{
import mvc.Model;
import mvc. View;
import mvc.Controller;
public class App{
private var model:Model = new Model();
private var controller:Controller = new
Controller(this.model);
private var view:View = new View(model, controller);
public function App(){
this.addChild(this.view);
}
}
}

Now imagine a Model with more properties.
And tons of different Views of them that data.
Some of which provide a UI linked to Controller methods that manipulate
it.

_ross


__**_
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.**comFlashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/**mailman/listinfo/flashcodershttp://chattyfig.figleaf.com/mailman/listinfo/flashcoders



__**_
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.**comFlashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/**mailman/listinfo/flashcodershttp://chattyfig.figleaf.com/mailman/listinfo/flashcoders



Re: [Flashcoders] Fwd: MVC

2012-02-16 Thread Paul Andrews

On 16/02/2012 11:11, Paul Andrews wrote:

On 16/02/2012 10:54, tom rhodes wrote:

traditional vanilla MVC tends to use composition like the example given,
check out robotlegs if you don't like it :) then you inject dependencies
instead of passing them around and everything gets a bit more loosely
coupled...


It's not a question of not liking it - your example is perfect for a 
coded-only solution, slightly less practical when working in a 
mixed-mode with the Flash IDE being involved in view instantiation.


I should say Tom's example..





On 16 February 2012 11:46, Paul Andrewsp...@ipauland.com  wrote:


Excellent job.

I have one small point, on a practical level.

For the views, in particular, I don't usually pass arguments to the
constructor. It's not such a big deal for code-only examples, but in my
flash world I mix my components between stuff created dynamically and
things created in the IDE - sometimes I build components as 
assemblies on

the stage using the IDE. The point is that passing arguments to the
constructor then becomes an issue for a view.

Might I suggest an init() function to pass in Model and Controller?

Paul




On 16/02/2012 07:59, Ross Sclafani wrote:

From: Ross 
Sclafaniross.sclafani@gmail.**comross.sclaf...@gmail.com

Date: February 16, 2012 2:39:34 AM EST
To: Corc...@chello.nl
Cc: Flash Coders 
Listflashcoders@chattyfig.**figleaf.comflashcoders@chattyfig.figleaf.com,

flashcoder...@googlegroups.com
Subject: Re: MVC

feel free to hit me up any time ill try to have time to respong

none the less, this should get you started:

/*
  * Model.as
  *
  * mvc.Model;
  */
package mvc {
import flash.events.EventDispatcher;
import flash.events.Event;
class Model extends EventDispatcher{
private var _count:int = 0;
public function get count():int{
return _count;
}
public function set count(value:int):void{
this._count= value;
update();
}
public function Model(){
super()
}
private function update():void{
this.dispatchEvent(new Event(Event.CHANGE));
}
}
}


/*
  * Controller.as
  *
  * mvc.Controller;
  */
package mvc {
public  class Controller {
private var model:Model;
public function Controller(model:Model){
super()
this.model = model;
}
public function countUp():void{
this.model.count++;
}
}
}

/*
  * View.as
  *
  * mvc.View;
  */
package mvc {
import flash.text.TextField;
import flash.events.Event;
import flash.display.Sprite;
public  class View extends Sprite(){
private var model:Model;
private var controller Controller;
private var textField:TextField = new TextField();
public function View(model:Model, 
controller:Controller){

model.addEventListener(Event.**CHANGE,
this.model_changeHandler);
super()
this.model = model;
this.controller = controller;
this.addChild(this.textField);

this.stage.addEventListener(**MouseEvent.CLICK,

this.stage_clickHandler)

}
private function stage_clickHandler(event:**
MouseEvent):void{
this.controller.countUp();
}
private function 
model_changeHandler(event:**Event):void{

this.textField.text = this.model.count
}
}
}
/*
  * App.as
  *
  * MVC screen click counter.
  */
package{
import mvc.Model;
import mvc. View;
import mvc.Controller;
public class App{
private var model:Model = new Model();
private var controller:Controller = new
Controller(this.model);
private var view:View = new View(model, controller);
public function App(){
this.addChild(this.view);
}
}
}

Now imagine a Model with more properties.
And tons of different Views of them that data.
Some of which provide a UI linked to Controller methods that 
manipulate

it.

_ross


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Fwd: MVC

2012-02-16 Thread Paul Andrews

On 16/02/2012 12:04, tom rhodes wrote:

um, Ross gave it i think dude.

Yes, I posted a correction..


i didn't give any code examples :)

maybe you missed the smiley after i said if you don't like it, perhaps
shoudl have been a ;). what problems do you have using assets mad ein the
IDE with mvc?
Ross' example passed the model and controller via the constructor. If 
you build a view using the IDE and leave things sitting inside a MC or 
the stage, you won't be calling the constructor, the IDE will write code 
to instantiate those components for you, so passing the arguments can be 
a problem.


There's also a school of thought that initialisation is best done in a 
separate function separately to the constructor, so that an instance can 
be re-initialised multiple times. That's more about OO than MVC.


Ross' example is superb. My small point is made for anyone coming new to 
OO programing and trying to marry the two worlds of the timeline/code 
development with MVC.


Ross' example for the view would be like this (allowing the IDE to 
instantiate and the user to hook up the model and controller):


public function View(model:Model=null, 
controller:Controller=null){
super();
if ( model != null){
init(model, controller);
}
}

public function init(model:Model, controller:Controller){
model.addEventListener(Event.CHANGE, 
this.model_changeHandler);
this.model = model;
this.controller = controller;
this.addChild(this.textField);
this.stage.addEventListener(MouseEvent.CLICK, 
this.stage_clickHandler)
}

I definitely agree that Ross' example is the most succinct MVC example I've 
ever seen.

Top job.




On 16 February 2012 12:21, Paul Andrewsp...@ipauland.com  wrote:


On 16/02/2012 11:11, Paul Andrews wrote:


On 16/02/2012 10:54, tom rhodes wrote:


traditional vanilla MVC tends to use composition like the example given,
check out robotlegs if you don't like it :) then you inject dependencies
instead of passing them around and everything gets a bit more loosely
coupled...


It's not a question of not liking it - your example is perfect for a
coded-only solution, slightly less practical when working in a mixed-mode
with the Flash IDE being involved in view instantiation.


I should say Tom's example..




On 16 February 2012 11:46, Paul Andrewsp...@ipauland.com   wrote:

  Excellent job.

I have one small point, on a practical level.

For the views, in particular, I don't usually pass arguments to the
constructor. It's not such a big deal for code-only examples, but in my
flash world I mix my components between stuff created dynamically and
things created in the IDE - sometimes I build components as assemblies
on
the stage using the IDE. The point is that passing arguments to the
constructor then becomes an issue for a view.

Might I suggest an init() function to pass in Model and Controller?

Paul




On 16/02/2012 07:59, Ross Sclafani wrote:

  From: Ross Sclafaniross.sclafani@gmail.com

ross.sclaf...@gmail.com
Date: February 16, 2012 2:39:34 AM EST
To: Corc...@chello.nl
Cc: Flash Coders Listflashcoders@chattyfig.**f**igleaf.comhttp://figleaf.com
flashcoders@**chattyfig.figleaf.comflashcoders@chattyfig.figleaf.com

,

flashcoder...@googlegroups.com
Subject: Re: MVC

feel free to hit me up any time ill try to have time to respong

none the less, this should get you started:

/*
  * Model.as
  *
  * mvc.Model;
  */
package mvc {
import flash.events.EventDispatcher;
import flash.events.Event;
class Model extends EventDispatcher{
private var _count:int = 0;
public function get count():int{
return _count;
}
public function set count(value:int):void{
this._count= value;
update();
}
public function Model(){
super()
}
private function update():void{
this.dispatchEvent(new Event(Event.CHANGE));
}
}
}


/*
  * Controller.as
  *
  * mvc.Controller;
  */
package mvc {
public  class Controller {
private var model:Model;
public function Controller(model:Model){
super()
this.model = model;
}
public function countUp():void{
this.model.count++;
}
}
}

/*
  * View.as
  *
  * mvc.View;
  */
package mvc {
import flash.text.TextField;
import flash.events.Event;
import flash.display.Sprite;
public  class View extends Sprite(){
private var

Re: [Flashcoders] Large Images with Alpha Channel

2012-02-14 Thread Paul Andrews

On 11/02/2012 05:43, Ben Sand wrote:

I'm working on a game with some large images (up to 4k x 4k)
I might look at paging images that size - I guess they're backgrounds of 
some sort?


For the transparency, I'd probably look at creating a shape to act as a 
mask, then you can create a MC or sprite which will have the correct 
transparency, but you won't need a transparent file format.


Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Large Images with Alpha Channel

2012-02-14 Thread Paul Andrews

On 14/02/2012 22:01, Ben Sand wrote:

On 14 February 2012 21:17, Paul Andrewsp...@ipauland.com  wrote:


On 11/02/2012 05:43, Ben Sand wrote:


I'm working on a game with some large images (up to 4k x 4k)


I might look at paging images that size - I guess they're backgrounds of
some sort?


Yes, backgrounds that will be panned and zoomed

What do you mean by paging them? breaking them into pieces? we are planning
on doing that so we can hide the portions that are off the stage and
improve performance.'
Instead of handling one big image, you can handle them in sections, so 
you only manipulate what can be seen - you could divide the  images 
into  strips, or squares - you only display what can be seen and you 
only fetch what is about to be seen.





For the transparency, I'd probably look at creating a shape to act as a
mask, then you can create a MC or sprite which will have the correct
transparency, but you won't need a transparent file format.


what do you mean by MC?

MovieClip (or perhaps a Sprite)

will this allow for anti-aliased edges (ie. an alpha gradient)? If the
images are moving relative to one another, will there be much of a
performance overhead, or does the resulting masked image get processed just
once, rather than on every draw.
You can cache the clips as bitmaps. I think you need to do some 
experiments and google some techniques for dealing with large images and 
flash bitmap caching.







Paul

__**_
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.**comFlashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/**mailman/listinfo/flashcodershttp://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] PDF files in Flash

2012-02-12 Thread Paul Andrews

On 12/02/2012 15:02, Dave Watts wrote:

Has anyone heard of or has done this before?

I have a client that wants a Flash app and one of the requirements is to be 
able to pull PDF's into the interface. There
are some 80 different PDFs and he use to have a app built in Director using the 
PDF Xtra from Integration. I loves the
application and wants to make in Flash now, but can't find any info on the web 
about PDF's inside of Flash.

Any ideas or suggestions?

I don't remember exactly how this is done, but I know it's doable -
the LiveCycle Workspace is a Flex application that does exactly this.
It may open an HTML page to do it, though, I'm not sure.


Sounds like some javascript plus an iframe, perhaps.


Dave Watts, CTO, Fig Leaf Software
http://www.figleaf.com/
http://training.figleaf.com/

Fig Leaf Software is a Veteran-Owned Small Business (VOSB) on
GSA Schedule, and provides the highest caliber vendor-authorized
instruction at our training centers, online, or onsite.
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Stability of flash debug plugin

2012-02-10 Thread Paul Andrews

Thanks for the tips. FF10 does seem better!

On 07/02/2012 17:55, Dennis Ernst wrote:
It's been pretty bad.  FF 10 seems to have improved the situation.   
To debug you have to think in short spurts or disable/lengthen the 
timeout on the plugin-container.   See 
https://developer.mozilla.org/en/Plugins/Out_of_process_plugins/The_plugin_hang_detector


Dennis


I'm running the flash debug player - 11.1.102.55, usually on FF.

It seems particularly prone to crashing when it comes across an error.

It often dies whilst remote debugging. Anyone else see this?


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Updating to 10.3 or 11 External player in cs5.5?

2012-02-08 Thread Paul Andrews

On 08/02/2012 18:38, Steven Hargrove wrote:

Hi all,

I've configured my cs5.5 IDE to compile to FP 10.3  11. The problem is,
when I test movie and run my SWF in the External test player - its still
using 10.2. It compiles the SWF to the proper version, but it just makes it
more difficult to test.

Is there any way to fix this?

Have you installed the FP11 debug player?

If not, download and install it!



Thanks,
Steve
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Updating to 10.3 or 11 External player in cs5.5?

2012-02-08 Thread Paul Andrews

On 08/02/2012 22:44, Peter Ginneberge wrote:

Cos then you're not really debugging.
In order to get trace output you'd have to start a Remote Debug Session.

So instead of just doing CTRL+Enter you'd have to:

- Publish (ALT+SHIFT+F12)
- start Remote Debug Session (no shortcut)
- switch to browser and hit F5

It's certainly doable, but a real PITA if you're doing extensive 
testing/debugging.


It's not so bad. A lot of my stuff won't work any other way.



Might be easier switching to Flash Builder..

I just tested hooking up FlashBuilder to an fla and can debug in FP 11 :)

In FB:
   File  New Flash Professional Project.
   Point to the target Flash .fla file

In the Flash Builder preferences, under FlashBuilder - Debug, specify 
the path to the Standalone Debug player to be used for debugging.
In my case that is: C:\Program Files (x86)\Adobe\Adobe Flash Builder 
4.5\player\win\11.1\FlashPlayerDebugger.exe


I also had to add the playerglobal.swc to to project's classpath.
Once that's done, you're all set.. hit CTRL+SHIFT+ENTER and off you go.

Same fla as previous post now has this output (in Flash IDE):

Attempting to launch and connect to Player using URL 
C:\Users\Peter\Desktop\fp-test.swf

[SWF] C:\Users\Peter\Desktop\fp-test.swf - 2247 bytes after decompression
WIN 11,1,102,55

regards,
Peter

- Original Message - From: Chris Foster 
cfos...@catalystinteractive.com.au

To: Flash Coders List flashcoders@chattyfig.figleaf.com
Sent: Wednesday, February 08, 2012 10:36 PM
Subject: RE: [Flashcoders] Updating to 10.3 or 11 External player in 
cs5.5?




Maybe I'm missing something here - what is stopping you from keeping
your SWF open in a browser window (with the debug Player of your choice)
and simply hitting F5 after you've republished?

C:




___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


[Flashcoders] Stability of flash debug plugin

2012-02-07 Thread Paul Andrews

I'm running the flash debug player - 11.1.102.55, usually on FF.

It seems particularly prone to crashing when it comes across an error.

It often dies whilst remote debugging. Anyone else see this?
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] nextFrame doesn't work

2011-11-14 Thread Paul Andrews

On 14/11/2011 09:19, Karl DeSaulniers wrote:

Any luck with children?


Well currently I'm restructuring the game to reduce the nesting and that 
solves the problem. There are twelve drag and drop targets and I've done 
two of them and for those, problem solved.


I'm putting it down to being one of those things.



Try this code on your container MC. The first level (not the three 
deep). It may help you see the target it and possibly control it.


for (var i:uint = 0; i  target_mc.numChildren; i++){
trace ('\t|\t ' +i+'.\t name:' + target_mc.getChildAt(i).name + 
'\t type:' + typeof (target_mc.getChildAt(i))+ '\t' + 
target_mc.getChildAt(i));

}

grabbed it from here: 
http://www.matthijskamstra.nl/blog/index.php/2008/04/30/as2-to-as3-get-all-objects-in-a-movieclip/

Or is this something you've tried already?
Thanks for the suggestion Karl. The mc contained components on seperate 
frames - the code above would let me access all children, but only of 
the current frame. My problem was an inability to change frame.


Paul


HTH,

Best,
Karl


On Nov 14, 2011, at 3:08 AM, Paul Andrews wrote:


On 14/11/2011 09:00, Karl DeSaulniers wrote:

Hi Paul,
Can you tell it instead of nextFrame to advance currentFrame+1?

Yes, this was the original way of doing it.

I have used currentFrame+1, specific frame number, frame label, 
inside enterframe event, outside enterframe event.


The first drag and drop in the app and the code works.
The second drag and drop and the frame won't advance. Apart from the 
frame not advancing the traces are exactly the same. The MC is nested 
three deep.


I am currently changing this stuff to reduce the nesting.


Paul



IE:
My AS3 is very rusty, so I may be corrected..

targetMC.addEventListener(Event.ENTER_FRAME, frameNumber); // or 
Event.DRAG ?? (Guessing on that one)

function frameNumber(evt:Event):void {
   targetMC.gotoAndStop(this.currentFrame+1); // or gotoAndPlay(
}

Or, maybe throw in a targetMC.stop(); before calling 
targetMC.nextFrame(); as an alternate option.
Might create a pseudo reset that will allow the nextFrame() to 
function in the whole dynamics of your dilemma.


JAT

HTH,
Karl

On Nov 13, 2011, at 9:15 PM, Paul Andrews wrote:

Well, of course nextFrame works, but only the first time around in 
an app I've been asked to look at (not my app).


In this AS3 app targetting FP9, we have a bunch of nested 
movieclips. Interaction with the app involves dragging and dropping 
a movieclip to the right target then paging through a number of 
frames, one at a time,  in a nested movieclip using gotoAndStop().


Essentially it's a quiz kind of thing - drag the movieclip over the 
correct target selects the correct movieclip to display and then a 
button is used to page through the frames of the chosen movieclip.


It works beautifully for the first choice. After the next drag and 
drop, the chosen movieclip is left showing frame 1. Perfect. Click 
on the button, advance to frame 2, that's all that's required, but 
it won't move to frame 2.


I have investigated targeting the wrong MC in some way and using 
enterframe events to move the movieclip along, but it won't budge. 
totalFrames for the movieclip is greater than 1. There are no 
errors. Code works fine until the second drag and drop. As far as I 
can tell I'm just trying to tell a movieclip that has two frames to 
move to frame 2. Traces tell me it's on frame 1 and following a 
call to gotoAndStop(2) it reports being in frame 1, but never 
traces being in Frame 2.


It sounds absolutely crazy, I know. I can't share the code, nor 
make an example.


Any thoughts before I change the way this thing has been written to 
simplify what it's doing? changing the target to FP10 made no 
difference.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Karl DeSaulniers
Design Drumm
http://designdrumm.com

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Karl DeSaulniers
Design Drumm
http://designdrumm.com

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


[Flashcoders] Tween

2011-11-07 Thread Paul Andrews
I'm just thinking about the best way to do this (OK, the laziest way to 
do this).


I have a MC at point A and want to tween it to point B. OK, no problem. 
But really, I don't want my MC to move in a straight line, I want it to 
oscillate - I guess as a damped (attenuated at both ends) sine curve 
along the path between A and B.


Before I start hurting my brain, any ready made solutions out there?

Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] animation memory leak ... please help

2011-10-18 Thread Paul Andrews

On 18/10/2011 21:46, Chris Foster wrote:

If you're already manually removing event listeners and deleting created 
objects, and you really wanna nail this and don't mind spending a few hours 
learning something new then I totally recommend the Temple Library for 
ActionScript 3 by MediaMonks


The OP is using AS2..



http://code.google.com/p/templelibrary/

Extend all your MovieClips from 'CoreMovieClip', utilise the 'destruct' method, 
and view/test the results in the 'Memory' class.

It's saved my bacon, hope it's useful to you too.

C:

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com 
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of [p e r c e p t 
i c o n]
Sent: Wednesday, 19 October 2011 7:31 AM
To: Flash Coders List
Subject: Re: [Flashcoders] animation memory leak ... please help

yes, i delete it and mark it null..

thx all

On Tue, Oct 18, 2011 at 1:13 PM, Ross Sclafaniross.sclaf...@gmail.comwrote:


Are you disposing of the image after it is offscreen? Have you run the
profiler to see what's happening?

Ross P. Sclafani
Design | Technology | Creative
347.204.5714
http://ross.sclafani.net
http://www.twitter.com/rosssclafani

On Oct 18, 2011, at 4:00 PM, Adrian Zajączajac.adr...@gmail.com  wrote:


I think I had this problem once...
How many of images do you have? Maybe it will be better to make the same

number of movie clips, and download every jpg only once?


Adrian

W dniu 2011-10-18 20:39, [p e r c e p t i c o n] pisze:

Hi All,

I have an excrutiating memory leak.  Here's what i'm doing.

first some specs:

AS2, FP10+, Linux OS, ff browser

I load a jpg into one of two movie clips...once a specified amount of

time

has expired
i load the next image (download it using moviclip loader) and animate

the

visible movieclip off stage (slide it to the left or right) and at the

same

time i animate it
i also fade it (mc._alpha -= mc._alpha-someAmount).
i swap their depths and repeat this process.

what i'd like to know is why after so many hours (8-24) flash starts

slowing

down and ultimately throws up the abort script dialog when i'm not

really

doing anything all that intensive..
can someone explain how flash handles animations internally for

example...it

creates a copy of the image in memory..moves it then blits it the

screen.

can anyone give me some pointers as to where to begin looking for this

leak

or if you think this is flash player bug

all advise helpful

thanks

percy





___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders






___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] E4X XML manipulation

2011-10-16 Thread Paul Andrews

On 16/10/2011 10:06, Kenneth Kawamoto wrote:

Here's one way:

var xml:XML = my_xml
row id=a parent=a /
row id=b parent=a /
row id=c parent=a /

row id=d parent=d /
row id=e parent=d /
row id=f parent=d /
/my_xml;

var ids:Array = [a, d];
for each (var s:String in ids){
xml.row.(@id == s).children = xml.row.(@parent == s  @id != s);
while(xml.row.(@parent == s  @id != s).length()) delete 
xml.row.(@parent == s  @id != s)[0];

}

trace(xml);


Thanks Kenneth. That works very nicely. I appreciate you taking the time 
to do my little puzzle!


I made one change:

for each (var s:String in xml.row.(@id == @parent).@id){
xml.row.(@id == s).children = xml.row.(@parent == s  @id != s);
while(xml.row.(@parent == s  @id != s).length()) delete 
xml.row.(@parent == s  @id != s)[0];

}

Thank you!

Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] E4X XML manipulation

2011-10-16 Thread Paul Andrews

On 16/10/2011 13:01, Paul Andrews wrote:

On 16/10/2011 10:06, Kenneth Kawamoto wrote:

Here's one way:

var xml:XML = my_xml
row id=a parent=a /
row id=b parent=a /
row id=c parent=a /

row id=d parent=d /
row id=e parent=d /
row id=f parent=d /
/my_xml;

var ids:Array = [a, d];
for each (var s:String in ids){
xml.row.(@id == s).children = xml.row.(@parent == s  @id != s);
while(xml.row.(@parent == s  @id != s).length()) delete 
xml.row.(@parent == s  @id != s)[0];

}

trace(xml);


Thanks Kenneth. That works very nicely. I appreciate you taking the 
time to do my little puzzle!


I made one change:

for each (var s:String in xml.row.(@id == @parent).@id){
xml.row.(@id == s).children = xml.row.(@parent == s  @id != s);
while(xml.row.(@parent == s  @id != s).length()) delete 
xml.row.(@parent == s  @id != s)[0];

}

Thank you!


Ah, I went one stage further, which breaks the necessity for the parent 
to have @id == @parent:


var xml:XML = my_xml
row id=a parent=a /
row id=b parent=a /
row id=c parent=a /

row id=d parent=d /
row id=e parent=d /
row id=f parent=d /

row id=g parent=e /
row id=h parent=e /
row id=i parent=h /
/my_xml;

Scratching my head again..  !




Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] E4X XML manipulation

2011-10-16 Thread Paul Andrews

On 16/10/2011 14:16, Kenneth Kawamoto wrote:

It's getting rather interesting :D

var xml:XML = my_xml
row id=a parent=a /
row id=b parent=a /
row id=c parent=a /

row id=d parent=d /
row id=e parent=d /
row id=f parent=d /

row id=g parent=e /
row id=h parent=e /
row id=i parent=h /
/my_xml;

for each (var row:XML in xml.row){
if(row.@id != row.@parent){
xml..row.(@id == row.@parent).appendChild(row.copy());
delete xml.row.(@id == row.@id)[0];
}
}

trace(xml);


Excellent Kenneth - thank you.

I managed to construct the tree, but couldn't remove the old rows. Good job.

I think that does it - no more complications!

Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] E4X XML manipulation

2011-10-14 Thread Paul Andrews

On 12/10/2011 21:49, Kenneth Kawamoto wrote:

Not sure if this is the best way but you can do:

var xml:XML = my_xml
row id=a /
row id=b /
row id=c /
/my_xml;

xml.row.(@id == a).children = xml.row.(@id != a);
xml.setChildren(xml.row.(@id == a));

trace(xml);

// trace
my_xml
row id=a
row id=b/
row id=c/
/row
/my_xml

Kenneth Kawamoto
http://www.materiaprima.co.uk/


Thanks - that works well and I hadn't considered using setChildren. It's 
a great solution that shows my simplification was too simple!


If I have

my_xml
row id=a parent=a /
row id=b parent=a /
row id=c parent=a /

row id=d parent=d /
row id=e parent=d /
row id=f parent=d /
/my_xml

but want

my_xml
row id=a parent=a
row id=b parent=a/
row id=c parent=a/
/row
row id=d parent=d
row id=e parent=d/
row id=f parent=d/
/row
/my_xml

then it's closer to the real-life scenario and a bit harder.

Thanks for the solution.

Paul







On 11/10/2011 14:53, Paul Andrews wrote:

What's the best way to turn

this:

myXMLNode =
my_xml
 row id=a /
 row id=b /
 row id=c /
/my_xml;

into:

my_xml
 row id=a
 row id=b /
 row id=c /
/row
/my_xml

Using some E4X?

It's not so much a case of adding b and c as children of a, but of
removing them so I don't end up with:

my_xml
 row id=a
 row id=b /
 row id=c /
/row
 row id=b /
 row id=c /
/my_xml

Paul




___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] E4X XML manipulation

2011-10-12 Thread Paul Andrews

On 11/10/2011 17:13, Glen Pike wrote:


Hi,

You would have to:

1 Create a new XML node,

myNewNode = my_xml/

2.  Select nodes from the existing XML where id != a

var nodes:XMLList = my_xml.child(row).attribute(id != a);

3.  Select nodes from existing XML where id = a

var parentNodes:XMLList = my_xml.child(row).attribute(id != 
a);


4.  Conditionally, Append result of 3 to your new node.

var parent:XML;
if(0 != parentNodes.length()) {
parent = myNewNode.appendChild(parentNodes[0]);
}

5.  Append result of 2 to your new node id=a

if(parent) {
for each(var node:XML in nodes) {
parent.appendChild(node);
}
}

This is untested, so please try and see how you get on.

There may be a neater way, but I found deleting nodes based on e4x 
results sometimes problematic...


Thanks Glenn. My example was really all about the problematic deleting 
bit! In real life I was manipulating some XML with 1500 nodes, 
incorrectly nested. I could copy the nodes into the correct place but 
not remove them from where they originally started from.


In the context of the example I started with:

myXMLNode =
my_xml
row id=a /
row id=b /
row id=c /
/my_xml;

ended up with:

my_xml
row id=a
row id=b /
row id=c /
/row
row id=b /
row id=c /
/my_xml

instead of :

my_xml
row id=a
row id=b /
row id=c /
/row
/my_xml

I couldn't figure an easy way to reference the tailing b and c rows 
that I had left behind in order to remove them from their parent.


What I really wanted to do was delete  row.(@id==b).

I should say that a better representation of what I wanted to do (just 
using e4X) is this:


Make

my_xml
row id=a parent=a /
row id=b parent=a /
row id=c parent=a /
/my_xml

into:

my_xml
row id=a parent=a
row id=b parent=a/
row id=c parent=a/
/row
/my_xml


as you say deletion was the problem.


Paul



Hope this helps.

Glen

On 11/10/2011 16:54, Paul Andrews wrote:

On 11/10/2011 16:33, Merrill, Jason wrote:

  row id=c /
/row

And

  row id=c /
/row


Are not valid XML.  Therefore, I'm not clear on what you want to do. :)

Hmm..

myXMLNode =
my_xml
row id=a /
row id=b /
row id=c /
/my_xml;

into:

my_xml
row id=a
row id=b /
row id=c /
/row
/my_xml

I didn't realise the space was there - not intended- too much going 
on at once!





  Jason Merrill
  Instructional Technology Architect II
  Bank of America  Global Learning





___

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com 
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Paul 
Andrews

Sent: Tuesday, October 11, 2011 9:53 AM
To: flashcoders@chattyfig.figleaf.com
Subject: [Flashcoders] E4X XML manipulation

What's the best way to turn

this:

myXMLNode =
my_xml
  row id=a /
  row id=b /
  row id=c /
/my_xml;

into:

my_xml
  row id=a
  row id=b /
  row id=c /
/row
/my_xml

Using some E4X?

It's not so much a case of adding b and c as children of a, but of 
removing them so I don't end up with:


my_xml
  row id=a
  row id=b /
  row id=c /
/row
  row id=b /
  row id=c /
/my_xml

Paul



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

--
This message w/attachments (message) is intended solely for the use 
of the intended recipient(s) and may contain information that is 
privileged, confidential or proprietary. If you are not an intended 
recipient, please notify the sender, and then please delete and 
destroy all copies and attachments, and be advised that any review 
or dissemination of, or the taking of any action in reliance on, the 
information contained in or attached to this message is prohibited.
Unless specifically indicated, this message is not an offer to sell 
or a solicitation of any investment products or other financial 
product or service, an official confirmation of any transaction, or 
an official statement of Sender. Subject to applicable law, Sender 
may intercept, monitor, review and retain e-communications (EC) 
traveling through its networks/systems and may produce any such EC 
to regulators, law enforcement, in litigation and as required by law.
The laws of the country of each sender/recipient may impact the 
handling of EC, and EC may be archived, supervised and produced in 
countries other than the country in which you are located. This 
message cannot be guaranteed to be secure or free of errors or viruses.


References to Sender are references to any subsidiary of Bank of 
America Corporation. Securities and Insurance Products: * Are Not 
FDIC Insured * Are Not Bank Guaranteed * May Lose Value * Are Not a 
Bank Deposit * Are Not a Condition to Any Banking Service or 
Activity * Are Not Insured by Any Federal Government Agency. 
Attachments that are part of this EC may have additional

[Flashcoders] E4X XML manipulation

2011-10-11 Thread Paul Andrews

What's the best way to turn

this:

myXMLNode =
my_xml
 row id=a /
 row id=b /
 row id=c /
/my_xml;

into:

my_xml
 row id=a
 row id=b /
 row id=c /
/row
/my_xml

Using some E4X?

It's not so much a case of adding b and c as children of a, but of 
removing them so I don't end up with:


my_xml
 row id=a
 row id=b /
 row id=c /
/row
 row id=b /
 row id=c /
/my_xml

Paul



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] E4X XML manipulation

2011-10-11 Thread Paul Andrews

On 11/10/2011 16:33, Merrill, Jason wrote:

  row id=c /
/row

And

  row id=c /
/row


Are not valid XML.  Therefore, I'm not clear on what you want to do. :)

Hmm..

myXMLNode =
my_xml
row id=a /
row id=b /
row id=c /
/my_xml;

into:

my_xml
row id=a
row id=b /
row id=c /
/row
/my_xml

I didn't realise the space was there - not intended- too much going on at once!




  Jason Merrill
  Instructional Technology Architect II
  Bank of America  Global Learning





___

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com 
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Paul Andrews
Sent: Tuesday, October 11, 2011 9:53 AM
To: flashcoders@chattyfig.figleaf.com
Subject: [Flashcoders] E4X XML manipulation

What's the best way to turn

this:

myXMLNode =
my_xml
  row id=a /
  row id=b /
  row id=c /
/my_xml;

into:

my_xml
  row id=a
  row id=b /
  row id=c /
/row
/my_xml

Using some E4X?

It's not so much a case of adding b and c as children of a, but of removing 
them so I don't end up with:

my_xml
  row id=a
  row id=b /
  row id=c /
/row
  row id=b /
  row id=c /
/my_xml

Paul



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

--
This message w/attachments (message) is intended solely for the use of the 
intended recipient(s) and may contain information that is privileged, 
confidential or proprietary. If you are not an intended recipient, please 
notify the sender, and then please delete and destroy all copies and 
attachments, and be advised that any review or dissemination of, or the taking 
of any action in reliance on, the information contained in or attached to this 
message is prohibited.
Unless specifically indicated, this message is not an offer to sell or a 
solicitation of any investment products or other financial product or service, 
an official confirmation of any transaction, or an official statement of 
Sender. Subject to applicable law, Sender may intercept, monitor, review and 
retain e-communications (EC) traveling through its networks/systems and may 
produce any such EC to regulators, law enforcement, in litigation and as 
required by law.
The laws of the country of each sender/recipient may impact the handling of EC, 
and EC may be archived, supervised and produced in countries other than the 
country in which you are located. This message cannot be guaranteed to be 
secure or free of errors or viruses.

References to Sender are references to any subsidiary of Bank of America 
Corporation. Securities and Insurance Products: * Are Not FDIC Insured * Are Not Bank 
Guaranteed * May Lose Value * Are Not a Bank Deposit * Are Not a Condition to Any Banking 
Service or Activity * Are Not Insured by Any Federal Government Agency. Attachments that 
are part of this EC may have additional important disclosures and disclaimers, which you 
should read. This message is subject to terms available at the following link:
http://www.bankofamerica.com/emaildisclaimer. By messaging with Sender you 
consent to the foregoing.
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] E4X XML manipulation

2011-10-11 Thread Paul Andrews

On 11/10/2011 17:21, Merrill, Jason wrote:

This, what you are saying you want to turn it into:

row id=c /
/row

That actually is valid, sorry, but you just want to have any empty node in 
there?  Check out this thread:

http://www.kirupa.com/forum/showthread.php?318159-AS3-XML-How-to-add-element-nodes


Jason it's an example, not a real scenario. Thanks for the link. Adding 
nodes is easy, as is copying them, but removing them once they've been 
copied has defeated me.


Paul



  Jason Merrill
  Instructional Technology Architect II
  Bank of America  Global Learning





___


-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com 
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Paul Andrews
Sent: Tuesday, October 11, 2011 11:54 AM
To: Flash Coders List
Subject: Re: [Flashcoders] E4X XML manipulation

On 11/10/2011 16:33, Merrill, Jason wrote:

   row id=c /
/row

And

   row id=c /
/row


Are not valid XML.  Therefore, I'm not clear on what you want to do. :)

Hmm..

myXMLNode =
my_xml
row id=a /
row id=b /
row id=c /
/my_xml;

into:

my_xml
row id=a
row id=b /
row id=c /
/row
/my_xml

I didn't realise the space was there - not intended- too much going on at once!



   Jason Merrill
   Instructional Technology Architect II
   Bank of America  Global Learning





___

-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com 
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Paul Andrews
Sent: Tuesday, October 11, 2011 9:53 AM
To: flashcoders@chattyfig.figleaf.com
Subject: [Flashcoders] E4X XML manipulation

What's the best way to turn

this:

myXMLNode =
my_xml
   row id=a /
   row id=b /
   row id=c /
/my_xml;

into:

my_xml
   row id=a
   row id=b /
   row id=c /
/row
/my_xml

Using some E4X?

It's not so much a case of adding b and c as children of a, but of removing 
them so I don't end up with:

my_xml
   row id=a
   row id=b /
   row id=c /
/row
   row id=b /
   row id=c /
/my_xml

Paul



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

--
This message w/attachments (message) is intended solely for the use of the 
intended recipient(s) and may contain information that is privileged, 
confidential or proprietary. If you are not an intended recipient, please 
notify the sender, and then please delete and destroy all copies and 
attachments, and be advised that any review or dissemination of, or the taking 
of any action in reliance on, the information contained in or attached to this 
message is prohibited.
Unless specifically indicated, this message is not an offer to sell or a 
solicitation of any investment products or other financial product or service, 
an official confirmation of any transaction, or an official statement of 
Sender. Subject to applicable law, Sender may intercept, monitor, review and 
retain e-communications (EC) traveling through its networks/systems and may 
produce any such EC to regulators, law enforcement, in litigation and as 
required by law.
The laws of the country of each sender/recipient may impact the handling of EC, 
and EC may be archived, supervised and produced in countries other than the 
country in which you are located. This message cannot be guaranteed to be 
secure or free of errors or viruses.

References to Sender are references to any subsidiary of Bank of America 
Corporation. Securities and Insurance Products: * Are Not FDIC Insured * Are Not Bank 
Guaranteed * May Lose Value * Are Not a Bank Deposit * Are Not a Condition to Any Banking 
Service or Activity * Are Not Insured by Any Federal Government Agency. Attachments that 
are part of this EC may have additional important disclosures and disclaimers, which you 
should read. This message is subject to terms available at the following link:
http://www.bankofamerica.com/emaildisclaimer. By messaging with Sender you 
consent to the foregoing.
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

--
This message w/attachments (message) is intended solely for the use of the 
intended recipient(s) and may contain information that is privileged, 
confidential or proprietary. If you are not an intended recipient, please 
notify the sender, and then please delete and destroy all copies and 
attachments, and be advised that any review or dissemination of, or the taking 
of any action in reliance on, the information contained in or attached to this 
message is prohibited

Re: [Flashcoders] E4X XML manipulation

2011-10-11 Thread Paul Andrews

On 11/10/2011 17:38, Merrill, Jason wrote:

Just trying to help. :)

Yes, I appreciate it. Thank you.

   I don't know if this helps what you're trying to do, but I have found it 
much easier to parse XML data into value objects and vectors, then doing the 
data manipulations from there, rather than trying to do all the manipulations 
with E4X.  But if that isn't an option for you and you need to stick with XML 
all the way, just ignore.


That's what I did in the original code. Then I thought I'd try and do it 
in XML alone - hence the question. In many ways it's easier to mimic the 
tree using objects, but it would be great if I could just manipulate the 
XML.


Paul



  Jason Merrill
  Instructional Technology Architect II
  Bank of America  Global Learning



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] SWF size reduction

2011-09-17 Thread Paul Andrews

On 17/09/2011 10:48, Gerry Beauregard wrote:

Thanks for the quick feedback. Is there any way to tell the compiler that the 
SWF won't be loaded by another SWF, and that it's therefore safe to strip out 
unreferenced features?


I think you're flogging a dead horse, on this one..
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Calling native code from Flash

2011-07-19 Thread Paul Andrews

On 19/07/2011 08:15, Gerry Beauregard wrote:

Hi folks,

Does anyone know whether there's a way to call native code from a Flash SWF or 
AIR app, for example to call functions in a DLL?  Something like Java's JNI but 
for Flash?


I have never heard of anyone doing that and I know of no direct 
mechanism to do so.


What is your use-case?




I realize it's possible to read and write local data files from a SWF (using 
FileReference) or from an AIR app (using the File class), but that's reading 
and writing data, not running code. I also know it's possible to run C code 
compiled using Alchemy - but that's not really native code, as Alchemy-compiled 
code isn't native code, but rather byte-code that runs on the ActionScript VM.

-Gerry
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Calling native code from Flash

2011-07-19 Thread Paul Andrews

On 19/07/2011 08:46, Gerry Beauregard wrote:

Hi Paul, thanks for the quick response.

The use case would be to call some CPU-intensive audio signal processing code, 
most likely written in C++ and packaged as a DLL.  The idea is that a SWF (or 
AIR app) would try to detect the presence of the DLL on the user's machine; if 
the DLL is present, the SWF (or AIR app) would use the native signal processing 
functions implemented in it, otherwise it would rely on a simplified 
lower-quality implementation coded in AS3.
I can't think of any way to do what you want. All the native code 
workarounds I know of really aren't efficient for real-time calls and 
the overhead would outweigh the benefit. Be interesting if anyone 
suggests a method.




-Gerry

On 2011-07-19  , at 15:25 , Paul Andrews wrote:


On 19/07/2011 08:15, Gerry Beauregard wrote:

Hi folks,

Does anyone know whether there's a way to call native code from a Flash SWF or 
AIR app, for example to call functions in a DLL?  Something like Java's JNI but 
for Flash?

I have never heard of anyone doing that and I know of no direct mechanism to do 
so.

What is your use-case?



I realize it's possible to read and write local data files from a SWF (using 
FileReference) or from an AIR app (using the File class), but that's reading 
and writing data, not running code. I also know it's possible to run C code 
compiled using Alchemy - but that's not really native code, as Alchemy-compiled 
code isn't native code, but rather byte-code that runs on the ActionScript VM.

-Gerry
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Calling native code from Flash

2011-07-19 Thread Paul Andrews
I should add that one of the reasons it may not be possible, is the 
possibility of calling malevolent code from flash violating the security 
sandbox or just code that could crash the flash player/browser itself. I 
think Adobe will be reluctant to have a feature that risks sandbox 
security or could compromise the flash player in any way. I don't think 
Air offers a gateway either, but I may be wrong.


On 19/07/2011 09:06, Paul Andrews wrote:

On 19/07/2011 08:46, Gerry Beauregard wrote:

Hi Paul, thanks for the quick response.

The use case would be to call some CPU-intensive audio signal 
processing code, most likely written in C++ and packaged as a DLL.  
The idea is that a SWF (or AIR app) would try to detect the presence 
of the DLL on the user's machine; if the DLL is present, the SWF (or 
AIR app) would use the native signal processing functions implemented 
in it, otherwise it would rely on a simplified lower-quality 
implementation coded in AS3.
I can't think of any way to do what you want. All the native code 
workarounds I know of really aren't efficient for real-time calls and 
the overhead would outweigh the benefit. Be interesting if anyone 
suggests a method.




-Gerry

On 2011-07-19  , at 15:25 , Paul Andrews wrote:


On 19/07/2011 08:15, Gerry Beauregard wrote:

Hi folks,

Does anyone know whether there's a way to call native code from a 
Flash SWF or AIR app, for example to call functions in a DLL?  
Something like Java's JNI but for Flash?
I have never heard of anyone doing that and I know of no direct 
mechanism to do so.


What is your use-case?


I realize it's possible to read and write local data files from a 
SWF (using FileReference) or from an AIR app (using the File 
class), but that's reading and writing data, not running code. I 
also know it's possible to run C code compiled using Alchemy - but 
that's not really native code, as Alchemy-compiled code isn't 
native code, but rather byte-code that runs on the ActionScript VM.


-Gerry
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Calling native code from Flash

2011-07-19 Thread Paul Andrews

On 19/07/2011 09:48, Karl DeSaulniers wrote:

Hi Gerry,
Can you utilize php as a mediator?

Flash-PHP-DLL


I think there would be a huge latency, which would defeat the purpose. 
The fastest alternative I know would be an socket server on the same 
machine as the flash app. The socket server would then handle the 
requests and be able to process them natively. Again, there would be a 
huge latency compared to a native call.




PHP eg:
?php
if (is_file(path/To/yourfile.dll)) {
// true; we can proceed
//code to execute dll, format and send results to flash here
} else {
return false;
}
?

HTH,
Best,
Karl

On Jul 19, 2011, at 3:06 AM, Paul Andrews wrote:


On 19/07/2011 08:46, Gerry Beauregard wrote:

Hi Paul, thanks for the quick response.

The use case would be to call some CPU-intensive audio signal 
processing code, most likely written in C++ and packaged as a DLL.  
The idea is that a SWF (or AIR app) would try to detect the presence 
of the DLL on the user's machine; if the DLL is present, the SWF (or 
AIR app) would use the native signal processing functions 
implemented in it, otherwise it would rely on a simplified 
lower-quality implementation coded in AS3.
I can't think of any way to do what you want. All the native code 
workarounds I know of really aren't efficient for real-time calls and 
the overhead would outweigh the benefit. Be interesting if anyone 
suggests a method.




-Gerry

On 2011-07-19  , at 15:25 , Paul Andrews wrote:


On 19/07/2011 08:15, Gerry Beauregard wrote:

Hi folks,

Does anyone know whether there's a way to call native code from a 
Flash SWF or AIR app, for example to call functions in a DLL?  
Something like Java's JNI but for Flash?
I have never heard of anyone doing that and I know of no direct 
mechanism to do so.


What is your use-case?


I realize it's possible to read and write local data files from a 
SWF (using FileReference) or from an AIR app (using the File 
class), but that's reading and writing data, not running code. I 
also know it's possible to run C code compiled using Alchemy - but 
that's not really native code, as Alchemy-compiled code isn't 
native code, but rather byte-code that runs on the ActionScript VM.


-Gerry
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Karl DeSaulniers
Design Drumm
http://designdrumm.com

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Calling native code from Flash

2011-07-19 Thread Paul Andrews

On 19/07/2011 10:27, Karl DeSaulniers wrote:

Hi Paul, Gerry,
Are these runtime calls, or calls to set up runtime?
How is the swf published? Local? Server?
If Local, you could try javascript.
Calling the javascript before you need the results in flash.
Then que the results so there is no latency, like a buffer?

If server, I would go with Paul's socket suggestion or a perl script.
Or call the php before you need the results in flash.
A small php script takes milliseconds to execute.


Maybe, but there's network latency to be added to that. DSP usually 
requires fast real-time processing, so latency defeats the object of 
using native code. My suggestion about the socket server would be to 
install that on the client, not a remote server. Even so I suspect the 
latency will be too big.



You can even build a php script that polls the dll on its own and que 
the results

for flash to grab from.

Best,
Karl

On Jul 19, 2011, at 3:58 AM, Paul Andrews wrote:


On 19/07/2011 09:48, Karl DeSaulniers wrote:

Hi Gerry,
Can you utilize php as a mediator?

Flash-PHP-DLL


I think there would be a huge latency, which would defeat the 
purpose. The fastest alternative I know would be an socket server on 
the same machine as the flash app. The socket server would then 
handle the requests and be able to process them natively. Again, 
there would be a huge latency compared to a native call.




PHP eg:
?php
if (is_file(path/To/yourfile.dll)) {
// true; we can proceed
//code to execute dll, format and send results to flash here
} else {
return false;
}
?

HTH,
Best,
Karl

On Jul 19, 2011, at 3:06 AM, Paul Andrews wrote:


On 19/07/2011 08:46, Gerry Beauregard wrote:

Hi Paul, thanks for the quick response.

The use case would be to call some CPU-intensive audio signal 
processing code, most likely written in C++ and packaged as a 
DLL.  The idea is that a SWF (or AIR app) would try to detect the 
presence of the DLL on the user's machine; if the DLL is present, 
the SWF (or AIR app) would use the native signal processing 
functions implemented in it, otherwise it would rely on a 
simplified lower-quality implementation coded in AS3.
I can't think of any way to do what you want. All the native code 
workarounds I know of really aren't efficient for real-time calls 
and the overhead would outweigh the benefit. Be interesting if 
anyone suggests a method.




-Gerry

On 2011-07-19  , at 15:25 , Paul Andrews wrote:


On 19/07/2011 08:15, Gerry Beauregard wrote:

Hi folks,

Does anyone know whether there's a way to call native code from 
a Flash SWF or AIR app, for example to call functions in a DLL?  
Something like Java's JNI but for Flash?
I have never heard of anyone doing that and I know of no direct 
mechanism to do so.


What is your use-case?


I realize it's possible to read and write local data files from 
a SWF (using FileReference) or from an AIR app (using the File 
class), but that's reading and writing data, not running code. I 
also know it's possible to run C code compiled using Alchemy - 
but that's not really native code, as Alchemy-compiled code 
isn't native code, but rather byte-code that runs on the 
ActionScript VM.


-Gerry
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Karl DeSaulniers
Design Drumm
http://designdrumm.com

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Karl DeSaulniers
Design Drumm
http://designdrumm.com

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Calling native code from Flash

2011-07-19 Thread Paul Andrews

On 19/07/2011 17:18, David Cohn wrote:

Gerry,
If you can go with an app, check out Zinc.  It offers several system 
interfaces, including invoking DLLs directly:
http://www.multidmedia.com/support/livedocs/
--Dave


It attracted some poor comments at one time - I don't know if that has 
changed.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


[Flashcoders] Library asset rename

2011-07-12 Thread Paul Andrews
I'm using Flash CS5.5 and recently imported about 200 mp3 samples. I 
needed to create instances of these on demand so I had to create classes 
without the suffix  .mp3.


It was a PIA renaming the MP3 files, so did I miss a trick about how to 
import large numbers of mp3 files and avoid renaming them individually 
to remove the .mp3 suffix?



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



Re: [Flashcoders] Re: OTish MP3 files for a piano scale

2011-07-12 Thread Paul Andrews

I thought I should give an update about what I actually did.

I used Audacity Nyquist to synthesise the notes I needed. 
http://www.cs.cmu.edu/~rbd/doc/nyquist/part15.html


That allowed me to generate the piano samples I needed.
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Detecting if line crosses movie clip

2011-06-16 Thread Paul Andrews

On 16/06/2011 13:58, Paul Steven wrote:

Working on a game where the player must draw around some colored balls on
screen by dragging the mouse to create the polygon that surrounds the
objects.

The polygon is created by drawing a series of lines every time the mouse
moves. If one of these lines intersects one of the balls (movie clip) I need
to perform an action.

So my question is how to detect when the line intersects a movie clip?

The following is unsuitable as it treats the line as a rectangle e.g a
vertical line will have a lot of hit area that I do not want to be hit area

if (ballMC.hitTestObject(lineMC)) {

My other best suggestion is to use the 4 lines that make up the bounding box
of the ball movie clip and do a line intersection test for each line against
the line being drawn. This seems overly complex so before I try this I
wanted to check there is not a simpler solution.


http://keith-hair.net/blog/2008/08/05/line-to-circle-intersection-data/





Thanks in advance



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Strange button behavior

2011-06-10 Thread Paul Andrews

On 10/06/2011 03:49, Steve Abaffy wrote:

Hello,

I have a flash button that when it is played on IE9 works. It calls an off
site website, but when I try it on IE8 the mouse over actions that the
button is supposed to have work, but when pressed nothing happens. The
entire application was written in AS3, is there something that I am missing
as to why this is not working. I have also test on Chrome 3 and Firefox 4
and they work fine. Any help would be appreciated.

Perhaps you can make a small example test case.

Thank you.


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Touch Events

2011-05-29 Thread Paul Andrews

OK, an update on this.

I think the problem is that while dragging quickly the clip or sprite 
being moved falls behind the motion of the finger so that the TOUCH_END 
event occurs when the finger is no longer over the sprite/MC and so any 
handler attached to the sprite is not activated - hence the incomplete 
sequence. Attaching the TOUCH_END handler to the stage allows TOUCH_END 
to be detected and the correlation between that event and the sprite can 
be made via the touch id.


I guess that the TOUCH_BEGIN, TOUCH_MOVE, TOUCH_END sequence isn't 
guaranteed for a fast-moving swipe with listeners based on a Sprite/MC, 
but it is honoured over the lifetime of the swipe and requires listeners 
for TOUCH_END to be in place outside of the Sprite/MC itself.


I guess it's an indication of where touch handling differs from that of 
a pointer based interface.


Paul





On 26/05/2011 21:51, Paul Andrews wrote:

I've been using Flash CS5.5 targeting the IOS platform.

I have been writing a small application that relies on things being 
dragged around - can't really say much more right now.


I need to know when dragging starts, so on the thing that's being 
dragged I add a listener for TouchEvent.TOUCH_BEGIN.


I need to know when it's being moved, so the widget also has a 
listener for TouchEvent.TOUCH_MOVE.


And finally, I need to know when dragging stops, so the widget listens 
for TouchEvent.TOUCH_END.


Now mostly, everything goes OK, I get:

TOUCH_BEGIN, followed by one or more TOUCH_MOVE, and finally a 
TOUCH_END. Happiness.


I have noticed that sometimes if I drag too fast and/or gently do a 
swipe motion lifting my finger gently, the TOUCH_END doesn't seem to 
happen, so the app doesn't know that the user has stopped dragging. 
For the app, this is a problem because the user is allowed to position 
the widget roughly and on TOUCH_END it should snap into place.


Anyone else seen this?

I can imagine a workaround using a timer to catch missing TOUCH_END 
events, but it's a bit of a kludge.


Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


[Flashcoders] Touch Events

2011-05-26 Thread Paul Andrews

I've been using Flash CS5.5 targeting the IOS platform.

I have been writing a small application that relies on things being 
dragged around - can't really say much more right now.


I need to know when dragging starts, so on the thing that's being 
dragged I add a listener for TouchEvent.TOUCH_BEGIN.


I need to know when it's being moved, so the widget also has a listener 
for TouchEvent.TOUCH_MOVE.


And finally, I need to know when dragging stops, so the widget listens 
for TouchEvent.TOUCH_END.


Now mostly, everything goes OK, I get:

TOUCH_BEGIN, followed by one or more TOUCH_MOVE, and finally a 
TOUCH_END. Happiness.


I have noticed that sometimes if I drag too fast and/or gently do a 
swipe motion lifting my finger gently, the TOUCH_END doesn't seem to 
happen, so the app doesn't know that the user has stopped dragging. For 
the app, this is a problem because the user is allowed to position the 
widget roughly and on TOUCH_END it should snap into place.


Anyone else seen this?

I can imagine a workaround using a timer to catch missing TOUCH_END 
events, but it's a bit of a kludge.


Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] cloning custon events

2011-05-06 Thread Paul Andrews

On 06/05/2011 08:03, Mattheis, Erik (MIN-WSW) wrote:

I've an app that passes events outside of the DisplayList from one class to 
another.

In my extended CustDataEvent class:

public var param:*;

public function CiustDataEventç(type:String, bubbles:Boolean = true, 
cancelable:Boolean=false, param:* = null) {
   super(type, bubbles, cancelable);
}

public override function clone() :  Event {
   return new FirebellDataEvent(type, bubbles, cancelable, param);
}

I would like to just say:

private function sitePropertyUpdatedHandler(e:CustDataEvent) : void {
   dispatchEvent(e);
}

but to have the event param passed on I have to say:

private function sitePropertyUpdatedHandler(e:CustDataEvent) : void {
   var evt = new FirebellDataEvent(CustDataEvent.SITE_PROPERTY_UPDATED);
   evt.param = e.param;
   dispatchEvent(evt);
}

What am I not understanding? I suspect I may have to pass the param as an 
argument to CustDataEvent


var evt = new FirebellDataEvent(CustDataEvent.SITE_PROPERTY_UPDATED, true, 
false, e.param);
// intermediate parameters to taste

You seem to have FirebellDataEvent and CustDataEvent mixed up. Perhaps it 
should be CustDataEvent only?



Can I super the param to Event somehow? ZForgive me if I introduced errors 
while simplifying the code.


- Erik Mattheis
612 377 2272
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] How make an SWF run on IPad?

2011-05-02 Thread Paul Andrews

On 02/05/2011 20:37, Steve Abaffy wrote:

I guess I am just blind or something I have CS5 but don't see where or how
to package as an app I'm sure there is a RTFM answers coming but I have
done that, and either I don't understand what I am reading or I am missing
something.


Cunningly disguised as File-New-iPhoneOS ..

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] How make an SWF run on IPad?

2011-04-28 Thread Paul Andrews

On 28/04/2011 21:21, Steve Abaffy wrote:

I have been searching  the web for about an hour now, and I can't find a SWF
to MP4 convert that will allow the actionscript (i.e. buttons etc..) to
work. What I am trying to do is convert my flash presentation to something
that will run on an IPad. I have entire site written in actionscript 3.0 so
I have buttons and other interactive things on the screen. But flash will
not run on an IPad so what can one do.


If you have an iPad 3G or access to a WiFi connection, you could use one 
of the desktop connection apps that allow you to control your PC or Mac. 
You could then run your presentation on that machine but see it running 
on the iPad.


You must be one of the very last people on earth to not realise until 
now that the iPad doesn't support flash. I'm surprised that you think a 
video format would support interaction of any kind.




Thanks

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] test swf on slow machines

2011-04-27 Thread Paul Andrews

On 27/04/2011 08:40, Vedanayagam G wrote:

Hi

 In flex mobile project how to execute sql update and insert query
for play book tablet cos in simulator its working but not update and insert
query working in playbook tablet..

any body do me a favour for this my query


You give so little information it's very hard to say.

It's not good practice to hijack someone else's thread. Apart from 
anything else, this thread isn't about your problem.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] For solution needed........

2011-04-27 Thread Paul Andrews

On 27/04/2011 08:49, Vedanayagam G wrote:

Hi

 In flex mobile project how to execute sql update and insert query
for play book tablet VMware player
cos in simulator its working but not update and insert query working in
playbook tablet VMware player..

any body do me a favour for this my query..

Thanks in advance.



It would be far more sensible to ask this on the blackberry playbook 
development forums.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] 360 degree rotation

2011-04-25 Thread Paul Andrews

On 25/04/2011 08:47, a...@yonearth.com wrote:

thanx Cor

But i need like this

http://www.somersetdesign.co.uk/3drotator.php

regards
amol


It's not that complicated.

1) put object on turntable.
2) rotate turntable X degrees
3) If object is not fully rotated, goto 1

Flash loads all images in a stack - one on top of another. Make all 
images invisible. Make the first visible. To rotate just move the 
visibility flag through the stack ( probably best to keep image 
references in an array).

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] 360 degree rotation

2011-04-25 Thread Paul Andrews

On 25/04/2011 12:51, Paul Andrews wrote:

On 25/04/2011 08:47, a...@yonearth.com wrote:

thanx Cor

But i need like this

http://www.somersetdesign.co.uk/3drotator.php

regards
amol


It's not that complicated.

1) put object on turntable.
2) rotate turntable X degrees

Oops, TAKE PHOTO!

3) If object is not fully rotated, goto 1

Flash loads all images in a stack - one on top of another. Make all 
images invisible. Make the first visible. To rotate just move the 
visibility flag through the stack ( probably best to keep image 
references in an array).

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] 360 degree rotation

2011-04-25 Thread Paul Andrews

On 25/04/2011 12:56, Paul Andrews wrote:

On 25/04/2011 12:51, Paul Andrews wrote:

On 25/04/2011 08:47, a...@yonearth.com wrote:

thanx Cor

But i need like this

http://www.somersetdesign.co.uk/3drotator.php

regards
amol


It's not that complicated.

1) put object on turntable.


1b Err..  take PHOTO here! LOL

2) rotate turntable X degrees

Oops, TAKE PHOTO!

3) If object is not fully rotated, goto 1

Flash loads all images in a stack - one on top of another. Make all 
images invisible. Make the first visible. To rotate just move the 
visibility flag through the stack ( probably best to keep image 
references in an array).

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


[Flashcoders] test

2011-04-24 Thread Paul Andrews

Traffic seems to have abruptly stopped..
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] test

2011-04-24 Thread Paul Andrews

On 24/04/2011 14:48, Cor wrote:

Got it.

Thanks Cor. I guess the list is exceptionally quiet.
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Why doesn't this work addChild removechild

2011-04-23 Thread Paul Andrews

On 22/04/2011 18:35, Steve Abaffy wrote:

Quick update

Function{



Var Mort: MovieClip = new Mort();

Try{

 removeChild(Mort);

}catch(e:Error){

 // Do nothing;

}

addChild(Mort);

}



This function is called multiple times and each time it adds the child Mort,
but I want to remove the one placed there previously, it works if I add the
two lines right after each other as in the previous email but I really need
it work more like this.


As has already been pointed out, your variable name is the same as the 
class name, so I'm not sure why the compiler doesn't throw wobbly.


Never name instance variables beginning with a capital letter.







___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Archives?

2011-04-15 Thread Paul Andrews

On 15/04/2011 19:06, Micky Hulse wrote:

Hello,

Sorry to bug the list with this...

When I go to visit the list archives, it looks like the most recent
archive is from 2007.

Maybe I am missing something?

Anyone know where I can go to search through more recent archives? I
would like to find a thread I started from about a year ago


What was the thread about?

Call method by name: A few questions...
How to utilize this code: public static const: Needhelp understanding...

Paul



... I am
hoping that I can find an archive that supports searching! :D

Thanks!
Micky
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] test swf on slow machines

2011-04-10 Thread Paul Andrews
I would think that very few people have such slow machines and while 
they are out there do they really form part of your target audience?


What exactly are you doing to exercise the machines heavily?

Last year I worked on a project that involved animating 150+ avatars on 
screen together (with depth queues and collision detection) and 
naturally while the clients machines ran fine, I knew that for many 
people the experience would be poor - their machine would be unable to 
sustain the frame rate.


I decided what the lowest acceptable frame rate was and built in a 
counter to measure the actual frame rate on the users machine. If the 
frame rate dipped below the acceptable level I reduced the number of 
avatars until the frame rate recovered. This worked very well. It could 
also be used to increase the avatars if the user had a very fast machine.


So depending on your particular usage, you may be able to adapt to the 
users machine capabilities.


Paul

On 10/04/2011 01:43, Anthony Pace wrote:

How do you do your testing?

Do you still have slow machines to test everything on? do you 
virtualize it and assign a slow processor speed and fewer resources?  
or do you have another method?


I used to test apps on an old Compaq p3 633 mhz (if it ran well there 
than I could trust it would run almost anywhere); however, I don't 
have access to it anymore, and I totally need some accurate benchmarks.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Thought some one would like this online book

2011-02-27 Thread Paul Andrews

On 27/02/2011 02:17, spyder spyders wrote:

ww.scribd.com/Flash-As3-Programming/d/19382007
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders




Also available via the copyright holder...

http://livedocs.adobe.com/flash/9.0/main/flash_as3_programming.pdf
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Anybody Want to Work in Dubai?

2011-02-17 Thread Paul Andrews

On 17/02/2011 20:39, Kerry Thompson wrote:

Cor wrote:


WHAT!
No kissing AND no drinking...
I am gone

Aw, Cor, you're so Dutch. No, you can't smoke _that_ in Dubai either.
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



I suspect placard waving is also classed as a dangerous sport too..


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] OTish MP3 files for a piano scale

2011-02-08 Thread Paul Andrews
Hi Guys - I go out for the afternoon to chat with the client and the 
list is alive with info about pianos!


This is a low budget thing and not an attempt at emulating a Steinway. 
The actual project I can't really say much about but this is just a 
proof of concept thing that will decide what happens next.


Thanks for all the enthusiasm guys!

Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


[Flashcoders] OTish MP3 files for a piano scale

2011-02-07 Thread Paul Andrews
I'd like to make a piano keyboard, but trying to find a set of notes in 
MP3 format is leading to website link hell. Anyone know of any downloads 
for the individual notes?

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] OTish MP3 files for a piano scale

2011-02-07 Thread Paul Andrews

Thanks guys.

This doesn't have to be a particularly accurate thing - I just want it 
to sound something like a piano.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] 'trace' executes function

2011-02-02 Thread Paul Andrews

On 02/02/2011 10:12, Wenzler, Thomas wrote:

Hi List, I just made a little experiment with this code...

function setMovieClipX(mc,desiredCoordX):Boolean
{
var updated:Boolean=true;
(desiredCoordX!=mc.x)?mc.x=desiredCoordX:updated=false;


If the x posn isn't the right one move the movieclip, otherwise update 
the status



return updated;
}
trace(setMovieClipX(movieClip,286));

...and found to my utmost surprise that the trace command actually executed the 
function and updated the movieClip.x position instead of just tracing true or 
false.


It's just doing as you ask, isn't it?


If you check omit Trace in the Publish settings, movieClip remains at it's x 
Position.

Well, it would!

Wonder if this could be of any use or is a potential danger when using traces 
to debug?
Unless there's something I'm missing, everything is working as I would 
expect it to.


If you pass a function call as a parameter, the function is run. If the 
function includes code that will move a movieclip, the clip will move.



Regards
Thomas
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] core Math functions in flash vs the browser

2011-01-11 Thread Paul Andrews

On 11/01/2011 17:51, Anthony Pace wrote:

Why are the implementations of Sin and Cos s slow?

Even a very basic MacLauren series can trump the Flash's current 
Math.cos or Math.sin, and that is when they wrapped in function calls.


Although the rendering performance is poor in the browser, if you try 
comparing the ff3.5 or chrome's ability to process the the Math.sin 
and Math.cos calls, you will see vast differences.  What gives with 
the dudes at Adobe?  Why was this problem not a concern, nor improved 
upon years ago?


I hear things will be different in 10.2; however, I haven't played 
with it yet, and I would not be able to comment.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



If this is critical to you you may just wish to cache computation, or 
incorporate a lookup table. I don't think this is a critical thing for 
the vast majority of developers.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] massive problems with cs5 not compiling/ corrupt fla/xfl files...

2010-12-20 Thread Paul Andrews

On 20/12/2010 13:30, Mendelsohn, Michael wrote:

I've been going through the exact same horrible situation, and I feel your 
pain, Tom.

My issue seems to have worked itself out as of late.  For some insight, check my thread 
swf not compiling, originating on December 10th.

Ultimately, I kept recreating the fla file.  Converting it to an xfl file 
didn't do anything to help.  It wasn't an issue with the as files, the issue is 
in the fla file.  Fortunately, I don't have very many library items in my fla, 
so I could fairly easily recreate the file.

Good luck.
- Michael M.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

It might be an idea to create a new fla, then copy items from the 
library. It may be that you can do it in stages to try and find out if 
any are corrupted in stages.


Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] My first code.

2010-12-16 Thread Paul Andrews

On 16/12/2010 07:38, spyder spyders wrote:

Thank You So Much! :DI have been researching for over a 
month!!  I am guessing that the 'this'  is pointing to the symbol or _mc I 
attach the class to?
I ended up doing away with all of the  this because I was receiving an error message saying  
gotoAndStop is not a function.  Also I needed to declare the variable  buttonState


Using this shouldn't cause you a problem in a class definition. If you 
don't use it it generally means the same thing as this.!


gotoAndStop is not a function. I would associate with a class that did not 
extend MovieClip.


Spend some time on some OO tutorials to try and get the main concepts 
then you'll soon see how it all fits together.



Here it is!!! My first Class!

Excellent.

Thank you!


You're welcome.



###

package
{

import flash.display.MovieClip;
import flash.events.MouseEvent;


public class ToggleButton extends MovieClip
{
//public var togglButton:MovieClip;
public var buttonState = MovieClip;

public function ToggleButton()
{
// constructor code



//event listeners
addEventListener(MouseEvent.MOUSE_OVER, rolloverToggle);
addEventListener(MouseEvent.MOUSE_OUT, rolloutToggle);
addEventListener(MouseEvent.CLICK, toggleClick);
buttonState = off;


// Respond to mouse events
function rolloverToggle(event:MouseEvent)
{
gotoAndStop(buttonState+ over);

} //rollover f(x)

function rolloutToggle(event:MouseEvent)
{
gotoAndStop(buttonState);

} //rollout f(x)

function toggleClick(event:MouseEvent)
{
if (buttonState == on)
{
buttonState = off;
} //if
else
{
buttonState = on;
} //else
gotoAndStop(buttonState+ over);

} //toggle click f(x)

} //constructor f(x)

} //class

} //package



#
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] My first code.

2010-12-16 Thread Paul Andrews

On 16/12/2010 14:54, Matt S. wrote:

Spyder, you should order Colin Moock's book toute suite:
http://www.amazon.com/exec/obidos/ASIN/0596526946/ref=nosim/moockorg

It's essential reading for anyone interested in learning AS3.


It is, but http://www.learningactionscript3.com/ is a much gentler ride 
to get started.


Paul



.m


On Thu, Dec 16, 2010 at 2:38 AM, spyder spydersspyderspyd...@aol.com  wrote:

Thank You So Much! :DI have been researching for over a 
month!!  I am guessing that the 'this'  is pointing to the symbol or _mc I 
attach the class to?
I ended up doing away with all of the  this because I was receiving an error message saying  
gotoAndStop is not a function.  Also I needed to declare the variable  buttonState

Here it is!!! My first Class!
Thank you!

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] My first code.

2010-12-15 Thread Paul Andrews

On 15/12/2010 23:53, spyder spyders wrote:

   HELLO FlashCoders!

   I am trying to write a ToggleButton Class.I can get it to work as a 
document class and as as3 on timeline.  But how to I use it as a symbol class?


Everywhere you have toggleButton replace it with this or remove it 
altogether.

In the linkage for the MovieClip that represents the toggle, put this class.

Paul



Thx!
/

package
{

import flash.display.MovieClip;
import flash.events.MouseEvent;


public class ToggleButton extends MovieClip
{
public var toggleButton:MovieClip;

public function ToggleButton()
{
// constructor code



//event listeners
toggleButton.addEventListener(MouseEvent.MOUSE_OVER, 
rolloverToggle);
toggleButton.addEventListener(MouseEvent.MOUSE_OUT, 
rolloutToggle);
toggleButton.addEventListener(MouseEvent.CLICK, 
toggleClick);
toggleButton.buttonState = off;


// Respond to mouse events
function rolloverToggle(event:MouseEvent)
{
toggleButton.gotoAndStop(toggleButton.buttonState+ 
over);

} //rollover f(x)

function rolloutToggle(event:MouseEvent)
{

toggleButton.gotoAndStop(toggleButton.buttonState);

} //rollout f(x)

function toggleClick(event:MouseEvent)
{
if (toggleButton.buttonState == on)
{
toggleButton.buttonState = off;
} //if
else
{
toggleButton.buttonState = on;
} //else
toggleButton.gotoAndStop(toggleButton.buttonState+ 
over);

} //toggle click f(x)

} //constructor f(x)

} //class

} //package


/
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] stop caching

2010-12-10 Thread Paul Andrews
If this is a web project, just have a local server on your PC and test 
using that, then deploy to the remote server.


You can always clear the browser cache.

Paul



On 10/12/2010 14:56, Lehr, Theodore wrote:

so if it is local - anyway to get around caching?


From: flashcoders-boun...@chattyfig.figleaf.com 
[flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Juan Pablo Califano 
[califa010.flashcod...@gmail.com]
Sent: Thursday, December 09, 2010 9:03 PM
To: Flash Coders List
Subject: Re: [Flashcoders] stop caching

If you are loading the swf directly from the file system (that is, localy)
appending parameters to the querystring won't work because they'll be
considered part of the file name. So those parameters will not be
interpreted as such. In a http environment (i.e. a server, local or remote),
on the other hand, the querystring will not be considered part of the file
name.

So yes, it's a local / server issue.

Cheers
Juan Pablo Califano

2010/12/9 Lehr, Theodoreted_l...@federal.dell.com


I am trying to prevent caching via:

function startLoad(dfile:String)
{
var ran:int = Math.round(Math.random()*10);
var dfileb:String = new String();
dfileb = dfile+?ran=+ran;
var mRequest:URLRequest=new URLRequest(dfileb);
}

startLoad(moive.swf);

but I get an error 2044: Unhandled IOErrorEvent:text=Error #2035: URL Not
Found

What am I doing wrong?

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] RE: swf not compiling

2010-12-10 Thread Paul Andrews
I did once get some really bizarre behaviour with a project that had a 
MovieClip in the library linked to a class but with a misspelt class 
name. Things just weren't happening and the IDE had conveniently 
constructed a class for me that did nothing. Meanwhile I was trying to 
work with classes that weren't being called.


Maybe totally unrelated.

Paul

On 10/12/2010 21:09, Mendelsohn, Michael wrote:

OK, back to square one.  It's not compiling again.  No errors.  I've rebuilt a 
new fla from scratch, and brought in all the assets from the other library.  
Still nothing.  This is going to be the death of me.

-  MM





I've never used Flashbuilder/Flex before.
My project is mostly purely code, just a few visual assets,
but it would probably take me some time to learn my way around the software.  
:-(

It's not that hard to set up really. You just create a pure AS3 project and point 
Flashbuilder to your main document as the class to build from (right click on the class, 
select Set as Default Application).  You can then bring in your library 
assets using [Embed] tags or using the Loader class.  There is documentation on how to 
use the Embed tags - it's easy. Do you own a copy?  Worth a shot at least.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] How to iterate through arrays

2010-11-13 Thread Paul Andrews

On 13/11/2010 15:17, Cor wrote:

I am trying to create a menu with 5 levels deep submenus.

Sounds like a UI nightmare for the user.

My best guess is to do this with an array with a bunch of arrays in it,
which also contain arrays, etc.
And now I have to iterate through all the levels of the arrays.
So I need some example how to iterate regards the amount of arrays and items
in the arrays.

Suggestions please. (Any better way is also appreciated).

Check out recursive functions.

Regards
Cor




___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] How to iterate through arrays

2010-11-13 Thread Paul Andrews

On 13/11/2010 16:24, Cor wrote:

Thanks Paul,

Yes, but how would I dive through in depth arrays?


var nestedArrays:Array=[  0, 1, 2, 3, [4,5,[7,8,[9,10],11]], 12];

arrayDescender(nestedArrays);

function arrayDescender(pArr:Array, pDepth:uint=0):void {
for (var i:uint=0; i pArr.length; i++){
if (pArr[i] is Array){ // node
arrayDescender(pArr[i], pDepth+1);
} else { // leaf
trace (level +pDepth+ [+i+] =  + pArr[i]);
}
}
}


















Regards
Cor


-Original Message-
From: flashcoders-boun...@chattyfig.figleaf.com
[mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of Paul Andrews
Sent: zaterdag 13 november 2010 17:14
To: Flash Coders List
Subject: Re: [Flashcoders] How to iterate through arrays

On 13/11/2010 15:17, Cor wrote:

I am trying to create a menu with 5 levels deep submenus.

Sounds like a UI nightmare for the user.

My best guess is to do this with an array with a bunch of arrays in it,
which also contain arrays, etc.
And now I have to iterate through all the levels of the arrays.
So I need some example how to iterate regards the amount of arrays and

items

in the arrays.

Suggestions please. (Any better way is also appreciated).

Check out recursive functions.

Regards
Cor




___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Geen virus gevonden in het binnenkomende-bericht.
Gecontroleerd door AVG - www.avg.com
Versie: 9.0.869 / Virusdatabase: 271.1.1/3249 - datum van uitgifte: 11/10/10
20:34:00

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] How to iterate through arrays

2010-11-13 Thread Paul Andrews

On 13/11/2010 16:44, Cor wrote:

OK, I think I figured it out.

function findIndex (psdArray:Array, psdButton:Object, psdLevel:uint):void {

for (var i:uint=0; i  psdArray[psdLevel].length; ++i){
var curBtn:uint = psdArray.indexOf(psdButton);
if(curBtn == -1){
 ++psdLevel;
 //recursie
 findIndex (psdArray[psdLevel], psdButton, psdLevel);
}
}
trace(psdArray[psdLevel], psdButton, psdLevel);
}


LOL,  that's ten minutes of my life wasted because you didn't try before 
asking...



Regards
Cor


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Flash CS5 and photoshop import and TLFTextfield

2010-10-19 Thread Paul Andrews

 On 18/10/2010 19:27, Patrick Matte wrote:

In fact, not only is there no options to create regular TextField instead of
TLFTextField but all the fonts are wrong in the TLFTextFields.

I opened Flash CS4 and imported the same PSD file and every TextField had
the correct font.

Thumbs down Adobe Flash CS5...


Change the target player to 9 before you import and you will get regular 
TextFields.

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Any good references for swarming/flocking/fractal algorithms?

2010-10-18 Thread Paul Andrews

 On 18/10/2010 06:48, mika wrote:

You could have a look at Flint Particle system also

http://flintparticles.org/examples/flocking-3d


Excellent. Thank you.

Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Any good references for swarming/flocking/fractal algorithms?

2010-10-18 Thread Paul Andrews

 On 18/10/2010 08:45, John McCormack wrote:

 Paul,

There are some useful things here, mostly(?) java but the approach is 
helpful:


http://www.red3d.com/cwr/steer/
http://www.red3d.com/cwr/boids/
http://www.red3d.com/cwr/

http://www.vergenet.net/~conrad/boids/pseudocode.html
http://benfry.com/writing/

John



Some really interesting stuff - thank you.

I wished I'd asked sooner!

Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


[Flashcoders] Any good references for swarming/flocking/fractal algorithms?

2010-10-17 Thread Paul Andrews

 Any good references for swarming/flocking/fractal algorithms?

Thought I'd have a play. Doesn't have to be flash-only.
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Any good references for swarming/flocking/fractal algorithms?

2010-10-17 Thread Paul Andrews

 On 17/10/2010 19:18, Tom Gooding wrote:

Grant Skinner has done some open AS3 stuff on this:

http://www.gskinner.com/blog/archives/2009/11/wander_motion_c.html
http://www.gskinner.com/blog/archives/2009/11/wander_motion_c_1.html

Also there's the Hype framework project:

http://www.hypeframework.org/02_examples/swarm/content/01_swarm/

Not used either of these - but Hype looks pretty comprehensive with tons of 
examples - post back if you get anywhere with it - be interested to hear...


Thanks Tom.

Paul


Tom


On 17 Oct 2010, at 15:47, Paul Andrews wrote:

Any good references for swarming/flocking/fractal algorithms?

Thought I'd have a play. Doesn't have to be flash-only.
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Left shifting input text as user types is unreliable

2010-09-24 Thread Paul Andrews

 On 22/09/2010 20:25, Paul Andrews wrote:

 On 22/09/2010 19:18, Cédric Muller wrote:
And, by any chance, are any fonts not embedded ? (another halfy dumb 
question)


No, they are embedded. It's not that the text is not accepted it's 
just that typing more text doesn't cause the text to move left when 
the field is filled. It's not a case  of typing characters that aren't 
embedded.


It really is odd.


OK, I spotted what is making a difference. The field in question is 
being used to enter an email address. Some testers had reported that 
they were unable to enter a '@' symbol because when the tried to they 
got an '' (double quote). After a lot of discussion with the project 
manager where i explained this was certainly down to incorrectly 
configured keyboard/language settings (most likely UK English/US 
English), I needed a solution, so for that field I attached a CHANGE 
listener and substituted any typed  character with @ . This works 
nicely, but

has clearly introduced another problem on some machines.

Scratched head for the moment.

Paul











22/09/2010 19:28, Paul Andrews wrote :


On 22/09/2010 17:26, Cédric Muller wrote:

Out in the wild (read: dumb question):
Do you have some player version detection in your tests ? (it could 
be that the third computer has not FP9 installed?)
Fair question. Machine in question is running FP10! (as are the 
other two)



hth,
Cedric

I've been working on an AS3 project with some input text - using 
CS5 targetting FP 9.


It works nicely but I have a few text input fields, but one of 
them has a problem on some computers. I have tried it on three 
computers and only one shows the problem and the other input 
fields do not show the problem. Even cutting and pasting working 
or new textInput fields don't cure it.


The problem is that when the user types too much text, the text 
should shift left so that what the user has just typed is always 
in view. In two out of three machines I have access to it does. On 
another it does not and the user can't see what they are typing.


There's no obvious correlation between machines that have the 
correct behaviour for the field and those that do not. One tester 
had the bad behaviour on all browsers except IE8. Works fine on 
every browser I have installed.


Any ideas?

Paul

___


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Left shifting input text as user types is unreliable

2010-09-24 Thread Paul Andrews

 On 24/09/2010 16:11, Glen Pike wrote:
 Is this happening because you are using the CHANGE event - is that 
firing when you change modify the character also?


Have you tried using the TextEvent.TEXT_INPUT event - this might work, 
but I am not sure.


The only other suggestion may be out of place, but concerns 
usability and might be redundant:  Making a text field large enough 
for the input data may be a way around this too - I know email 
addresses can be ridiculously long, but I think I would be happier 
with one that is long enough rather than having one the right width 
just to please a graphic designer...



I finally sorted it.

TEXT_INPUT was no good - it only changed the text once another character 
had been typed.


In the end I reverted to the CHANGE event but used replaceText() on the 
field instead of replacing the text in the string by manipulating fld.text;


Thanks for everyone who suggested a fix.

Paul

___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Left shifting input text as user types is unreliable

2010-09-24 Thread Paul Andrews

 On 24/09/2010 16:45, Kenneth Kawamoto wrote:

 Some testers had reported that
 they were unable to enter a '@' symbol because when the tried to they
 got an '' (double quote).

This is usually caused by wmode set to transparent.


It's set to opaque.

Paul



Kenneth Kawamoto
http://www.materiaprima.co.uk/

On 24/09/2010 15:36, Paul Andrews wrote:

On 22/09/2010 20:25, Paul Andrews wrote:

On 22/09/2010 19:18, Cédric Muller wrote:

And, by any chance, are any fonts not embedded ? (another halfy dumb
question)


No, they are embedded. It's not that the text is not accepted it's
just that typing more text doesn't cause the text to move left when
the field is filled. It's not a case of typing characters that aren't
embedded.

It really is odd.


OK, I spotted what is making a difference. The field in question is
being used to enter an email address. Some testers had reported that
they were unable to enter a '@' symbol because when the tried to they
got an '' (double quote). After a lot of discussion with the project
manager where i explained this was certainly down to incorrectly
configured keyboard/language settings (most likely UK English/US
English), I needed a solution, so for that field I attached a CHANGE
listener and substituted any typed  character with @ . This works
nicely, but
has clearly introduced another problem on some machines.

Scratched head for the moment.

Paul




___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


[Flashcoders] Left shifting input text as user types is unreliable

2010-09-22 Thread Paul Andrews
 I've been working on an AS3 project with some input text - using CS5 
targetting FP 9.


It works nicely but I have a few text input fields, but one of them has 
a problem on some computers. I have tried it on three computers and only 
one shows the problem and the other input fields do not show the 
problem. Even cutting and pasting working or new textInput fields 
don't cure it.


The problem is that when the user types too much text, the text should 
shift left so that what the user has just typed is always in view. In 
two out of three machines I have access to it does. On another it does 
not and the user can't see what they are typing.


There's no obvious correlation between machines that have the correct 
behaviour for the field and those that do not. One tester had the bad 
behaviour on all browsers except IE8. Works fine on every browser I have 
installed.


Any ideas?

Paul
___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


Re: [Flashcoders] Left shifting input text as user types is unreliable

2010-09-22 Thread Paul Andrews

 On 22/09/2010 17:26, Cédric Muller wrote:

Out in the wild (read: dumb question):
Do you have some player version detection in your tests ? (it could be that the 
third computer has not FP9 installed?)

Fair question. Machine in question is running FP10! (as are the other two)


hth,
Cedric


I've been working on an AS3 project with some input text - using CS5 targetting 
FP 9.

It works nicely but I have a few text input fields, but one of them has a problem on some 
computers. I have tried it on three computers and only one shows the problem and the 
other input fields do not show the problem. Even cutting and pasting working 
or new textInput fields don't cure it.

The problem is that when the user types too much text, the text should shift 
left so that what the user has just typed is always in view. In two out of 
three machines I have access to it does. On another it does not and the user 
can't see what they are typing.

There's no obvious correlation between machines that have the correct behaviour 
for the field and those that do not. One tester had the bad behaviour on all 
browsers except IE8. Works fine on every browser I have installed.

Any ideas?

Paul


___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders



___
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders


  1   2   3   4   5   6   >