3 Replies Latest reply on Sep 26, 2012 12:32 PM by Triynko

    CS4: "Document Class" cannot reside in SWC?



      I have a class called "my.customclass.Dog" which lives in an SWC file.


      I started a new FLA file, and go to "publish settings" -> AS 3. Under the "libraries tab" I point to my SWC file which contains the "my.customclass.Dog" class. I then set my Document Class equal to "my.customclass.Dog" and I also tried "Dog". In BOTH cases I get "A definition of for the document class cannot be found in the classpath".....


      The "Dog" class does exist in my SWC, because in the first frame of my FLA I can successfully import it and construct a new instance of it.


      Is my need of specifing a class that resides in an SWC as the "Document Class" not possible?



        • 1. Re: CS4: "Document Class" cannot reside in SWC?
          borfgordon Level 1

          Is there anyone on here from Adobe who might be able to answer this?

          • 2. Re: CS4: "Document Class" cannot reside in SWC?

            Adobe! it's 2011 and CS5.5 but the issue still exists!?

            the same is true for Class property of Library Symbols.

            BaseClass can be found from SWC but not Class or DocumentClass.


            Please, can someone atleast explain the source of such strange limitation?

            • 3. Re: CS4: "Document Class" cannot reside in SWC?

              Incredible.  STILL NOT FIXED IN CS6.


              Architecture example.  Educational or Gaming Software.  Main program.  Thousands of "Lesson" or "Levels"s.  Cannot define "Lesson" in main movie's SWC and reference from Lesson1, Lesson2, etc., because Flash CS6 doesn't allow document class of "LessonX.swf" to reside in a linked SWC of the main movie.


              Instead, one must create and maintain hundreds of "dummy" lesson document classes that do absolutely nothing but inherit directly from the "Lesson" class in the SWC.  Why the hel1 I cannot just assign the document class directly to the "Lesson" class in the SWC is PURE NEGLECT on Adobe's part, IMO.


              The class and the symbol contents are separate.  Their instantiation is separate.  This is an under-the-hood problem that hasn't' been fixed.  The linkage between library symbol contents and classes is ill-defined.  This is why, for example, you cannot assign classes to library symbols which extend each other and expect the symbols contents to stack when you instantiate the most-derived symbol as you'd expect from an inheritance chain.  Instead, only the most-derived class's symbol contents are included, and the base class, which are linked to symbols as well, do not have their symbol contents instantiated.  It's incorrectly functioning, because instantiating any of those classes individually is synonymous with constructing their symbol contents, yet when instantiated as base classes, the content is simply omitted.


              As far as I'm concerned, the feature is broken.  I cannot use the class I need to use via a linked SWC, so the feature is broken.  I'm not paying for it until it's fixed, just like I didn't pay for CS4 when I needed the "unloadAndStop" command to properly unload Captivate files I was told I could load in CS3, but couldn't because the "unload" method didn't completely unload the loaded content.  I'm not paying for falsely advertised features, and since I'm not being compensated for the hundreds of hours I have to spend working around those falsely advertised and broken features, I'm not paying for them.  Please fix these critical issues that are making and breaking Flash itself as a viable development platform.