Hey Jake, I've never used the SWT Canvas, but if it's anything like the <canvas> tag, you might want to check out the GWTCanvas in the incubator: http://code.google.com/docreader/#p=google-web-toolkit-incubator&s=google-web-toolkit-incubator&t=GWTCanvas
Also, Vitali, there's a GWT library for accessing gears: http://code.google.com/p/gwt-google-apis/ Regards, -- Arthur Kalmenson On Tue, Apr 7, 2009 at 3:35 PM, Jake <[email protected]> wrote: > > 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 -~----------~----~----~----~------~----~------~--~---
