1 16 package com.google.gwt.sample.mail.client; 17 18 import com.google.gwt.user.client.ui.AbstractImagePrototype; 19 import com.google.gwt.user.client.ui.Composite; 20 import com.google.gwt.user.client.ui.ImageBundle; 21 import com.google.gwt.user.client.ui.Tree; 22 import com.google.gwt.user.client.ui.TreeImages; 23 import com.google.gwt.user.client.ui.TreeItem; 24 25 28 public class Mailboxes extends Composite { 29 30 34 public interface Images extends ImageBundle, TreeImages { 35 AbstractImagePrototype drafts(); 36 37 AbstractImagePrototype home(); 38 39 AbstractImagePrototype inbox(); 40 41 AbstractImagePrototype sent(); 42 43 AbstractImagePrototype templates(); 44 45 AbstractImagePrototype trash(); 46 } 47 48 private Tree tree; 49 50 55 public Mailboxes(Images images) { 56 tree = new Tree(images); 57 TreeItem root = new TreeItem( 58 imageItemHTML(images.home(), "foo@example.com")); 59 tree.addItem(root); 60 61 addImageItem(root, "Inbox", images.inbox()); 62 addImageItem(root, "Drafts", images.drafts()); 63 addImageItem(root, "Templates", images.templates()); 64 addImageItem(root, "Sent", images.sent()); 65 addImageItem(root, "Trash", images.trash()); 66 67 root.setState(true); 68 initWidget(tree); 69 } 70 71 78 private TreeItem addImageItem(TreeItem root, String title, 79 AbstractImagePrototype imageProto) { 80 TreeItem item = new TreeItem(imageItemHTML(imageProto, title)); 81 root.addItem(item); 82 return item; 83 } 84 85 92 private String imageItemHTML(AbstractImagePrototype imageProto, String title) { 93 return "<span>" + imageProto.getHTML() + title + "</span>"; 94 } 95 } 96 | Popular Tags |