def init(): text="GWT includes the standard complement of text-entry widgets, each of which " text+="supports keyboard and selection events you can use to control text entry. " text+="In particular, notice that the selection range for each widget is " text+="updated whenever you press a key. " text+="This can be a bit tricky on some browsers, but the GWT class library " text+="takes care of the plumbing for you automatically." return SinkInfo("Text", text, Text)
def init(): text = """This page demonstrates some of the basic GWT panels, each of which arranges its contained widgets differently. These panels are designed to take advantage of the browser's built-in layout mechanics, which keeps the user interface snappy and helps your AJAX code play nicely with existing HTML. On the other hand, if you need pixel-perfect control, you can tweak things at a low level using the <code>DOM</code> class.""" return SinkInfo("Layouts", text, Layouts)
def init(): text="This page demonstrates GWT's built-in support for in-page " text+="popups. The first is a very simple informational popup that closes " text+="itself automatically when you click off of it. The second is a more " text+="complex draggable dialog box. If you're wondering why there's " text+="a list box at the bottom, it's to demonstrate that you can drag the " text+="dialog box over it. " text+="This is noteworthy because some browsers render lists and combos in " text+="a funky way that, if GWT didn't do some magic for you, would " text+="normally cause the dialog box to appear to hover <i>underneath</i> " text+="the list box. Fortunately, you don't have to worry about it -- " text+="just use the GWT <code>DialogBox</code> class." return SinkInfo("Popups", text, Popups)
def init(): text = """ <b>Canvas vector drawing component: Canvas2D</b> <p>Gives python access to the browser's native canvas tag. <p>There are two canvas drawing libraries: Canvas2D (oldest) and Canvas (preferred). Both work in modern browsers (that support canvas). For IE the canvas functionality is emulated in javascript. This leads to lower performance in IE and missing/broken functionality. <p>Originally by Alexei Sokolov at <a href=\"http://gwt.components.googlepages.com\">gwt.components.googlepages.com</a>" <br>Samples ported from the <a href=\"http://developer.mozilla.org/en/docs/Canvas_tutorial\">Mozilla canvas tutorial</a>" <br>Samples ported from the <a href=\"http://developer.mozilla.org/en/docs/Canvas_tutorial\">Mozilla canvas tutorial</a> """ return SinkInfo("Canvas", text, CanvasTab)
def init(): text = "This page demonstrates GWT's support for images. Notice in particular how it uses the image's onLoad event to display a 'wait spinner' between the back and forward buttons." return SinkInfo("Images", text, Images)
def init(): text = "<b>Text field auto-completion component</b><p>Shows a list of matching items as you type. Items can be selected with keyboard or mouse." text += r"<p>Originally by Oliver Albers at <a href=\"http://gwt.components.googlepages.com\">gwt.components.googlepages.com</a>" return SinkInfo("AutoComplete", text, AutoCompleteTab)
def init(): text = "This page demonstrates GWT's support for images. Notice in particular how it uses the image's onLoad event to display a 'wait spinner' between the back and forward buttons." text = "GWT's built-in <code>TabPanel</code> class makes it easy to build tabbed dialogs " text += "and the like. Notice that no page load occurs when you select the " text += "different tabs in this page. That's the magic of dynamic HTML." return SinkInfo("Tabs", text, Tabs)
def init(): text = "If you need to include multiple pages of good ol' static HTML, it's easy to do using the <code>Frame</code> class." return SinkInfo("Frames", text, Frames)
def init(name, desc): return SinkInfo(name, desc, Chapter)
def init(): return SinkInfo("Intro", "<b>Introduction to the Addons Gallery</b>", IntroTab)
def init(): text = "<b>Tooltip popup component</b><p>Shows up after 1 second, hides after 5 seconds. Once activated, other tooltips show up immediately." text += r"<br><br>Originally by Alexei Sokolov at <a href=\"http://gwt.components.googlepages.com\">gwt.components.googlepages.com</a>" return SinkInfo("Tooltip", text, TooltipTab)
def init(): return SinkInfo( "Menus", "The GWT <code>MenuBar</code> class makes it easy to build menus, including cascading sub-menus.", Menus)
def init(): text = "GWT supports all the myriad types of buttons that exist in HTML. Here are a few for your viewing pleasure." return SinkInfo("Buttons", text, Buttons)
def init(): text = r"<b>Canvas vector drawing component</b><p>Gives python access to the browser's native canvas tag (<a href=\"http://excanvas.sourceforge.net\">Explorer Canvas</a> in IE)" text += r"<p>Originally by Alexei Sokolov at <a href=\"http://gwt.components.googlepages.com\">gwt.components.googlepages.com</a>" text += r"<br>Samples ported from the <a href=\"http://developer.mozilla.org/en/docs/Canvas_tutorial\">Mozilla canvas tutorial</a>" return SinkInfo("Canvas", text, CanvasTab)
def init(): text="Here is the ListBox widget in its two major forms." return SinkInfo("Lists", text, Lists)
def init(): return SinkInfo("Info", "Introduction to the Kitchen Sink.", Info)
def init(): text = "GWT has a built-in <code>Tree</code> widget. The tree is focusable and has keyboard support as well." return SinkInfo("Trees", text, Trees)
def init(): text = "The <code>FlexTable</code> widget doubles as a tabular data formatter and a panel. In this example, you'll see that there is an outer table with four cells, two of which contain nested components." return SinkInfo("Tables", text, Tables)
def init(name, desc): return SinkInfo(name, desc, Slide)