Re: About Statege3D in Flex

2013-07-11 Thread Carlos Rovira
Hi,

many thanks to all responses. Very useful info, thoughts and discussion.

As we learn and think about new enhancements and evolutions of the actual
flex sdk, more difficult is to get viable solutions that make it backwards
compatible with the existing codebase of flex projects. I'd like the idea
of actual SDK going Stage3D but I think we would end with a frankenstein
that breaks compatibility and that will defeat the effort.

For what you guys sugest here, it seems that the best place to try to get
Stage3D support is in FlexJS. So we could try to introduce Starling here
and setup the initial bricks and see how far we reach, due to the fact that
FlexJS SWF version is already very basic, and hope that the projects that
Om mentioned would come by the way at some time in the future.

This will make FlexJS even more desirable since we well get HTML output and
SWF GPU.

I'll make more research about this topic in the following weeks as time
permits and will report if I get something valuable.



2013/7/10 jude flexcapaci...@gmail.com

 Hi Carlos,

 On first and second and third glance there seems to be a couple of ways to
 go about this.

 1. Replace Flash Display List with Starling Display List at compile time.
 We would create an alternative set of classes that had the same method and
 property signature as DisplayObjects and DisplayObjectContainers. Any
 instances where flash.display.DisplayObject was declared would have to be
 replaced by starling.display.DisplayObject. This could be done in the
 compiler and set with a flag.

 This may be a lot of work or a 80 / 20 type of thing. Where 80% is free off
 the bat and we spend much more time getting the remaining 20%. It depends
 on how much Starling matches API wise. A simple DisplayTree test such as Om
 suggested would give an initial idea of the amount of work.

 The cons are that it would require compiler work and the classes to match
 1:1. Although, we may be able to do a search and replace of the SWF after
 the fact rather than at compile time. Jangeroo may be doing something like
 this for replicating drawing calls on the JavaScript side.

 2. Create an abstraction layer for rendering. At startup register the class
 you want to use for rendering in the SingletonManager. All visual calls
 would go through that at their last step. The pros are a hot swappable
 rendering layer and possibly little to no compiler work. This would require
 tens of thousands of lines of code changes and may introduce complexity in
 testing and debugging.

 3. Add in a flag at native display list junction points to proxy drawing to
 the Starling DisplayList. All display objects are added by addChild call.
 So in the root base class right before native call we check for a preferred
 rendering target.

 /**
  *  @private
  *  This method allows access to the Player's native implementation
  *  of addChild(), which can be useful since components
  *  can override addChild() and thereby hide the native implementation.
  *  Note that this base method is final and cannot be overridden,
  *  so you can count on it to reflect what is happening at the player
 level.
  */
 mx_internal final function $addChild(child:DisplayObject):DisplayObject
 {
 return FlexGlobals.toStarling ? FlexGlobals.starling.addChild(this,
 child) : super.addChild(child);
 }

 The cons to this are many including possibly duplicate display list,
 dispatching events, etc. The graphics calls would also have to be patched
 and have to be done in skins and it's unclear how to handle FXG etc. This
 would be more of a test than a long term solution but would have smaller
 bite size steps and immediate results. I also bring up this option because,
 for me, in big projects like this the ability to see small incremental
 results usually inspires me to continue it to the next step.

 My two cents

 On Wed, Jul 10, 2013 at 11:38 AM, Carlos Rovira carlosrov...@apache.org
 wrote:

  Hi,
 
  from time to time people comes with the desire to see Flex running on
  Stage3D. I would want to recopile all the state of the art info about
 this
  topic and see if is possible and how much work it would require.
 
  I know people like J.Campos did two attempts and get valious research
 from
  that experience. There's things to get into account like accessibility.
 
  Please could people share in this thread the things they know in order to
  recopile all info? Is there some things to take into account that could
  make Stage3D not possible for Flex? Could we overpass it and make it
  possible? If it would be possible...it will brings real benefits?
 
  If some work is done in this topic, I'd propose to make focused in this
  particular thing and unlike FlexJS, here I will not try to break
  UIComponent in small parts, or  break compatibility. Even if it could be
  possible to have a global flag like enableStage3D to make our apps run
 on
  Stage3D if is true or remain in normal 

