Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...
Just knowing that the object is populated before the constructor is called and that those properties take precedence over my class explains a lot. Now I'm much better prepared to handle what remoting throws at me :) great... I think thats one part of remoting where they could have done something slightly more clever. Even if they added some configuration possibilities to the player like a flag for Remoting.callConstructorFirst and Remoting.useAccessors which could use both types of accessor but I prefer to have options. ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com
Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...
Just knowing that the object is populated before the constructor is called and that those properties take precedence over my class explains a lot. Now I'm much better prepared to handle what remoting throws at me :) Accidentally hit the wrong key combo and sent the previous mail before i was finishedhere it is again..in all its glory.. great... I think thats one part of remoting where they could have done something slightly more clever. Even if they added some configuration possibilities to the player like a flag for Remoting.callConstructorFirst if you want you objects created in a 'normal' way, maybe at the expense of performance and Remoting.useAccessors which could use both types of accessor. (get x and getX) They could be set to default to what they are now, but at least you would have options to turn the remoting deserialization (and local shared objects) into something that behaves like normal code rather than magic. :) martin. ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com
Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...
I couldn't agree more :) We can always hope for such improvements in the near future. On Wed, 2006-08-30 at 11:18 +0200, Martin Wood wrote: Just knowing that the object is populated before the constructor is called and that those properties take precedence over my class explains a lot. Now I'm much better prepared to handle what remoting throws at me :) Accidentally hit the wrong key combo and sent the previous mail before i was finishedhere it is again..in all its glory.. great... I think thats one part of remoting where they could have done something slightly more clever. Even if they added some configuration possibilities to the player like a flag for Remoting.callConstructorFirst if you want you objects created in a 'normal' way, maybe at the expense of performance and Remoting.useAccessors which could use both types of accessor. (get x and getX) They could be set to default to what they are now, but at least you would have options to turn the remoting deserialization (and local shared objects) into something that behaves like normal code rather than magic. :) martin. ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com
[Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...
Ok, I've got it working as advertised. I'm using VO's and my returned values are being mapped to my VO classes. But the problem is how they're mapped. I decided to work on getting VO's to work in my project in the hopes that all the string values I get from MySQL would be mapped to their proper datatypes. But it didn't quite work the way I had hoped. The returned values do not get put into the VO class as the datatypes that are assigned in the class, they get put in as the datatypes that are returned from PHP. For instance.. PHP service class: ?php class SimpleService { function SimpleService() { $this-methodTable = array( tester = array( description = tester() :: returns examples, arguments = array(), access = remote, returns = TesterVO ) ); } function tester() { $TesterVO = array('aString' = 12345, 'aNumber' = '12345'); return $TesterVO; } } ? Flash VO class: class TesterVO { aString:String; aNumber:Number; function TesterVO() { } } In this example aString doesn't get mapped to a String, and aNumber doesn't get mapped to a Number. aString becomes a Number and aNumber becomes a string. Well, I wouldn't normally return types like this, but I was really hoping to avoid converting strings to numbers, and also the 1 string that you get when MySql returns a TRUE. So, I figure that it's all ok.. I'll use getters/setters. So I set up those methods in my class, for instance: ... __aNumber:Number; function set aNumber(newNum):Void { __aNumber = parseInt(newNum); //ie parseInt(12345); } function get aNumber():Number { return __aNumber; } ... Guess what happens... my setter basically gets overwritten with aNumber:String = 12345.. And my getter returns undefined because the setter never set __aNumber! I was under the assumption that the whole purpose of VO's was so that datatypes get typed properly.. But the way Flash works, it just overwrites the properties with what's returned. Now I know I can work around all this, but doesn't it really defeat the purpose of all of it all? Aren't Value Object's properties supposed to use the datatypes that they define? Am I missing something? All does work fine when the returning types correspond. When array('aNumber' = 123, 'aString' = 123JustaString, 'aBoolean' = true) is returned I do get those datatypes. There's no need to even set the datatypes as it really wont matter when flash gets a hold of it. Another thing, but it's minor, is that in this case: function onResult(myResult:ResultEvent) { var theResult:TesterVO = myResult.result; } Flash will error on compile. It really thinks that myResult.result will be of the datatype Object. Shouldn't they have left that untyped? Now before you think that my VO's really aren't getting mapped, they are. I've made sure of that, any methods I put in that class are accessible upon receiving data from the server.. Any thoughts? Am I missing something? I've been very happy with remoting, and have been using it with great success for some time now. But, I was really hoping that spending the time to get VO's working would be worth it. Boy was I disappointed. It just seems to be more work then what it's worth. ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com
Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...
Hello :) do you use Object.registerClass method to register your VO classes in ActionScript ? You can read in french my article about Class Mapping (AS2 and AS3) and fixing bug in AS3 in my blog : http://www.ekameleon.net/blog/index.php?2006/08/28/48--amf-class-mapping-difficile-en-as3 Sorry, the article is write in French ! but the ActionScript and PHP codes are easy ;) EKA+ :) You can use Google translator or babelFish 2006/8/28, Julius Turnmire [EMAIL PROTECTED]: Ok, I've got it working as advertised. I'm using VO's and my returned values are being mapped to my VO classes. But the problem is how they're mapped. I decided to work on getting VO's to work in my project in the hopes that all the string values I get from MySQL would be mapped to their proper datatypes. But it didn't quite work the way I had hoped. The returned values do not get put into the VO class as the datatypes that are assigned in the class, they get put in as the datatypes that are returned from PHP. For instance.. PHP service class: ?php class SimpleService { function SimpleService() { $this-methodTable = array( tester = array( description = tester() :: returns examples, arguments = array(), access = remote, returns = TesterVO ) ); } function tester() { $TesterVO = array('aString' = 12345, 'aNumber' = '12345'); return $TesterVO; } } ? Flash VO class: class TesterVO { aString:String; aNumber:Number; function TesterVO() { } } In this example aString doesn't get mapped to a String, and aNumber doesn't get mapped to a Number. aString becomes a Number and aNumber becomes a string. Well, I wouldn't normally return types like this, but I was really hoping to avoid converting strings to numbers, and also the 1 string that you get when MySql returns a TRUE. So, I figure that it's all ok.. I'll use getters/setters. So I set up those methods in my class, for instance: ... __aNumber:Number; function set aNumber(newNum):Void { __aNumber = parseInt(newNum); //ie parseInt(12345); } function get aNumber():Number { return __aNumber; } ... Guess what happens... my setter basically gets overwritten with aNumber:String = 12345.. And my getter returns undefined because the setter never set __aNumber! I was under the assumption that the whole purpose of VO's was so that datatypes get typed properly.. But the way Flash works, it just overwrites the properties with what's returned. Now I know I can work around all this, but doesn't it really defeat the purpose of all of it all? Aren't Value Object's properties supposed to use the datatypes that they define? Am I missing something? All does work fine when the returning types correspond. When array('aNumber' = 123, 'aString' = 123JustaString, 'aBoolean' = true) is returned I do get those datatypes. There's no need to even set the datatypes as it really wont matter when flash gets a hold of it. Another thing, but it's minor, is that in this case: function onResult(myResult:ResultEvent) { var theResult:TesterVO = myResult.result; } Flash will error on compile. It really thinks that myResult.result will be of the datatype Object. Shouldn't they have left that untyped? Now before you think that my VO's really aren't getting mapped, they are. I've made sure of that, any methods I put in that class are accessible upon receiving data from the server.. Any thoughts? Am I missing something? I've been very happy with remoting, and have been using it with great success for some time now. But, I was really hoping that spending the time to get VO's working would be worth it. Boy was I disappointed. It just seems to be more work then what it's worth. ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com
Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...
Unfortunately the player wont do data type conversion when deserializing the contents of an object returned via remoting. You have to make sure your types are right on the server so that when the remoting gateway constructs the amf data to send to flash it has the correct types already inside. Obviously this is more of a pain from something like PHP than say Java as PHP has a much looser type system. For me the beauty of remoting is that you *do* get the datatypes that you create on the server sent to you in flash. I think the other issue you are running into is that when the player creates the actionscript objects from the remoting data it populates the object *before* it runs the constructor. This means that it doesnt care about any getters / setters and you have to be extra careful if you do anything in the constructor or are expecting parameters to your constructor. Julius Turnmire wrote: Ok, I've got it working as advertised. I'm using VO's and my returned values are being mapped to my VO classes. But the problem is how they're mapped. ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com
Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...
Yup, I do do registerClass. Wouldn't work without ;) I'll check out your article, but as far as I can tell everything is working it's just overwritting the variables in my class.. On Tue, 2006-08-29 at 18:07 +0200, eka wrote: Hello :) do you use Object.registerClass method to register your VO classes in ActionScript ? You can read in french my article about Class Mapping (AS2 and AS3) and fixing bug in AS3 in my blog : http://www.ekameleon.net/blog/index.php?2006/08/28/48--amf-class-mapping-difficile-en-as3 Sorry, the article is write in French ! but the ActionScript and PHP codes are easy ;) EKA+ :) You can use Google translator or babelFish 2006/8/28, Julius Turnmire [EMAIL PROTECTED]: Ok, I've got it working as advertised. I'm using VO's and my returned values are being mapped to my VO classes. But the problem is how they're mapped. I decided to work on getting VO's to work in my project in the hopes that all the string values I get from MySQL would be mapped to their proper datatypes. But it didn't quite work the way I had hoped. The returned values do not get put into the VO class as the datatypes that are assigned in the class, they get put in as the datatypes that are returned from PHP. For instance.. PHP service class: ?php class SimpleService { function SimpleService() { $this-methodTable = array( tester = array( description = tester() :: returns examples, arguments = array(), access = remote, returns = TesterVO ) ); } function tester() { $TesterVO = array('aString' = 12345, 'aNumber' = '12345'); return $TesterVO; } } ? Flash VO class: class TesterVO { aString:String; aNumber:Number; function TesterVO() { } } In this example aString doesn't get mapped to a String, and aNumber doesn't get mapped to a Number. aString becomes a Number and aNumber becomes a string. Well, I wouldn't normally return types like this, but I was really hoping to avoid converting strings to numbers, and also the 1 string that you get when MySql returns a TRUE. So, I figure that it's all ok.. I'll use getters/setters. So I set up those methods in my class, for instance: ... __aNumber:Number; function set aNumber(newNum):Void { __aNumber = parseInt(newNum); //ie parseInt(12345); } function get aNumber():Number { return __aNumber; } ... Guess what happens... my setter basically gets overwritten with aNumber:String = 12345.. And my getter returns undefined because the setter never set __aNumber! I was under the assumption that the whole purpose of VO's was so that datatypes get typed properly.. But the way Flash works, it just overwrites the properties with what's returned. Now I know I can work around all this, but doesn't it really defeat the purpose of all of it all? Aren't Value Object's properties supposed to use the datatypes that they define? Am I missing something? All does work fine when the returning types correspond. When array('aNumber' = 123, 'aString' = 123JustaString, 'aBoolean' = true) is returned I do get those datatypes. There's no need to even set the datatypes as it really wont matter when flash gets a hold of it. Another thing, but it's minor, is that in this case: function onResult(myResult:ResultEvent) { var theResult:TesterVO = myResult.result; } Flash will error on compile. It really thinks that myResult.result will be of the datatype Object. Shouldn't they have left that untyped? Now before you think that my VO's really aren't getting mapped, they are. I've made sure of that, any methods I put in that class are accessible upon receiving data from the server.. Any thoughts? Am I missing something? I've been very happy with remoting, and have been using it with great success for some time now. But, I was really hoping that spending the time to get VO's working would be worth it. Boy was I disappointed. It just seems to be more work then what it's worth. ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com
Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...
On Tue, 2006-08-29 at 18:17 +0200, Martin Wood wrote: Unfortunately the player wont do data type conversion when deserializing the contents of an object returned via remoting. Bummer :( You have to make sure your types are right on the server so that when the remoting gateway constructs the amf data to send to flash it has the correct types already inside. Yes, when they are correct on the server first, they do come in properly. Obviously this is more of a pain from something like PHP than say Java as PHP has a much looser type system. nods in agreement For me the beauty of remoting is that you *do* get the datatypes that you create on the server sent to you in flash. Yes, I have had much success with remoting. But I have some old code that I'm working with that leaves a lot of things in strings. I was hoping that VO's and class mapping might help here, but apparently not. I think the other issue you are running into is that when the player creates the actionscript objects from the remoting data it populates the object *before* it runs the constructor. That is very good to know, I'll have to look into it more. I also had a brief look at eka's article and I'll need to do some more looking into this. This means that it doesnt care about any getters / setters and you have to be extra careful if you do anything in the constructor or are expecting parameters to your constructor. Yes again, I'll need to experiment to see exactly what's happening. If it is populating the object before the constructor is run, then perhaps I can use the constructor to do the type conversion if I do decide to do the conversion in Flash and not on the server. Thank you very much for your insight! Julius Turnmire wrote: Ok, I've got it working as advertised. I'm using VO's and my returned values are being mapped to my VO classes. But the problem is how they're mapped. ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com
Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...
Hello :) class mapping it's very cool ... but i prefere use EDEN serialisation/deseiialization :) More information : http://live.burrrn.com/wiki/eden you can use this tool in Javascript, AS1, AS2, AS3, ASP, .NET etc... and if you can't use remoting you can continue to keep your datas in .txt or other db files. You can find Eden sources in the buRRRn repository located here svn://live.buRRRn.com (port 3690) with your SVN client :) I use AMFPhp and EDEN in my works with Flex, Flash and FMS. EKA+ :) 2006/8/30, Julius Turnmire [EMAIL PROTECTED]: On Tue, 2006-08-29 at 18:17 +0200, Martin Wood wrote: Unfortunately the player wont do data type conversion when deserializing the contents of an object returned via remoting. Bummer :( You have to make sure your types are right on the server so that when the remoting gateway constructs the amf data to send to flash it has the correct types already inside. Yes, when they are correct on the server first, they do come in properly. Obviously this is more of a pain from something like PHP than say Java as PHP has a much looser type system. nods in agreement For me the beauty of remoting is that you *do* get the datatypes that you create on the server sent to you in flash. Yes, I have had much success with remoting. But I have some old code that I'm working with that leaves a lot of things in strings. I was hoping that VO's and class mapping might help here, but apparently not. I think the other issue you are running into is that when the player creates the actionscript objects from the remoting data it populates the object *before* it runs the constructor. That is very good to know, I'll have to look into it more. I also had a brief look at eka's article and I'll need to do some more looking into this. This means that it doesnt care about any getters / setters and you have to be extra careful if you do anything in the constructor or are expecting parameters to your constructor. Yes again, I'll need to experiment to see exactly what's happening. If it is populating the object before the constructor is run, then perhaps I can use the constructor to do the type conversion if I do decide to do the conversion in Flash and not on the server. Thank you very much for your insight! Julius Turnmire wrote: Ok, I've got it working as advertised. I'm using VO's and my returned values are being mapped to my VO classes. But the problem is how they're mapped. ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com
Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...
Yes! That's exactly what's happening! So now I can do this in my VO class: class ExampleVO { result:Object; // datatype will depend on what server returns! aString:String; aNumber:Number; function ExampleVO() { processResult(); } private function processResult() { aString = String(result.aString); aNumber = parseInt(result.aNumber); } } Or something along these lines if I choose to do datatype conversion in Flash. Most of what I do is preprocessed into an object in php, and with this pattern I can use my old code and the objects it returns and deal with them in Flash instead of spending much time with it on the server. Although it would be best to just make it right on the server in the first place. Again, thanks for this insight! Just knowing that the object is populated before the constructor is called and that those properties take precedence over my class explains a lot. Now I'm much better prepared to handle what remoting throws at me :) On Tue, 2006-08-29 at 18:17 +0200, Martin Wood wrote: Unfortunately the player wont do data type conversion when deserializing the contents of an object returned via remoting. You have to make sure your types are right on the server so that when the remoting gateway constructs the amf data to send to flash it has the correct types already inside. Obviously this is more of a pain from something like PHP than say Java as PHP has a much looser type system. For me the beauty of remoting is that you *do* get the datatypes that you create on the server sent to you in flash. I think the other issue you are running into is that when the player creates the actionscript objects from the remoting data it populates the object *before* it runs the constructor. This means that it doesnt care about any getters / setters and you have to be extra careful if you do anything in the constructor or are expecting parameters to your constructor. Julius Turnmire wrote: Ok, I've got it working as advertised. I'm using VO's and my returned values are being mapped to my VO classes. But the problem is how they're mapped. ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com
Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...
Very interesting! Thanks :) On Wed, 2006-08-30 at 01:12 +0200, eka wrote: Hello :) class mapping it's very cool ... but i prefere use EDEN serialisation/deseiialization :) More information : http://live.burrrn.com/wiki/eden you can use this tool in Javascript, AS1, AS2, AS3, ASP, .NET etc... and if you can't use remoting you can continue to keep your datas in .txt or other db files. You can find Eden sources in the buRRRn repository located here svn://live.buRRRn.com (port 3690) with your SVN client :) I use AMFPhp and EDEN in my works with Flex, Flash and FMS. EKA+ :) 2006/8/30, Julius Turnmire [EMAIL PROTECTED]: On Tue, 2006-08-29 at 18:17 +0200, Martin Wood wrote: Unfortunately the player wont do data type conversion when deserializing the contents of an object returned via remoting. Bummer :( You have to make sure your types are right on the server so that when the remoting gateway constructs the amf data to send to flash it has the correct types already inside. Yes, when they are correct on the server first, they do come in properly. Obviously this is more of a pain from something like PHP than say Java as PHP has a much looser type system. nods in agreement For me the beauty of remoting is that you *do* get the datatypes that you create on the server sent to you in flash. Yes, I have had much success with remoting. But I have some old code that I'm working with that leaves a lot of things in strings. I was hoping that VO's and class mapping might help here, but apparently not. I think the other issue you are running into is that when the player creates the actionscript objects from the remoting data it populates the object *before* it runs the constructor. That is very good to know, I'll have to look into it more. I also had a brief look at eka's article and I'll need to do some more looking into this. This means that it doesnt care about any getters / setters and you have to be extra careful if you do anything in the constructor or are expecting parameters to your constructor. Yes again, I'll need to experiment to see exactly what's happening. If it is populating the object before the constructor is run, then perhaps I can use the constructor to do the type conversion if I do decide to do the conversion in Flash and not on the server. Thank you very much for your insight! Julius Turnmire wrote: Ok, I've got it working as advertised. I'm using VO's and my returned values are being mapped to my VO classes. But the problem is how they're mapped. ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com ___ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com