Isaac, thank you for the informed response, I believe that was exactly
what I was looking for.

Best regards,

Jake

On Apr 7, 3:27 pm, Isaac Truett <[email protected]> wrote:
> Jake,
>
> You would have to create a class org.eclipse.swt.widgets.Canvas such
> that it is GWT-compatible. That means only using emulated JRE classes
> (String, collections, etc.). Any class required for the Canvas class
> API has to be implemented in a GWT-compatible manner as well. This
> transitive dependency is what really kills you. If you get to a point
> where you have to use a non-emulated JRE class (e.g., java.io.*
> (almost)), you're hosed (I believe this was essentially Ian's point).
>
> Assuming you manage to implement the entire API, you create a module
> file (gwt.xml) that includes the source you just wrote, inherit that
> module in your GWT app, and enjoy.
>
> For more on JRE emulation, see:
>
> http://code.google.com/docreader/#p=google-web-toolkit-doc-1-5&s=goog...
>
> - Isaac
>
> On Tue, Apr 7, 2009 at 3:14 PM, Jake <[email protected]> wrote:
>
> > I feel like I'm not expressing myself clearly. Let's just focus on the
> > reduced case:
>
> > import org.eclipse.swt.widgets.Canvas;
>
> > public class foo {
>
> > }
>
> > Right now, if I try to run this through GWT, it will throw an error
> > because it can't compile Canvas and all of its dependencies. This is
> > to be expected. So what I would like is to roll my own Canvas class
> > which extends GWT's Widget class, and have that be used instead, but
> > in such a way that I don't have to touch the existing program's source
> > code.
>
> > Ian, you seem to be suggesting that I need to hack this into the
> > internals of GWT itself, and try to push it upstream. I feel like
> > there should be a way to do this without having modify GWT internals,
> > because this would allow certain applications (not all of them) that
> > leverage native GUI toolkits to be compiled directly to a browser-
> > based version, without having to port them to a GWT-friendly set of
> > libraries. This would be a very powerful feature, but it may not
> > exist. If I could just get confirmation on this, I would appreciate
> > it.
>
> > Thanks,
>
> > Jake
>
> > On Apr 7, 2:38 pm, Ian Bambury <[email protected]> wrote:
> >> GWT isn't Java. It just uses Java syntax so that Java books are useful, and
> >> things like Eclipse work for it.
> >> GWT code becomes JavaScript. It is never at any point Java.
>
> >> A very simple compiler might recognise '"Window.alert(" and translate it to
> >> '"document.alert("
>
> >> If you whole program consists of Window.alert("Hello"); then it will be OK.
> >> Anything else will fail.
>
> >> The Google team have emulated many other commands and structures, but not
> >> all of them: some are obscure and therefore not high enough up the priority
> >> list, and some are impossible because, like threading, JS just doesn't do
> >> that.
>
> >> It would be an impossible task to emulate every possible class in every 
> >> Java
> >> library in existence. And would take for ever.
>
> >> So if it ain't emulated, it ain't gonna work because the compiler will 
> >> issue
> >> a polite and rather technical version of 'WTF?'
>
> >> And just throwing any old java program into the GWT compiler is, pretty
> >> much, pointless.
>
> >> But if you really want to help Google and emulate 
> >> rg.eclipse.swt.widgets.Canvas
> >> for GWT, then I'm sure they (and many others) will be eternally grateful 
> >> for
> >> at least a week or two :-)
>
> >> If so, troll your little old lallies over to the very 
> >> bonahttp://groups.google.com/group/Google-Web-Toolkit-Contributors
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/Google-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to