On Jun 5, 2015 3:12 AM, "Michael Schmalle" <teotigraphix...@gmail.com>
wrote:
>
> @Om ... SVG, this should get you excited. :)
>
> http://snag.gy/xEpfa.jpg
>
> Mike

Fantastic!   What a great way to stay the day :-)

When will we able to start testing all this?

Thanks,
Om

>
> On Fri, Jun 5, 2015 at 6:02 AM, Michael Schmalle <
teotigraphix...@gmail.com>
> wrote:
>
> > BTW I need to brush up on canvas but I see;
> >
> > So I assume the HTMLCanvasElement.getContext() passes a
> > CanvasRenderingContext2D correct?
> >
> > I can't wait to get out of this compiler stuff and actually try to test
> > some of this stuff in the browser. :)
> >
> > Mike
> >
> >
> > public class CanvasRenderingContext2D {
> > ...
> >     /**
> >      * @see html5
> >      */
> >     native public var canvas:HTMLCanvasElement;
> > ...
> > }
> >
> >
> >
> > public class HTMLCanvasElement extends HTMLElement {
> >
> >     native public function HTMLCanvasElement();
> >
> >     /**
> >      * @see html5
> >      */
> >     native public var height:Number;
> >
> >     /**
> >      * @see html5
> >      */
> >     native public var width:Number;
> >
> >     /**
> >      * @see html5
> >      */
> >     native public function toDataURL(opt_type:String = null,
> > ...var_args):String;
> >
> >     /**
> >      * @see html5
> >      */
> >     native public function getContext(contextId:String, opt_args:Object
=
> > null):Object;
> >
> > }
> >
> >
> >
> > On Fri, Jun 5, 2015 at 5:50 AM, Michael Schmalle <
> > teotigraphix...@gmail.com> wrote:
> >
> >>
> >>
> >> On Fri, Jun 5, 2015 at 12:39 AM, OmPrakash Muppirala <
> >> bigosma...@gmail.com> wrote:
> >>
> >>> Fantastic work,  Mike!
> >>>
> >>> I dont see any SVG elements, is that part of something other spec?
> >>>
> >>
> >> Haven't got that far yet, was busy getting inheritance and edge cases
> >> fixed with the base DOM stuff.
> >>
> >> I have looked through the closure/externs and it doesn't look like they
> >> have an SVG.js. If you now, you will need to find one or write it. :)
> >>
> >>
> >>>
> >>> On that line,  how would one get Canvas, Webgl, etc.?
> >>>
> >>
> >>
> >> I think Canavs is HTMLCanvasNode which is in the html5.js externs.
> >>
> >> WebGL,
> >> https://github.com/google/closure-compiler/blob/master/externs/webgl.js
> >>
> >> Yeah that is today, I will post up when I get them in.
> >>
> >> Mike
> >>
> >>
> >>
> >>>
> >>> Thanks,
> >>> Om
> >>> On Jun 4, 2015 5:31 PM, "Josh Tynjala" <joshtynj...@gmail.com> wrote:
> >>>
> >>> > Agreed! Great stuff, Mike.
> >>> >
> >>> > - Josh
> >>> >
> >>> > On Thu, Jun 4, 2015 at 2:07 PM, Alex Harui <aha...@adobe.com> wrote:
> >>> >
> >>> > > Amazing!
> >>> > >
> >>> > > On 6/4/15, 2:04 PM, "Michael Schmalle" <teotigraphix...@gmail.com>
> >>> > wrote:
> >>> > >
> >>> > > >Well so far I have got the below compiling into .as classes and
> >>> > interfaces
> >>> > > >using the following externals files;
> >>> > > >
> >>> > > >There is a definite order these need to be parsed in, I am still
> >>> > figuring
> >>> > > >them out. I plan on adding in the asdocs, the version of JS the
API
> >>> was
> >>> > > >introduced in.
> >>> > > >
> >>> > > >Mike
> >>> > > >
> >>> > > >html5.js
> >>> > > >missing.js
> >>> > > >w3c_css.js
> >>> > > >w3c_css3d.js
> >>> > > >w3c_dom1.js
> >>> > > >w3c_dom2.js
> >>> > > >w3c_dom3.js
> >>> > > >w3c_event.js
> >>> > > >w3c_range.js
> >>> > > >
> >>> > > >
> >>> > > >Attr.as
> >>> > > >CanvasGradient.as
> >>> > > >CanvasPattern.as
> >>> > > >CanvasRenderingContext2D.as
> >>> > > >CaretPosition.as
> >>> > > >CDATASection.as
> >>> > > >CharacterData.as
> >>> > > >ClientInformation.as
> >>> > > >ClientRect.as
> >>> > > >ClientRectList.as
> >>> > > >Comment.as
> >>> > > >Counter.as
> >>> > > >CSSCharsetRule.as
> >>> > > >CSSFontFaceRule.as
> >>> > > >CSSImportRule.as
> >>> > > >CSSInterface.as
> >>> > > >CSSMatrix.as
> >>> > > >CSSMediaRule.as
> >>> > > >CSSPageRule.as
> >>> > > >CSSPrimitiveValue.as
> >>> > > >CSSProperties.as
> >>> > > >CSSRule.as
> >>> > > >CSSRuleList.as
> >>> > > >CSSStyleDeclaration.as
> >>> > > >CSSStyleRule.as
> >>> > > >CSSStyleSheet.as
> >>> > > >CSSUnknownRule.as
> >>> > > >CSSValue.as
> >>> > > >CSSValueList.as
> >>> > > >CustomEvent.as
> >>> > > >Database.as
> >>> > > >DatabaseCallback.as
> >>> > > >DataTransfer.as
> >>> > > >DedicatedWorkerGlobalScope.as
> >>> > > >Document.as
> >>> > > >DocumentCSS.as
> >>> > > >DocumentEvent.as
> >>> > > >DocumentFragment.as
> >>> > > >DocumentRange.as
> >>> > > >DocumentStyle.as
> >>> > > >DocumentType.as
> >>> > > >DOMApplicationCache.as
> >>> > > >DOMConfiguration.as
> >>> > > >DOMError.as
> >>> > > >DOMErrorHandler.as
> >>> > > >DOMException.as
> >>> > > >DOMImplementation.as
> >>> > > >DOMImplementationCSS.as
> >>> > > >DOMImplementationList.as
> >>> > > >DOMImplementationSource.as
> >>> > > >DOMLocator.as
> >>> > > >DOMStringList.as
> >>> > > >DOMTokenList.as
> >>> > > >DragEvent.as
> >>> > > >Element.as
> >>> > > >ElementCSSInlineStyle.as
> >>> > > >Entity.as
> >>> > > >EntityReference.as
> >>> > > >ErrorEvent.as
> >>> > > >Event.as
> >>> > > >EventListener.as
> >>> > > >EventTarget.as
> >>> > > >ExceptionCode.as
> >>> > > >FileList.as
> >>> > > >FontFace.as
> >>> > > >FontFaceSet.as
> >>> > > >HashChangeEvent.as
> >>> > > >HTMLAnchorElement.as
> >>> > > >HTMLAppletElement.as
> >>> > > >HTMLAreaElement.as
> >>> > > >HTMLAudioElement.as
> >>> > > >HTMLBaseElement.as
> >>> > > >HTMLBaseFontElement.as
> >>> > > >HTMLBodyElement.as
> >>> > > >HTMLBRElement.as
> >>> > > >HTMLButtonElement.as
> >>> > > >HTMLCanvasElement.as
> >>> > > >HTMLCollection.as
> >>> > > >HTMLContentElement.as
> >>> > > >HTMLDetailsElement.as
> >>> > > >HTMLDialogElement.as
> >>> > > >HTMLDirectoryElement.as
> >>> > > >HTMLDivElement.as
> >>> > > >HTMLDListElement.as
> >>> > > >HTMLDocument.as
> >>> > > >HTMLElement.as
> >>> > > >HTMLEmbedElement.as
> >>> > > >HTMLFieldSetElement.as
> >>> > > >HTMLFontElement.as
> >>> > > >HTMLFormElement.as
> >>> > > >HTMLFrameElement.as
> >>> > > >HTMLFrameSetElement.as
> >>> > > >HTMLHeadElement.as
> >>> > > >HTMLHeadingElement.as
> >>> > > >HTMLHRElement.as
> >>> > > >HTMLHtmlElement.as
> >>> > > >HTMLIFrameElement.as
> >>> > > >HTMLImageElement.as
> >>> > > >HTMLInputElement.as
> >>> > > >HTMLIsIndexElement.as
> >>> > > >HTMLLabelElement.as
> >>> > > >HTMLLegendElement.as
> >>> > > >HTMLLIElement.as
> >>> > > >HTMLLinkElement.as
> >>> > > >HTMLMapElement.as
> >>> > > >HTMLMediaElement.as
> >>> > > >HTMLMenuElement.as
> >>> > > >HTMLMenuItemElement.as
> >>> > > >HTMLMetaElement.as
> >>> > > >HTMLModElement.as
> >>> > > >HTMLObjectElement.as
> >>> > > >HTMLOListElement.as
> >>> > > >HTMLOptGroupElement.as
> >>> > > >HTMLOptionElement.as
> >>> > > >HTMLOptionsCollection.as
> >>> > > >HTMLParagraphElement.as
> >>> > > >HTMLParamElement.as
> >>> > > >HTMLPictureElement.as
> >>> > > >HTMLPreElement.as
> >>> > > >HTMLQuoteElement.as
> >>> > > >HTMLScriptElement.as
> >>> > > >HTMLSelectElement.as
> >>> > > >HTMLShadowElement.as
> >>> > > >HTMLSourceElement.as
> >>> > > >HTMLStyleElement.as
> >>> > > >HTMLTableCaptionElement.as
> >>> > > >HTMLTableCellElement.as
> >>> > > >HTMLTableColElement.as
> >>> > > >HTMLTableElement.as
> >>> > > >HTMLTableRowElement.as
> >>> > > >HTMLTableSectionElement.as
> >>> > > >HTMLTemplateElement.as
> >>> > > >HTMLTextAreaElement.as
> >>> > > >HTMLTitleElement.as
> >>> > > >HTMLUListElement.as
> >>> > > >HTMLVideoElement.as
> >>> > > >Image.as
> >>> > > >ImageData.as
> >>> > > >KeyboardEvent.as
> >>> > > >LinkStyle.as
> >>> > > >MediaError.as
> >>> > > >MediaList.as
> >>> > > >MediaQueryList.as
> >>> > > >MediaQueryListListener.as
> >>> > > >MessageChannel.as
> >>> > > >MessageEvent.as
> >>> > > >MessagePort.as
> >>> > > >MouseEvent.as
> >>> > > >MSCSSMatrix.as
> >>> > > >MutationEvent.as
> >>> > > >MutationObserver.as
> >>> > > >MutationRecord.as
> >>> > > >NamedNodeMap.as
> >>> > > >NameList.as
> >>> > > >Node.as
> >>> > > >NodeFilter.as
> >>> > > >NodeIterator.as
> >>> > > >NodeList.as
> >>> > > >Notation.as
> >>> > > >openDatabase.as
> >>> > > >PageTransitionEvent.as
> >>> > > >PopStateEvent.as
> >>> > > >postMessage.as
> >>> > > >ProcessingInstruction.as
> >>> > > >ProgressEvent.as
> >>> > > >Range.as
> >>> > > >RangeException.as
> >>> > > >Rect.as
> >>> > > >RelatedEvent.as
> >>> > > >RGBColor.as
> >>> > > >Screen.as
> >>> > > >ShadowRoot.as
> >>> > > >SharedWorker.as
> >>> > > >SharedWorkerGlobalScope.as
> >>> > > >SQLError.as
> >>> > > >SQLResultSet.as
> >>> > > >SQLResultSetRowList.as
> >>> > > >SQLTransaction.as
> >>> > > >StyleSheet.as
> >>> > > >StyleSheetList.as
> >>> > > >Text.as
> >>> > > >TextMetrics.as
> >>> > > >TextTrack.as
> >>> > > >TextTrackCue.as
> >>> > > >TextTrackCueList.as
> >>> > > >TextTrackList.as
> >>> > > >TimeRanges.as
> >>> > > >TreeWalker.as
> >>> > > >TypeInfo.as
> >>> > > >UIEvent.as
> >>> > > >UserDataHandler.as
> >>> > > >ValidityState.as
> >>> > > >ViewCSS.as
> >>> > > >VTTCue.as
> >>> > > >WebKitCSSMatrix.as
> >>> > > >WebSocket.as
> >>> > > >WebWorker.as
> >>> > > >Window.as
> >>> > > >Worker.as
> >>> > > >WorkerGlobalScope.as
> >>> > > >WorkerLocation.as
> >>> > > >XMLHttpRequestEventTarget.as
> >>> > > >XMLHttpRequestUpload.as
> >>> > > >
> >>> > > >
> >>> > > >
> >>> > > >On Thu, Jun 4, 2015 at 3:13 PM, Michael Schmalle
> >>> > > ><teotigraphix...@gmail.com>
> >>> > > >wrote:
> >>> > > >
> >>> > > >> Yeah sorry to confuse you, the Velocity stuff doesn't matter,
for
> >>> that
> >>> > > >> matter my asdoc framework I wrote doesn't(it was just showing I
> >>> had
> >>> > all
> >>> > > >> this working in the context of Falcon), we just need the
> >>> > ASDocTokenizer
> >>> > > >>to
> >>> > > >> tokenize the comment data given to the ASDocDelegate.
> >>> > > >>
> >>> > > >> Mike
> >>> > > >>
> >>> > > >> On Thu, Jun 4, 2015 at 3:12 PM, Michael Schmalle <
> >>> > > >> teotigraphix...@gmail.com> wrote:
> >>> > > >>
> >>> > > >>> The way I did it was, I did exactly what you did, implemented
the
> >>> > > >>> ASDocDelegate and saved the tokes as it parsed all the files.
> >>> > > >>>
> >>> > > >>> Then I used the token String like you in the ASDocTokenizer to
> >>> parse
> >>> > > >>>the
> >>> > > >>> loop I showed you above.
> >>> > > >>>
> >>> > > >>> I would add the DocTag and stuff if you can get the
> >>> ASDocTokenizer
> >>> > > >>> working like how I have it in the code above. I already wrote
an
> >>> API
> >>> > > >>>for
> >>> > > >>> easy access to the tags and comment in an ASDocCOmment class
that
> >>> > has a
> >>> > > >>> list of DocTags.
> >>> > > >>>
> >>> > > >>> Mike
> >>> > > >>>
> >>> > > >>> On Thu, Jun 4, 2015 at 3:09 PM, Alex Harui <aha...@adobe.com>
> >>> wrote:
> >>> > > >>>
> >>> > > >>>> For this exercise though, we don’t care about the output as
> >>> Velocity
> >>> > > >>>>or
> >>> > > >>>> XSL right?  All you want is ASDocTokens in the AST?  IIRC, in
> >>> Falcon
> >>> > > >>>>you
> >>> > > >>>> retrieve ASDoc comments via node.getASDocComment() and get an
> >>> > > >>>> ASDocComment
> >>> > > >>>> instance.  Do you want the Token to be the root of a
mini-tree
> >>> of
> >>> > > >>>>parsed
> >>> > > >>>> nodes?
> >>> > > >>>>
> >>> > > >>>> -Alex
> >>> > > >>>>
> >>> > > >>>>
> >>> > > >>>> On 6/4/15, 11:47 AM, "Michael Schmalle" <
> >>> teotigraphix...@gmail.com>
> >>> > > >>>> wrote:
> >>> > > >>>>
> >>> > > >>>> >I actually wrote a WHOLE NEW asdoc program that uses Apache
> >>> > Velocity
> >>> > > >>>> >templates instead of XSL.
> >>> > > >>>> >
> >>> > > >>>> >That DocTag is my class.
> >>> > > >>>> >
> >>> > > >>>> >Mike
> >>> > > >>>> >
> >>> > > >>>> >On Thu, Jun 4, 2015 at 2:45 PM, Alex Harui <aha...@adobe.com
>
> >>> > wrote:
> >>> > > >>>> >
> >>> > > >>>> >> I don’t see any signs of ASDoc support in flex-falcon.  I
see
> >>> > > >>>> >> ASDocTokenizer and ASDocToken, but no ASDOC.java that
would
> >>> be
> >>> > > >>>> >>equivalent
> >>> > > >>>> >> to MXMLC.java and have a main() method.  The current Flex
> >>> SDK has
> >>> > > >>>>an
> >>> > > >>>> >> ASDoc.jar.  Shouldn’t we have these pieces? Do you have
them
> >>> > around
> >>> > > >>>> >> somewhere?   Otherwise I will try to quickly create them.
> >>> > > >>>> >>
> >>> > > >>>> >> -Alex
> >>> > > >>>> >>
> >>> > > >>>> >> On 6/4/15, 11:36 AM, "Michael Schmalle" <
> >>> > teotigraphix...@gmail.com
> >>> > > >
> >>> > > >>>> >>wrote:
> >>> > > >>>> >>
> >>> > > >>>> >> >BTW, the loop always happens at the VERY end of the
> >>> comment, so
> >>> > > >>>>when
> >>> > > >>>> >>you
> >>> > > >>>> >> >get to the end the(the last call of next() that should
> >>> return
> >>> > > >>>>null);
> >>> > > >>>> >> >
> >>> > > >>>> >> >tok = tokenizer.next();
> >>> > > >>>> >> >
> >>> > > >>>> >> >never returns, it gets stuck trying to exit.
> >>> > > >>>> >> >
> >>> > > >>>> >> >Mike
> >>> > > >>>> >> >
> >>> > > >>>> >> >On Thu, Jun 4, 2015 at 2:34 PM, Michael Schmalle
> >>> > > >>>> >> ><teotigraphix...@gmail.com>
> >>> > > >>>> >> >wrote:
> >>> > > >>>> >> >
> >>> > > >>>> >> >> I posted about this a couple weeks ago and I tried
> >>> recompiling
> >>> > > >>>>with
> >>> > > >>>> >> >>JFlex
> >>> > > >>>> >> >> 1.5 I think, the older version and still had the
problem.
> >>> > > >>>> >> >>
> >>> > > >>>> >> >> Maybe I messed up something but I tried with my same
asdoc
> >>> > code
> >>> > > >>>> when
> >>> > > >>>> >>I
> >>> > > >>>> >> >> fixed the build for the FlexJS asdocs. I wanted to see
it
> >>> work
> >>> > > >>>>with
> >>> > > >>>> >>my
> >>> > > >>>> >> >> version of a documentor.
> >>> > > >>>> >> >>
> >>> > > >>>> >> >> I think IIRC, I actually tried a simple test case and
it
> >>> would
> >>> > > >>>> work.
> >>> > > >>>> >> >>
> >>> > > >>>> >> >> I have code that uses the tokenizer;
> >>> > > >>>> >> >>
> >>> > > >>>> >> >>
> >>> > > >>>> >> >>     public void compile()
> >>> > > >>>> >> >>     {
> >>> > > >>>> >> >>         if (token == null)
> >>> > > >>>> >> >>             return;
> >>> > > >>>> >> >>
> >>> > > >>>> >> >>         String data = token.getText();
> >>> > > >>>> >> >>         ASDocTokenizer tokenizer = new
> >>> ASDocTokenizer(false);
> >>> > > >>>> >> >>         tokenizer.setReader(new StringReader(data));
> >>> > > >>>> >> >>         ASDocToken tok = tokenizer.next();
> >>> > > >>>> >> >>         boolean foundDescription = false;
> >>> > > >>>> >> >>         DocTag pendingTag = null;
> >>> > > >>>> >> >>
> >>> > > >>>> >> >>         try
> >>> > > >>>> >> >>         {
> >>> > > >>>> >> >>             while (tok != null)
> >>> > > >>>> >> >>             {
> >>> > > >>>> >> >>                 if (!foundDescription
> >>> > > >>>> >> >>                         && tok.getType() ==
> >>> > > >>>> >> >>ASTokenTypes.TOKEN_ASDOC_TEXT)
> >>> > > >>>> >> >>                 {
> >>> > > >>>> >> >>                     description = tok.getText();
> >>> > > >>>> >> >>                 }
> >>> > > >>>> >> >>                 else
> >>> > > >>>> >> >>                 {
> >>> > > >>>> >> >>                     // do tags
> >>> > > >>>> >> >>                     if (tok.getType() ==
> >>> > > >>>> >>ASTokenTypes.TOKEN_ASDOC_TAG)
> >>> > > >>>> >> >>                     {
> >>> > > >>>> >> >>                         if (pendingTag != null)
> >>> > > >>>> >> >>                         {
> >>> > > >>>> >> >>                             addTag(pendingTag);
> >>> > > >>>> >> >>                             pendingTag = null;
> >>> > > >>>> >> >>                         }
> >>> > > >>>> >> >>                         pendingTag = new
> >>> > > >>>> >> >> DocTag(tok.getText().substring(1));
> >>> > > >>>> >> >>                     }
> >>> > > >>>> >> >>                     else if (tok.getType() ==
> >>> > > >>>> >> >> ASTokenTypes.TOKEN_ASDOC_TEXT)
> >>> > > >>>> >> >>                     {
> >>> > > >>>> >> >>
> >>> > > >>>>pendingTag.setDescription(tok.getText());
> >>> > > >>>> >> >>                         addTag(pendingTag);
> >>> > > >>>> >> >>                         pendingTag = null;
> >>> > > >>>> >> >>                     }
> >>> > > >>>> >> >>                 }
> >>> > > >>>> >> >>
> >>> > > >>>> >> >>                 foundDescription = true;
> >>> > > >>>> >> >>
> >>> > > >>>> >> >>                 tok = tokenizer.next();
> >>> > > >>>> >> >>             }
> >>> > > >>>> >> >>         }
> >>> > > >>>> >> >>         catch (Exception e)
> >>> > > >>>> >> >>         {
> >>> > > >>>> >> >>             e.printStackTrace();
> >>> > > >>>> >> >>         }
> >>> > > >>>> >> >>     }
> >>> > > >>>> >> >>
> >>> > > >>>> >> >> Mike
> >>> > > >>>> >> >>
> >>> > > >>>> >> >>
> >>> > > >>>> >> >> On Thu, Jun 4, 2015 at 2:30 PM, Alex Harui <
> >>> aha...@adobe.com>
> >>> > > >>>> wrote:
> >>> > > >>>> >> >>
> >>> > > >>>> >> >>>
> >>> > > >>>> >> >>>
> >>> > > >>>> >> >>> On 6/4/15, 11:23 AM, "Michael Schmalle" <
> >>> > > >>>> teotigraphix...@gmail.com>
> >>> > > >>>> >> >>> wrote:
> >>> > > >>>> >> >>> >>Hmm.  Maybe I should spend some time looking into
> >>> fixing
> >>> > > >>>> >> >>>ASDocTokenizer?
> >>> > > >>>> >> >>> >> Was the problem that it didn’t work on every AS
file
> >>> we
> >>> > > >>>>current
> >>> > > >>>> >> >>>have?
> >>> > > >>>> >> >>> >>
> >>> > > >>>> >> >>> >
> >>> > > >>>> >> >>> >
> >>> > > >>>> >> >>> >It doesn't work on anything, there is an infinite
loop
> >>> in
> >>> > the
> >>> > > >>>> >>scanner
> >>> > > >>>> >> >>> that
> >>> > > >>>> >> >>> >is created by JFlex, the RawASDocTokenizer is broken.
> >>> > > >>>> >> >>> >
> >>> > > >>>> >> >>> >What is weird is I was using the SAME code base when
I
> >>> wrote
> >>> > > >>>>the
> >>> > > >>>> >>asdoc
> >>> > > >>>> >> >>> >documenter I have 2 years ago and it worked fine.
> >>> > > >>>> >> >>>
> >>> > > >>>> >> >>> We upgraded the version of JFlex, IIRC.  I’ll take a
> >>> look.
> >>> > > >>>>What
> >>> > > >>>> >>setup
> >>> > > >>>> >> >>>did
> >>> > > >>>> >> >>> you have for trying it?  Did you run it on the Flex
SDK
> >>> or
> >>> > > >>>>FlexJS
> >>> > > >>>> >>SDK
> >>> > > >>>> >> >>>or
> >>> > > >>>> >> >>> did it even loop on a simple test case?
> >>> > > >>>> >> >>>
> >>> > > >>>> >> >>> -Alex
> >>> > > >>>> >> >>>
> >>> > > >>>> >> >>>
> >>> > > >>>> >> >>
> >>> > > >>>> >>
> >>> > > >>>> >>
> >>> > > >>>>
> >>> > > >>>>
> >>> > > >>>
> >>> > > >>
> >>> > >
> >>> > >
> >>> >
> >>>
> >>
> >>
> >

Reply via email to