TableSelectionPanel.java revision a5e4d84c9616b0a987e904d3b1d1d3fd9ca1be86
1package autotest.common.ui; 2 3import com.google.gwt.event.dom.client.ClickEvent; 4import com.google.gwt.event.dom.client.ClickHandler; 5import com.google.gwt.user.client.ui.Composite; 6import com.google.gwt.user.client.ui.HTML; 7import com.google.gwt.user.client.ui.HorizontalPanel; 8import com.google.gwt.user.client.ui.Panel; 9 10public class TableSelectionPanel extends Composite implements ClickHandler { 11 public static interface SelectionPanelListener { 12 public void onSelectAll(boolean visibleOnly); 13 public void onSelectNone(); 14 } 15 16 private SelectionPanelListener listener; 17 private SimpleHyperlink selectAll = new SimpleHyperlink("all"); 18 private SimpleHyperlink selectVisible; 19 private SimpleHyperlink selectNone = new SimpleHyperlink("none"); 20 21 public TableSelectionPanel(boolean wantSelectVisible) { 22 selectAll.addClickHandler(this); 23 selectNone.addClickHandler(this); 24 25 Panel selectPanel = new HorizontalPanel(); 26 selectPanel.add(new HTML("Select: ")); 27 selectPanel.add(selectAll); 28 selectPanel.add(new HTML(", ")); 29 if (wantSelectVisible) { 30 selectVisible = new SimpleHyperlink("visible"); 31 selectVisible.addClickHandler(this); 32 selectPanel.add(selectVisible); 33 selectPanel.add(new HTML(", ")); 34 } 35 selectPanel.add(selectNone); 36 selectPanel.add(new HTML(" ")); 37 initWidget(selectPanel); 38 } 39 40 public void setListener(SelectionPanelListener listener) { 41 this.listener = listener; 42 } 43 44 public void onClick(ClickEvent event) { 45 if (event.getSource() == selectAll) { 46 listener.onSelectAll(false); 47 } else if (event.getSource() == selectVisible) { 48 listener.onSelectAll(true); 49 } else { 50 assert event.getSource() == selectNone; 51 listener.onSelectNone(); 52 } 53 } 54} 55