The context of this article is how I implemented a simple game using the Google Web Toolkit. That's really just an excuse I use for talking about how to implement new widgets using GWT. I also want to make a few points about GWT's efficiency as a UI toolkit and I will touch briefly on GWT's many layout mechanisms. I'll try to do this without wasting too much time or space.
There are already a number of GWT tutorials available. I list some here and you can find more by following the GWT links on my main page. One in particular is a very good place to begin your GWT UI education.
I have a problem with these other tutorials, though, which is that they focus entirely on the technology. That's not a criticism, the world needs technology tutorials, but articles that focus entirely on technology do so at the expense of code style and organization. This means that the techniques they present do not scale to building practical applications. This tutorial is still pretty basic, but I hope that it takes you a small step beyond the other tutorials by showing you how you can begin to write a real GWT UI.
SameGame
SameGame is an old computer game dating to 1985. The objective of the game is to remove groups of blocks of the same color from a rectangular grid. The scoring is simple. For every group of n blocks that you remove you earn (n-2)(n-2) points. To score well you must plan your actions to remove the largest groups as possible. I find the game to be just as addictive as Tetris, only without the need for good reflexes (which I lack).