Re: About Statege3D in Flex

2013-07-11 Thread Avi Kessner
One thing you need to worry about when using starling is that the
eventdispatcher api is different.   Starling does not allow 'weakl
isteners'  or more accurately,  only allows them. Meaning the method
signature is different.
On 11 Jul 2013 18:27, Carlos Rovira carlos.rov...@codeoscopic.com wrote:

 Hi,

 many thanks to all responses. Very useful info, thoughts and discussion.

 As we learn and think about new enhancements and evolutions of the actual
 flex sdk, more difficult is to get viable solutions that make it backwards
 compatible with the existing codebase of flex projects. I'd like the idea
 of actual SDK going Stage3D but I think we would end with a frankenstein
 that breaks compatibility and that will defeat the effort.

 For what you guys sugest here, it seems that the best place to try to get
 Stage3D support is in FlexJS. So we could try to introduce Starling here
 and setup the initial bricks and see how far we reach, due to the fact that
 FlexJS SWF version is already very basic, and hope that the projects that
 Om mentioned would come by the way at some time in the future.

 This will make FlexJS even more desirable since we well get HTML output and
 SWF GPU.

 I'll make more research about this topic in the following weeks as time
 permits and will report if I get something valuable.



 2013/7/10 jude flexcapaci...@gmail.com

  Hi Carlos,
 
  On first and second and third glance there seems to be a couple of ways
 to
  go about this.
 
  1. Replace Flash Display List with Starling Display List at compile time.
  We would create an alternative set of classes that had the same method
 and
  property signature as DisplayObjects and DisplayObjectContainers. Any
  instances where flash.display.DisplayObject was declared would have to be
  replaced by starling.display.DisplayObject. This could be done in the
  compiler and set with a flag.
 
  This may be a lot of work or a 80 / 20 type of thing. Where 80% is free
 off
  the bat and we spend much more time getting the remaining 20%. It depends
  on how much Starling matches API wise. A simple DisplayTree test such as
 Om
  suggested would give an initial idea of the amount of work.
 
  The cons are that it would require compiler work and the classes to match
  1:1. Although, we may be able to do a search and replace of the SWF after
  the fact rather than at compile time. Jangeroo may be doing something
 like
  this for replicating drawing calls on the JavaScript side.
 
  2. Create an abstraction layer for rendering. At startup register the
 class
  you want to use for rendering in the SingletonManager. All visual calls
  would go through that at their last step. The pros are a hot swappable
  rendering layer and possibly little to no compiler work. This would
 require
  tens of thousands of lines of code changes and may introduce complexity
 in
  testing and debugging.
 
  3. Add in a flag at native display list junction points to proxy drawing
 to
  the Starling DisplayList. All display objects are added by addChild call.
  So in the root base class right before native call we check for a
 preferred
  rendering target.
 
  /**
   *  @private
   *  This method allows access to the Player's native implementation
   *  of addChild(), which can be useful since components
   *  can override addChild() and thereby hide the native
 implementation.
   *  Note that this base method is final and cannot be overridden,
   *  so you can count on it to reflect what is happening at the player
  level.
   */
  mx_internal final function
 $addChild(child:DisplayObject):DisplayObject
  {
  return FlexGlobals.toStarling ?
 FlexGlobals.starling.addChild(this,
  child) : super.addChild(child);
  }
 
  The cons to this are many including possibly duplicate display list,
  dispatching events, etc. The graphics calls would also have to be patched
  and have to be done in skins and it's unclear how to handle FXG etc. This
  would be more of a test than a long term solution but would have smaller
  bite size steps and immediate results. I also bring up this option
 because,
  for me, in big projects like this the ability to see small incremental
  results usually inspires me to continue it to the next step.
 
  My two cents
 
  On Wed, Jul 10, 2013 at 11:38 AM, Carlos Rovira carlosrov...@apache.org
  wrote:
 
   Hi,
  
   from time to time people comes with the desire to see Flex running on
   Stage3D. I would want to recopile all the state of the art info about
  this
   topic and see if is possible and how much work it would require.
  
   I know people like J.Campos did two attempts and get valious research
  from
   that experience. There's things to get into account like accessibility.
  
   Please could people share in this thread the things they know in order
 to
   recopile all info? Is there some things to take into account that could
   make Stage3D not possible for Flex? Could we overpass it and make it

