1 package org.kuali.student.lum.common.client.widgets; 2 3 import org.kuali.student.common.assembly.data.LookupMetadata; 4 import org.kuali.student.common.search.dto.SearchRequest; 5 import org.kuali.student.common.ui.client.widgets.KSButton; 6 import org.kuali.student.common.ui.client.widgets.KSLightBox; 7 import org.kuali.student.common.ui.client.widgets.search.SearchResultsTable; 8 9 import com.google.gwt.event.dom.client.ClickEvent; 10 import com.google.gwt.event.dom.client.ClickHandler; 11 import com.google.gwt.user.client.ui.VerticalPanel; 12 13 public class SearchResultsLightBox { 14 private KSLightBox lightbox; 15 private SearchResultsTable searchResultsTable; 16 private KSButton closeButton; 17 private SearchRequest searchRequest; 18 private LookupMetadata lookupMetadata; 19 20 public SearchResultsLightBox(String title, SearchRequest searchRequest, LookupMetadata lookupMetadata) { 21 VerticalPanel contents = new VerticalPanel(); 22 lightbox = new KSLightBox(title); 23 searchResultsTable = new SearchResultsTable(); 24 searchResultsTable.addStyleName("KS-Advanced-Search-Results-Table"); 25 searchResultsTable.setWithMslable(false); 26 closeButton = new KSButton("Close"); 27 this.searchRequest = searchRequest; 28 this.lookupMetadata = lookupMetadata; 29 contents.add(searchResultsTable); 30 contents.add(closeButton); 31 32 closeButton.addClickHandler(new ClickHandler() { 33 @Override 34 public void onClick(ClickEvent event) { 35 hide(); 36 } 37 }); 38 39 lightbox.setWidget(contents); 40 } 41 42 public void setSize(int width, int height) { 43 lightbox.setSize(width, height); 44 } 45 46 public void show() { 47 searchResultsTable.performSearch(searchRequest, lookupMetadata.getResults(), lookupMetadata.getResultReturnKey()); 48 lightbox.show(); 49 } 50 51 public void hide() { 52 lightbox.hide(); 53 } 54 }