package scrum.client.impediments;
import ilarkesto.gwt.client.ButtonWidget;
import ilarkesto.gwt.client.Gwt;
import scrum.client.ScrumGwt;
import scrum.client.common.AScrumWidget;
import scrum.client.common.BlockListWidget;
import scrum.client.common.UserGuideWidget;
import scrum.client.workspace.PagePanel;
import com.google.gwt.user.client.ui.Widget;
public class ImpedimentListWidget extends AScrumWidget {
public BlockListWidget<Impediment> list;
@Override
protected Widget onInitialization() {
new RequestImpedimentsServiceCall().execute();
list = new BlockListWidget<Impediment>(ImpedimentBlock.FACTORY);
list.setAutoSorter(Impediment.REVERSE_DATE_COMPARATOR);
PagePanel page = new PagePanel();
page.addHeader("Impediment List", new ButtonWidget(new CreateImpedimentAction()));
page.addSection(Gwt.createFlowPanel(list, Gwt.createSpacer(1, 10),
ScrumGwt.createPdfLink("Downlad as PDF", "impedimentList", "")));
page.addSection(new UserGuideWidget(getLocalizer().views().impediments(), getCurrentProject().getImpediments()
.size() < 5, getCurrentUser().getHideUserGuideImpedimentsModel()));
return page;
}
@Override
protected void onUpdate() {
list.setObjects(getCurrentProject().getImpediments());
super.onUpdate();
}
public boolean select(Impediment impediment) {
if (!list.contains(impediment)) update();
return list.showObject(impediment);
}
}