Trying to mavenize project flex-asjs with IntelliJ fails

2013-07-11 Thread Carlos Rovira
Hi,

I'm trying to create a project in IntelliJ for flex-asjs with mavenized
SDK 4.9.1.1447119
But seems that IDEA can't generate Apache Flex SDK from pom.xml. It works
for Adobe Flex SDKs but not for Apache Flex.

I created a youtrack ticket:

http://youtrack.jetbrains.com/issues/IDEA#

I'm missing something or it's really a bug?

In the ticket I attached a draft of the pom.xml

If you get the same error please vote the ticket

--
Carlos Rovira


Re: Build failed in Jenkins: flex-sdk_asdoc #75

2013-07-11 Thread OmPrakash Muppirala
The Apache build servers are notorious for running out of disk space.  It
might as well be the OS ran out of page space in this case.

Thanks,
Om

On Wed, Jul 10, 2013 at 8:45 AM, Kessler CTR Mark J 
mark.kessler@usmc.mil wrote:

 Are they running multiple Jobs in Jenkins at the same time?


 -Mark

 -Original Message-
 From: Kessler CTR Mark J [mailto:mark.kessler@usmc.mil]
 Sent: Wednesday, July 10, 2013 11:42 AM
 To: dev@flex.apache.org
 Subject: RE: Build failed in Jenkins: flex-sdk_asdoc #75

 Well Java is the one being impacted... but something still has too much
 memory allocated.

 -Original Message-
 From: Erik de Bruin [mailto:e...@ixsoftware.nl]
 Sent: Wednesday, July 10, 2013 11:34 AM
 To: dev@flex.apache.org
 Subject: Re: Build failed in Jenkins: flex-sdk_asdoc #75

 That would be a Jenkins thing, right? Or a Java thing? Maybe something
 we can manipulate without having to bother the nice people of
 builds@a.o?

 EdB




Re: Trying to mavenize project flex-asjs with IntelliJ fails

2013-07-11 Thread Frédéric THOMAS

It has been answered http://youtrack.jetbrains.com/issue/IDEA-110462

Check my whiteboard (fthomas) to get a model of a pom.xml building for 
air/swf/swc using FM6 and a recent Apache Flex SDK (replace it by 4.9.1), 
that's an Air project but still, it might help.


-Fred

-Message d'origine- 
From: Carlos Rovira

Sent: Thursday, July 11, 2013 10:47 PM
To: dev@flex.apache.org
Subject: Trying to mavenize project flex-asjs with IntelliJ fails

Hi,

I'm trying to create a project in IntelliJ for flex-asjs with mavenized
SDK 4.9.1.1447119
But seems that IDEA can't generate Apache Flex SDK from pom.xml. It works
for Adobe Flex SDKs but not for Apache Flex.

I created a youtrack ticket:

http://youtrack.jetbrains.com/issues/IDEA#

I'm missing something or it's really a bug?

In the ticket I attached a draft of the pom.xml

If you get the same error please vote the ticket

--
Carlos Rovira 



Re: Trying to mavenize project flex-asjs with IntelliJ fails

2013-07-11 Thread Gary Young
I am still using Flexmojos 3.9+ Flex 4.6+AIR3.1, I want to use the most
recent version, it just won't work. I have to exclude old playerglobal.swc
and include new version in pom. -Gary


