19dbdcda5104991cbf344ea5cba1aa58e1af444f3showardpackage autotest.common.ui; 29dbdcda5104991cbf344ea5cba1aa58e1af444f3showard 3a5e4d84c9616b0a987e904d3b1d1d3fd9ca1be86showardimport com.google.gwt.event.dom.client.ClickEvent; 4a5e4d84c9616b0a987e904d3b1d1d3fd9ca1be86showardimport com.google.gwt.event.dom.client.ClickHandler; 58a7f36583afe076a7198d1b34fe109aa491dc277jamesrenimport com.google.gwt.user.client.ui.Anchor; 69dbdcda5104991cbf344ea5cba1aa58e1af444f3showardimport com.google.gwt.user.client.ui.Composite; 79dbdcda5104991cbf344ea5cba1aa58e1af444f3showardimport com.google.gwt.user.client.ui.HTML; 89dbdcda5104991cbf344ea5cba1aa58e1af444f3showardimport com.google.gwt.user.client.ui.HorizontalPanel; 99dbdcda5104991cbf344ea5cba1aa58e1af444f3showardimport com.google.gwt.user.client.ui.Panel; 109dbdcda5104991cbf344ea5cba1aa58e1af444f3showard 11a5e4d84c9616b0a987e904d3b1d1d3fd9ca1be86showardpublic class TableSelectionPanel extends Composite implements ClickHandler { 129dbdcda5104991cbf344ea5cba1aa58e1af444f3showard public static interface SelectionPanelListener { 139dbdcda5104991cbf344ea5cba1aa58e1af444f3showard public void onSelectAll(boolean visibleOnly); 149dbdcda5104991cbf344ea5cba1aa58e1af444f3showard public void onSelectNone(); 159dbdcda5104991cbf344ea5cba1aa58e1af444f3showard } 169dbdcda5104991cbf344ea5cba1aa58e1af444f3showard 179dbdcda5104991cbf344ea5cba1aa58e1af444f3showard private SelectionPanelListener listener; 188a7f36583afe076a7198d1b34fe109aa491dc277jamesren private Anchor selectAll = new Anchor("all"); 198a7f36583afe076a7198d1b34fe109aa491dc277jamesren private Anchor selectVisible; 208a7f36583afe076a7198d1b34fe109aa491dc277jamesren private Anchor selectNone = new Anchor("none"); 218a7f36583afe076a7198d1b34fe109aa491dc277jamesren 229dbdcda5104991cbf344ea5cba1aa58e1af444f3showard public TableSelectionPanel(boolean wantSelectVisible) { 23a5e4d84c9616b0a987e904d3b1d1d3fd9ca1be86showard selectAll.addClickHandler(this); 24a5e4d84c9616b0a987e904d3b1d1d3fd9ca1be86showard selectNone.addClickHandler(this); 258a7f36583afe076a7198d1b34fe109aa491dc277jamesren 269dbdcda5104991cbf344ea5cba1aa58e1af444f3showard Panel selectPanel = new HorizontalPanel(); 279dbdcda5104991cbf344ea5cba1aa58e1af444f3showard selectPanel.add(new HTML("Select: ")); 289dbdcda5104991cbf344ea5cba1aa58e1af444f3showard selectPanel.add(selectAll); 299dbdcda5104991cbf344ea5cba1aa58e1af444f3showard selectPanel.add(new HTML(", ")); 309dbdcda5104991cbf344ea5cba1aa58e1af444f3showard if (wantSelectVisible) { 318a7f36583afe076a7198d1b34fe109aa491dc277jamesren selectVisible = new Anchor("visible"); 32a5e4d84c9616b0a987e904d3b1d1d3fd9ca1be86showard selectVisible.addClickHandler(this); 339dbdcda5104991cbf344ea5cba1aa58e1af444f3showard selectPanel.add(selectVisible); 349dbdcda5104991cbf344ea5cba1aa58e1af444f3showard selectPanel.add(new HTML(", ")); 359dbdcda5104991cbf344ea5cba1aa58e1af444f3showard } 369dbdcda5104991cbf344ea5cba1aa58e1af444f3showard selectPanel.add(selectNone); 379dbdcda5104991cbf344ea5cba1aa58e1af444f3showard selectPanel.add(new HTML(" ")); 389dbdcda5104991cbf344ea5cba1aa58e1af444f3showard initWidget(selectPanel); 399dbdcda5104991cbf344ea5cba1aa58e1af444f3showard } 408a7f36583afe076a7198d1b34fe109aa491dc277jamesren 419dbdcda5104991cbf344ea5cba1aa58e1af444f3showard public void setListener(SelectionPanelListener listener) { 429dbdcda5104991cbf344ea5cba1aa58e1af444f3showard this.listener = listener; 439dbdcda5104991cbf344ea5cba1aa58e1af444f3showard } 449dbdcda5104991cbf344ea5cba1aa58e1af444f3showard 45a5e4d84c9616b0a987e904d3b1d1d3fd9ca1be86showard public void onClick(ClickEvent event) { 46a5e4d84c9616b0a987e904d3b1d1d3fd9ca1be86showard if (event.getSource() == selectAll) { 479dbdcda5104991cbf344ea5cba1aa58e1af444f3showard listener.onSelectAll(false); 48a5e4d84c9616b0a987e904d3b1d1d3fd9ca1be86showard } else if (event.getSource() == selectVisible) { 499dbdcda5104991cbf344ea5cba1aa58e1af444f3showard listener.onSelectAll(true); 509dbdcda5104991cbf344ea5cba1aa58e1af444f3showard } else { 51a5e4d84c9616b0a987e904d3b1d1d3fd9ca1be86showard assert event.getSource() == selectNone; 529dbdcda5104991cbf344ea5cba1aa58e1af444f3showard listener.onSelectNone(); 539dbdcda5104991cbf344ea5cba1aa58e1af444f3showard } 549dbdcda5104991cbf344ea5cba1aa58e1af444f3showard } 559dbdcda5104991cbf344ea5cba1aa58e1af444f3showard} 56