/** Creates a new ProjectList */ public ProjectList() { projects = new ArrayList<Project>(); selectedProjects = new ArrayList<Project>(); projectWidgets = new HashMap<Project, ProjectWidgets>(); sortField = SortField.DATE_MODIFIED; sortOrder = SortOrder.DESCENDING; // Initialize UI table = new Grid(1, 4); // The table initially contains just the header row. table.addStyleName("ode-ProjectTable"); table.setWidth("100%"); table.setCellSpacing(0); nameSortIndicator = new Label(""); dateCreatedSortIndicator = new Label(""); dateModifiedSortIndicator = new Label(""); refreshSortIndicators(); setHeaderRow(); VerticalPanel panel = new VerticalPanel(); panel.setWidth("100%"); panel.add(table); initWidget(panel); // It is important to listen to project manager events as soon as possible. Ode.getInstance().getProjectManager().addProjectManagerEventListener(this); }