On Thu, Jul 11, 2013 at 7:43 PM, Frédéric THOMAS webdoubl...@hotmail.comwrote:

 It has been answered 
 http://youtrack.jetbrains.com/**issue/IDEA-110462http://youtrack.jetbrains.com/issue/IDEA-110462

 Check my whiteboard (fthomas) to get a model of a pom.xml building for
 air/swf/swc using FM6 and a recent Apache Flex SDK (replace it by 4.9.1),
 that's an Air project but still, it might help.

 -Fred

 -Message d'origine- From: Carlos Rovira
 Sent: Thursday, July 11, 2013 10:47 PM
 To: dev@flex.apache.org
 Subject: Trying to mavenize project flex-asjs with IntelliJ fails


 Hi,

 I'm trying to create a project in IntelliJ for flex-asjs with mavenized
 SDK 4.9.1.1447119
 But seems that IDEA can't generate Apache Flex SDK from pom.xml. It works
 for Adobe Flex SDKs but not for Apache Flex.

 I created a youtrack ticket:

 http://youtrack.jetbrains.com/**issues/IDEA#http://youtrack.jetbrains.com/issues/IDEA#

 I'm missing something or it's really a bug?

 In the ticket I attached a draft of the pom.xml

 If you get the same error please vote the ticket

 --
 Carlos Rovira



Re: Trying to mavenize project flex-asjs with IntelliJ fails

2013-07-11 Thread Frédéric THOMAS
The good links can be found here [1] [2], maybe someone would like to add 
them to the wiki.


[1]
Find  Use FM6:
https://oss.sonatype.org/index.html#nexus-search;gav~net.flexmojos.oss~flexmojos-maven-plugin~~~
https://git-wip-us.apache.org/repos/asf?p=flex-utilities.git;a=blob;f=mavenizer/README.txt;h=d962139fb50f787f608a6f84a943355153306edc;hb=HEAD
https://flexmojos.atlassian.net/wiki/display/FLEXMOJOS/Flexmojos+6.x

[2]
Building FM6:
https://github.com/chrisdutz/flexmojos
https://docs.sonatype.org/display/FLEXMOJOS/Building+Flexmojos+from+sources

And as I stated before, you can check my whiteboard (fthomas) to get a model 
of pom.xml built for air/swf/swc using FM6 and a recent Apache Flex SDK, 
that's an Air project but still, it might help.


-Fred

-Message d'origine- 
From: Gary Young

Sent: Friday, July 12, 2013 4:34 AM
To: dev@flex.apache.org
Subject: Re: Trying to mavenize project flex-asjs with IntelliJ fails

I am still using Flexmojos 3.9+ Flex 4.6+AIR3.1, I want to use the most
recent version, it just won't work. I have to exclude old playerglobal.swc
and include new version in pom. -Gary


On Thu, Jul 11, 2013 at 7:43 PM, Frédéric THOMAS 
webdoubl...@hotmail.comwrote:


It has been answered 
http://youtrack.jetbrains.com/**issue/IDEA-110462http://youtrack.jetbrains.com/issue/IDEA-110462


Check my whiteboard (fthomas) to get a model of a pom.xml building for
air/swf/swc using FM6 and a recent Apache Flex SDK (replace it by 4.9.1),
that's an Air project but still, it might help.

-Fred

-Message d'origine- From: Carlos Rovira
Sent: Thursday, July 11, 2013 10:47 PM
To: dev@flex.apache.org
Subject: Trying to mavenize project flex-asjs with IntelliJ fails


Hi,

I'm trying to create a project in IntelliJ for flex-asjs with mavenized
SDK 4.9.1.1447119
But seems that IDEA can't generate Apache Flex SDK from pom.xml. It works
for Adobe Flex SDKs but not for Apache Flex.

I created a youtrack ticket:

http://youtrack.jetbrains.com/**issues/IDEA#http://youtrack.jetbrains.com/issues/IDEA#

I'm missing something or it's really a bug?

In the ticket I attached a draft of the pom.xml

If you get the same error please vote the ticket

--
Carlos Rovira