List of usage examples for com.google.gwt.user.client.ui CheckBox setValue
@Override public void setValue(Boolean value)
From source file:org.unitime.timetable.gwt.client.rooms.RoomGroupEdit.java
License:Apache License
public void setGroup(GroupInterface group, String dept) { iHeader.clearMessage();/*from w w w .j a v a 2s . c o m*/ iName.clearHint(); iAbbreviation.clearHint(); iDepartment.clearHint(); iDescription.clearHint(); if (group == null) { iGroup = new GroupInterface(); iGroup.setSessionId(iProperties.getAcademicSessionId()); iGroup.setSessionName(iProperties.getAcademicSessionName()); if (iSessionLabel != null) iSessionLabel.setText(iProperties.getAcademicSessionName()); iHeader.setEnabled("create", true); iHeader.setEnabled("update", false); iHeader.setEnabled("delete", false); iName.getWidget().setText(""); iAbbreviation.getWidget().setText(""); iDescription.getWidget().setText(""); iDepartment.getWidget().clear(); iGlobal.setValue(true); iDefault.setValue(false); iGlobal.setEnabled(true); if (iProperties.isCanAddDepartmentalRoomGroup()) { iDepartment.getWidget().addItem(MESSAGES.itemSelect(), "-1"); iDepartment.getWidget().setSelectedIndex(0); for (DepartmentInterface department : iProperties.getDepartments()) { iDepartment.getWidget().addItem( department.getExtAbbreviationOrCode() + " - " + department.getExtLabelWhenExist(), department.getId().toString()); if (dept != null && dept.equals(department.getDeptCode())) { iDepartment.getWidget().setSelectedIndex(iDepartment.getWidget().getItemCount() - 1); iGlobal.setValue(false, true); } } } if (!iProperties.isCanAddGlobalRoomGroup()) { iGlobal.setValue(false); iGlobal.setEnabled(false); } else if (!iProperties.isCanAddDepartmentalRoomGroup()) { iGlobal.setValue(true); iGlobal.setEnabled(false); } } else { iGroup = new GroupInterface(group); if (iSessionLabel != null) iSessionLabel.setText(group.getSessionName()); iHeader.setEnabled("create", false); iHeader.setEnabled("update", group.canEdit()); iHeader.setEnabled("delete", group.canDelete()); iName.getWidget().setText(group.getLabel() == null ? "" : group.getLabel()); iAbbreviation.getWidget().setText(group.getAbbreviation() == null ? "" : group.getAbbreviation()); iDescription.getWidget().setText(group.getDescription() == null ? "" : group.getDescription()); iGlobal.setValue(!group.isDepartmental()); iGlobal.setEnabled(false); if (!group.isDepartmental()) iDefault.setValue(group.isDefault()); iDepartment.getWidget().clear(); if (group.isDepartmental()) { for (DepartmentInterface department : iProperties.getDepartments()) iDepartment.getWidget().addItem( department.getExtAbbreviationOrCode() + " - " + department.getExtLabelWhenExist(), department.getId().toString()); int index = iProperties.getDepartments().indexOf(group.getDepartment()); if (index >= 0) { iDepartment.getWidget().setSelectedIndex(index); } else { iDepartment.getWidget().addItem( group.getDepartment().getExtAbbreviationOrCode() + " - " + group.getDepartment().getExtLabelWhenExist(), group.getDepartment().getId().toString()); iDepartment.getWidget().setSelectedIndex(iDepartment.getWidget().getItemCount() - 1); } } } iDefault.setEnabled(iProperties.isCanChangeDefaultGroup()); if (iProperties.hasFutureSessions()) { for (AcademicSessionInterface session : iProperties.getFutureSessions()) { CheckBox ch = iFutureSessionsToggles.get(session.getId()); if (ch != null) { ch.setValue(RoomCookie.getInstance().getFutureFlags(session.getId()) != null); } } } iForm.getRowFormatter().setVisible(iDefaultRow, iGlobal.getValue()); iForm.getRowFormatter().setVisible(iDepartmentRow, !iGlobal.getValue()); }
From source file:org.unitime.timetable.gwt.client.rooms.RoomsTable.java
License:Apache License
public void setProperties(RoomPropertiesInterface properties) { iProperties = properties;/* w w w . j a v a 2 s .c o m*/ super.clearTable(); List<UniTimeTableHeader> header = new ArrayList<UniTimeTableHeader>(); for (RoomsColumn column : RoomsColumn.values()) { int nrCells = getNbrCells(column); for (int idx = 0; idx < nrCells; idx++) { UniTimeTableHeader h = new UniTimeTableHeader(getColumnName(column, idx), getColumnAlignment(column, idx)); header.add(h); } } if (iSelectable) { header.get(0).addOperation(new Operation() { @Override public void execute() { for (int row = 1; row < getRowCount(); row++) { Widget w = getWidget(row, 0); if (w != null && w instanceof CheckBox) { CheckBox ch = (CheckBox) w; ch.setValue(true); } setSelected(row, true); } } @Override public boolean isApplicable() { for (int row = 1; row < getRowCount(); row++) { Widget w = getWidget(row, 0); if (w != null && w instanceof CheckBox) { CheckBox ch = (CheckBox) w; if (!ch.getValue()) return true; } } return false; } @Override public boolean hasSeparator() { return false; } @Override public String getName() { return MESSAGES.opSelectAll(); } }); header.get(0).addOperation(new Operation() { @Override public void execute() { for (int row = 1; row < getRowCount(); row++) { Widget w = getWidget(row, 0); if (w != null && w instanceof CheckBox) { CheckBox ch = (CheckBox) w; ch.setValue(false); } setSelected(row, false); } } @Override public boolean isApplicable() { for (int row = 1; row < getRowCount(); row++) { Widget w = getWidget(row, 0); if (w != null && w instanceof CheckBox) { CheckBox ch = (CheckBox) w; if (ch.getValue()) return true; } } return false; } @Override public boolean hasSeparator() { return false; } @Override public String getName() { return MESSAGES.opClearSelection(); } }); } if (RoomCookie.getInstance().getFlags(iMode) == 0) { int flags = 0; for (RoomsColumn column : RoomsColumn.values()) { if (iMode.hasColumn(column)) { int nrCells = getNbrCells(column); int cellIdx = getCellIndex(column); for (int idx = 0; idx < nrCells; idx++) { flags += (1 << (cellIdx + idx)); } } } RoomCookie.getInstance().setFlags(iMode, flags); } addRow(null, header); iShowHideOperations.clear(); for (final RoomsColumn column : RoomsColumn.values()) { int nrCells = getNbrCells(column); int cellIdx = getCellIndex(column); for (int idx = 0; idx < nrCells; idx++) { final int colIdx = cellIdx + idx; final String cName = getColumnName(column, idx).replace("<br>", " "); UniTimeTableHeader h = header.get(colIdx); if (hasShowHideOperation(column)) { Operation op = new AriaOperation() { @Override public void execute() { boolean visible = isColumnVisible(colIdx); setColumnVisible(colIdx, !visible); RoomCookie.getInstance().set(iMode, colIdx, !visible); } @Override public boolean isApplicable() { return (iFlags & (1 << colIdx)) != 0; } @Override public boolean hasSeparator() { if (iSelectable && column == RoomsColumn.EXTERNAL_ID) return true; return false; } @Override public String getName() { return isColumnVisible(colIdx) ? MESSAGES.opHide(cName) : MESSAGES.opShow(cName); } @Override public String getAriaLabel() { return isColumnVisible(colIdx) ? ARIA.opHide(cName) : ARIA.opShow(cName); } }; iShowHideOperations.add(op); if (colIdx > 0) header.get(0).addOperation(op); RoomsColumn g = getShowHideGroup(column); if (g == null) { h.addOperation(op); } else { for (RoomsColumn c : RoomsColumn.values()) { if (g.equals(getShowHideGroup(c))) for (int i = 0; i < getNbrCells(c); i++) header.get(getCellIndex(c) + i).addOperation(op); } } } } } iDepartmentOperations.clear(); for (final DeptMode d : DeptMode.values()) { Operation op = new Operation() { @Override public void execute() { RoomCookie.getInstance().setDeptMode(d.ordinal()); refreshTable(); } @Override public boolean isApplicable() { return getRowCount() > 0; } @Override public boolean hasSeparator() { return d.ordinal() == 0; } @Override public String getName() { if (RoomCookie.getInstance().getDeptMode() == d.ordinal()) return MESSAGES.opUncheck(d.getName()); else return MESSAGES.opCheck(d.getName()); } }; iDepartmentOperations.add(op); for (RoomsColumn c : RoomsColumn.values()) { if (hasDepartmentOperation(c)) for (int i = 0; i < getNbrCells(c); i++) header.get(getCellIndex(c) + i).addOperation(op); } } iSortOperations.clear(); for (final RoomsColumn column : RoomsColumn.values()) { if (RoomsComparator.isApplicable(column)) { final UniTimeTableHeader h = header.get(getCellIndex(column)); Operation op = new SortOperation() { @Override public void execute() { if (column == iSortBy) { iAsc = !iAsc; } else { iSortBy = column; iAsc = true; } RoomCookie.getInstance().setSortRoomsBy(getSortBy()); sort(); } @Override public boolean isApplicable() { return getRowCount() > 1 && h.isVisible(); } @Override public boolean hasSeparator() { return true; } @Override public String getName() { return MESSAGES.opSortBy(getColumnName()); } @Override public String getColumnName() { return h.getHTML().replace("<br>", " "); } }; iSortOperations.add(op); h.addOperation(op); } } for (Operation op : getOtherOperations()) header.get(0).addOperation(op); for (int i = 0; i < getCellCount(0); i++) getCellFormatter().setStyleName(0, i, "unitime-ClickableTableHeader"); resetVisibility(); setSortBy(RoomCookie.getInstance().getRoomsSortBy()); setVisible(false); if (iSelectable) { setAllowSelection(true); addMouseClickListener(new MouseClickListener<RoomDetailInterface>() { @Override public void onMouseClick(TableEvent<RoomDetailInterface> event) { selectRoom(event.getRow(), isSelected(event.getRow())); } }); } }
From source file:org.unitime.timetable.gwt.client.sectioning.SectioningStatusPage.java
License:Apache License
public void populateStudentTable(List<StudentInfo> result) { List<Widget> header = new ArrayList<Widget>(); if (iOnline && iProperties != null && iProperties.isCanSelectStudent()) { UniTimeTableHeader hSelect = new UniTimeTableHeader("⊗", HasHorizontalAlignment.ALIGN_CENTER); header.add(hSelect);//from w w w .j a v a 2s. c o m hSelect.setWidth("10px"); hSelect.addAdditionalStyleName("unitime-NoPrint"); hSelect.addOperation(new Operation() { @Override public String getName() { return MESSAGES.selectAll(); } @Override public boolean hasSeparator() { return false; } @Override public boolean isApplicable() { return iSelectedStudentIds.size() != iStudentTable.getRowCount() + 2; } @Override public void execute() { iSelectedStudentIds.clear(); for (int row = 0; row < iStudentTable.getRowCount(); row++) { StudentInfo i = iStudentTable.getData(row); if (i != null && i.getStudent() != null) { ((CheckBox) iStudentTable.getWidget(row, 0)).setValue(true); iSelectedStudentIds.add(i.getStudent().getId()); } } } }); hSelect.addOperation(new Operation() { @Override public String getName() { return MESSAGES.clearAll(); } @Override public boolean hasSeparator() { return false; } @Override public boolean isApplicable() { return iSelectedStudentIds.size() > 0; } @Override public void execute() { iSelectedStudentIds.clear(); for (int row = 0; row < iStudentTable.getRowCount(); row++) { StudentInfo i = iStudentTable.getData(row); if (i != null && i.getStudent() != null) ((CheckBox) iStudentTable.getWidget(row, 0)).setValue(false); } } }); hSelect.addOperation(new Operation() { @Override public String getName() { return MESSAGES.sendStudentEmail(); } @Override public boolean hasSeparator() { return true; } @Override public boolean isApplicable() { return iSelectedStudentIds.size() > 0 && iProperties != null && iProperties.isEmail(); } @Override public void execute() { SimpleForm sf = new SimpleForm(); final UniTimeHeaderPanel buttons = new UniTimeHeaderPanel(); sf.removeStyleName("unitime-NotPrintableBottomLine"); sf.addRow(MESSAGES.emailSubject(), iSubject); if (iSubject.getText().isEmpty() || iSubject.getText().equals(MESSAGES.defaulSubjectMassCancel())) iSubject.setText(MESSAGES.defaulSubject()); sf.addRow(MESSAGES.emailCC(), iCC); sf.addRow(MESSAGES.emailBody(), iMessage); sf.addBottomRow(buttons); final UniTimeDialogBox dialog = new UniTimeDialogBox(true, false); dialog.setWidget(sf); dialog.setText(MESSAGES.sendStudentEmail()); dialog.setEscapeToHide(true); buttons.addButton("send", MESSAGES.emailSend(), new ClickHandler() { @Override public void onClick(ClickEvent event) { List<Long> studentIds = new ArrayList<Long>(); for (int row = 0; row < iStudentTable.getRowCount(); row++) { StudentInfo i = iStudentTable.getData(row); if (i != null && i.getStudent() != null && iSelectedStudentIds.contains(i.getStudent().getId())) { studentIds.add(i.getStudent().getId()); iStudentTable.setWidget(row, iStudentTable.getCellCount(row) - 1, new Image(RESOURCES.loading_small())); } } dialog.hide(); sendEmail(studentIds.iterator(), iSubject.getText(), iMessage.getText(), iCC.getText(), 0); } }); buttons.addButton("close", MESSAGES.buttonClose(), new ClickHandler() { @Override public void onClick(ClickEvent event) { dialog.hide(); } }); dialog.center(); } }); hSelect.addOperation(new Operation() { @Override public String getName() { return MESSAGES.massCancel(); } @Override public boolean hasSeparator() { return false; } @Override public boolean isApplicable() { return iSelectedStudentIds.size() > 0 && iProperties != null && iProperties.isMassCancel(); } @Override public void execute() { SimpleForm sf = new SimpleForm(); final UniTimeHeaderPanel buttons = new UniTimeHeaderPanel(); sf.removeStyleName("unitime-NotPrintableBottomLine"); if (iSubject.getText().isEmpty() || iSubject.getText().equals(MESSAGES.defaulSubject())) iSubject.setText(MESSAGES.defaulSubjectMassCancel()); sf.addRow(MESSAGES.emailSubject(), iSubject); sf.addRow(MESSAGES.emailCC(), iCC); sf.addRow(MESSAGES.emailBody(), iMessage); sf.addRow(MESSAGES.newStatus(), iStatus); sf.addBottomRow(buttons); final UniTimeDialogBox dialog = new UniTimeDialogBox(true, false); dialog.setWidget(sf); dialog.setText(MESSAGES.massCancel()); dialog.setEscapeToHide(true); buttons.addButton("cancel", MESSAGES.buttonMassCancel(), new ClickHandler() { @Override public void onClick(ClickEvent event) { if (!Window.confirm(MESSAGES.massCancelConfirmation())) { dialog.hide(); return; } final List<Long> studentIds = new ArrayList<Long>(); for (int row = 0; row < iStudentTable.getRowCount(); row++) { StudentInfo i = iStudentTable.getData(row); if (i != null && i.getStudent() != null && iSelectedStudentIds.contains(i.getStudent().getId())) { studentIds.add(i.getStudent().getId()); iStudentTable.setWidget(row, iStudentTable.getCellCount(row) - 1, new Image(RESOURCES.loading_small())); } } dialog.hide(); LoadingWidget.getInstance().show(MESSAGES.massCanceling()); iSectioningService.massCancel(studentIds, iStatus.getWidget().getValue(iStatus.getWidget().getSelectedIndex()), iSubject.getText(), iMessage.getText(), iCC.getText(), new AsyncCallback<Boolean>() { @Override public void onFailure(Throwable caught) { LoadingWidget.getInstance().hide(); UniTimeNotifications.error(caught); for (int row = 0; row < iStudentTable.getRowCount(); row++) { StudentInfo i = iStudentTable.getData(row); if (i != null && i.getStudent() != null && studentIds.contains(i.getStudent().getId())) { HTML error = new HTML(caught.getMessage()); error.setStyleName("unitime-ErrorMessage"); iStudentTable.setWidget(row, iStudentTable.getCellCount(row) - 1, error); i.setEmailDate(null); } } } @Override public void onSuccess(Boolean result) { LoadingWidget.getInstance().hide(); loadData(); } }); } }); buttons.addButton("close", MESSAGES.buttonClose(), new ClickHandler() { @Override public void onClick(ClickEvent event) { dialog.hide(); } }); dialog.center(); } }); hSelect.addOperation(new Operation() { @Override public String getName() { return MESSAGES.requestStudentUpdate(); } @Override public boolean hasSeparator() { return true; } @Override public boolean isApplicable() { return iSelectedStudentIds.size() > 0 && iProperties != null && iProperties.isRequestUpdate(); } @Override public void execute() { List<Long> studentIds = new ArrayList<Long>(iSelectedStudentIds); LoadingWidget.getInstance().show(MESSAGES.requestingStudentUpdate()); iSectioningService.requestStudentUpdate(studentIds, new AsyncCallback<Boolean>() { @Override public void onFailure(Throwable caught) { LoadingWidget.getInstance().hide(); UniTimeNotifications.error(caught); } @Override public void onSuccess(Boolean result) { LoadingWidget.getInstance().hide(); UniTimeNotifications.info(MESSAGES.requestStudentUpdateSuccess()); } }); } }); if (iStates != null) { for (final String ref : new TreeSet<String>(iStates.keySet())) { hSelect.addOperation(new Operation() { @Override public String getName() { return MESSAGES.changeStatusTo(iStates.get(ref)); } @Override public boolean hasSeparator() { return "".equals(ref); } @Override public boolean isApplicable() { return iSelectedStudentIds.size() > 0 && iProperties != null && iProperties.isChangeStatus(); } @Override public void execute() { List<Long> studentIds = new ArrayList<Long>(iSelectedStudentIds); LoadingWidget.getInstance().show(MESSAGES.changingStatusTo(iStates.get(ref))); iSectioningService.changeStatus(studentIds, ref, new AsyncCallback<Boolean>() { @Override public void onFailure(Throwable caught) { LoadingWidget.getInstance().hide(); UniTimeNotifications.error(caught); } @Override public void onSuccess(Boolean result) { for (int row = 0; row < iStudentTable.getRowCount(); row++) { StudentInfo i = iStudentTable.getData(row); if (i != null && i.getStudent() != null && ((CheckBox) iStudentTable.getWidget(row, 0)).getValue()) { i.setStatus(ref); ((HTML) iStudentTable.getWidget(row, iStatusColumn)).setHTML(ref); } } LoadingWidget.getInstance().hide(); } }); } }); } } } boolean hasExtId = false; for (ClassAssignmentInterface.StudentInfo e : result) { if (e.getStudent() != null && e.getStudent().isCanShowExternalId()) { hasExtId = true; break; } } UniTimeTableHeader hExtId = null; if (hasExtId) { hExtId = new UniTimeTableHeader(MESSAGES.colStudentExternalId()); header.add(hExtId); addSortOperation(hExtId, StudentComparator.SortBy.EXTERNAL_ID, MESSAGES.colStudentExternalId()); } UniTimeTableHeader hStudent = new UniTimeTableHeader(MESSAGES.colStudent()); header.add(hStudent); addSortOperation(hStudent, StudentComparator.SortBy.STUDENT, MESSAGES.colStudent()); UniTimeTableHeader hTotal = new UniTimeTableHeader(" "); header.add(hTotal); boolean hasEnrollment = false, hasWaitList = false, hasArea = false, hasMajor = false, hasGroup = false, hasAcmd = false, hasReservation = false, hasRequestedDate = false, hasEnrolledDate = false, hasConsent = false, hasCredit = false; for (ClassAssignmentInterface.StudentInfo e : result) { if (e.getStudent() == null) continue; // if (e.getStatus() != null) hasStatus = true; if (e.getTotalEnrollment() != null && e.getTotalEnrollment() > 0) hasEnrollment = true; if (e.getTotalUnassigned() != null && e.getTotalUnassigned() > 0) hasWaitList = true; if (e.getStudent().hasArea()) hasArea = true; if (e.getStudent().hasMajor()) hasMajor = true; if (e.getStudent().hasGroup()) hasGroup = true; if (e.getStudent().hasAccommodation()) hasAcmd = true; if (e.getTotalReservation() != null && e.getTotalReservation() > 0) hasReservation = true; if (e.getRequestedDate() != null) hasRequestedDate = true; if (e.getEnrolledDate() != null) hasEnrolledDate = true; // if (e.getEmailDate() != null) hasEmailDate = true; if (e.getTotalConsentNeeded() != null && e.getTotalConsentNeeded() > 0) hasConsent = true; if (e.hasTotalCredit()) hasCredit = true; } UniTimeTableHeader hArea = null, hClasf = null; if (hasArea) { hArea = new UniTimeTableHeader(MESSAGES.colArea()); //hArea.setWidth("100px"); header.add(hArea); addSortOperation(hArea, StudentComparator.SortBy.AREA, MESSAGES.colArea()); hClasf = new UniTimeTableHeader(MESSAGES.colClassification()); //hClasf.setWidth("100px"); header.add(hClasf); addSortOperation(hClasf, StudentComparator.SortBy.CLASSIFICATION, MESSAGES.colClassification()); } UniTimeTableHeader hMajor = null; if (hasMajor) { hMajor = new UniTimeTableHeader(MESSAGES.colMajor()); //hMajor.setWidth("100px"); header.add(hMajor); addSortOperation(hMajor, StudentComparator.SortBy.MAJOR, MESSAGES.colMajor()); } UniTimeTableHeader hGroup = null; if (hasGroup) { hGroup = new UniTimeTableHeader(MESSAGES.colGroup()); //hGroup.setWidth("100px"); header.add(hGroup); addSortOperation(hGroup, StudentComparator.SortBy.GROUP, MESSAGES.colGroup()); } UniTimeTableHeader hAcmd = null; if (hasAcmd) { hAcmd = new UniTimeTableHeader(MESSAGES.colAccommodation()); //hGroup.setWidth("100px"); header.add(hAcmd); addSortOperation(hAcmd, StudentComparator.SortBy.ACCOMODATION, MESSAGES.colAccommodation()); } iStatusColumn = header.size() - 1; UniTimeTableHeader hStatus = new UniTimeTableHeader(MESSAGES.colStatus()); //hMajor.setWidth("100px"); header.add(hStatus); addSortOperation(hStatus, StudentComparator.SortBy.STATUS, MESSAGES.colStatus()); UniTimeTableHeader hEnrollment = null; if (hasEnrollment) { hEnrollment = new UniTimeTableHeader(MESSAGES.colEnrollment()); header.add(hEnrollment); addSortOperation(hEnrollment, StudentComparator.SortBy.ENROLLMENT, MESSAGES.colEnrollment()); } UniTimeTableHeader hWaitlist = null; if (hasWaitList) { hWaitlist = new UniTimeTableHeader(MESSAGES.colWaitListed()); header.add(hWaitlist); addSortOperation(hWaitlist, StudentComparator.SortBy.WAITLIST, MESSAGES.colWaitListed()); } UniTimeTableHeader hReservation = null; if (hasReservation) { hReservation = new UniTimeTableHeader(MESSAGES.colReservation()); header.add(hReservation); addSortOperation(hReservation, StudentComparator.SortBy.RESERVATION, MESSAGES.colReservation()); } UniTimeTableHeader hConsent = null; if (hasConsent) { hConsent = new UniTimeTableHeader(MESSAGES.colConsent()); header.add(hConsent); addSortOperation(hConsent, StudentComparator.SortBy.CONSENT, MESSAGES.colConsent()); } UniTimeTableHeader hCredit = null; if (hasCredit) { hCredit = new UniTimeTableHeader(MESSAGES.colCredit()); header.add(hCredit); addSortOperation(hCredit, StudentComparator.SortBy.CREDIT, MESSAGES.colCredit()); } UniTimeTableHeader hRequestTS = null; if (hasRequestedDate) { hRequestTS = new UniTimeTableHeader(MESSAGES.colRequestTimeStamp()); header.add(hRequestTS); addSortOperation(hRequestTS, StudentComparator.SortBy.REQUEST_TS, MESSAGES.colRequestTimeStamp()); } UniTimeTableHeader hEnrolledTS = null; if (hasEnrolledDate) { hEnrolledTS = new UniTimeTableHeader(MESSAGES.colEnrollmentTimeStamp()); header.add(hEnrolledTS); addSortOperation(hEnrolledTS, StudentComparator.SortBy.ENROLLMENT_TS, MESSAGES.colEnrollmentTimeStamp()); } UniTimeTableHeader hEmailTS = null; if (iOnline) { hEmailTS = new UniTimeTableHeader(MESSAGES.colEmailTimeStamp()); header.add(hEmailTS); addSortOperation(hEmailTS, StudentComparator.SortBy.EMAIL_TS, MESSAGES.colEmailTimeStamp()); } iStudentTable.addRow(null, header); Set<Long> newlySelected = new HashSet<Long>(); for (StudentInfo info : result) { List<Widget> line = new ArrayList<Widget>(); if (info.getStudent() != null) { if (iOnline && iProperties != null && iProperties.isCanSelectStudent()) { CheckBox ch = new CheckBox(); ch.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { event.stopPropagation(); } }); final Long sid = info.getStudent().getId(); if (iSelectedStudentIds.contains(sid)) { ch.setValue(true); newlySelected.add(sid); } ch.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { event.stopPropagation(); } }); ch.addValueChangeHandler(new ValueChangeHandler<Boolean>() { @Override public void onValueChange(ValueChangeEvent<Boolean> event) { if (event.getValue()) iSelectedStudentIds.add(sid); else iSelectedStudentIds.remove(sid); } }); line.add(ch); } if (hasExtId) { line.add(new Label( info.getStudent().isCanShowExternalId() ? info.getStudent().getExternalId() : "", false)); } line.add(new TitleCell(info.getStudent().getName())); if (hasArea) { line.add(new HTML(info.getStudent().getArea("<br>"), false)); line.add(new HTML(info.getStudent().getClassification("<br>"), false)); } if (hasMajor) line.add(new HTML(info.getStudent().getMajor("<br>"), false)); if (hasGroup) line.add(new HTML(info.getStudent().getGroup("<br>"), false)); if (hasAcmd) line.add(new HTML(info.getStudent().getAccommodation("<br>"), false)); line.add(new HTML(info.getStatus(), false)); } else { if (iOnline && iProperties != null && iProperties.isCanSelectStudent()) line.add(new HTML(" ", false)); if (hasExtId) line.add(new TitleCell(MESSAGES.total())); else line.add(new Label(MESSAGES.total())); line.add(new NumberCell(null, result.size() - 1)); if (hasArea) { line.add(new HTML(" ", false)); line.add(new HTML(" ", false)); } if (hasMajor) line.add(new HTML(" ", false)); if (hasGroup) line.add(new HTML(" ", false)); if (hasAcmd) line.add(new HTML(" ", false)); line.add(new HTML(" ", false)); } if (hasEnrollment) line.add(new NumberCell(info.getEnrollment(), info.getTotalEnrollment())); if (hasWaitList) line.add(new WaitListCell(info)); if (hasReservation) line.add(new NumberCell(info.getReservation(), info.getTotalReservation())); if (hasConsent) line.add(new NumberCell(info.getConsentNeeded(), info.getTotalConsentNeeded())); if (hasCredit) line.add(new CreditCell(info.getCredit(), info.getTotalCredit())); if (info.getStudent() != null) { if (hasRequestedDate) line.add(new HTML( info.getRequestedDate() == null ? " " : sDF.format(info.getRequestedDate()), false)); if (hasEnrolledDate) line.add(new HTML( info.getEnrolledDate() == null ? " " : sDF.format(info.getEnrolledDate()), false)); if (iOnline) line.add(new HTML(info.getEmailDate() == null ? " " : sDF.format(info.getEmailDate()), false)); } else { if (hasRequestedDate) line.add(new HTML(" ", false)); if (hasEnrolledDate) line.add(new HTML(" ", false)); if (iOnline) line.add(new HTML(" ", false)); } iStudentTable.addRow(info, line); } iSelectedStudentIds.clear(); iSelectedStudentIds.addAll(newlySelected); if (iStudentTable.getRowCount() >= 2) { for (int c = 0; c < iStudentTable.getCellCount(iStudentTable.getRowCount() - 1); c++) iStudentTable.getCellFormatter().setStyleName(iStudentTable.getRowCount() - 1, c, "unitime-TotalRow"); } iStudentTableHint.setVisible(hasWaitList); if (SectioningStatusCookie.getInstance().getSortBy(iOnline, 1) != 0) { boolean asc = (SectioningStatusCookie.getInstance().getSortBy(iOnline, 1) > 0); StudentComparator.SortBy sort = StudentComparator.SortBy .values()[Math.abs(SectioningStatusCookie.getInstance().getSortBy(iOnline, 1)) - 1]; UniTimeTableHeader h = null; switch (sort) { case ACCOMODATION: h = hAcmd; break; case AREA: h = hArea; break; case CLASSIFICATION: h = hClasf; break; case CONSENT: h = hConsent; break; case CREDIT: h = hCredit; break; case EMAIL_TS: h = hEmailTS; break; case ENROLLMENT: h = hEnrollment; break; case ENROLLMENT_TS: h = hEnrolledTS; break; case EXTERNAL_ID: h = hExtId; break; case GROUP: h = hGroup; break; case MAJOR: h = hMajor; break; case REQUEST_TS: h = hRequestTS; break; case RESERVATION: h = hReservation; break; case STATUS: h = hStatus; break; case STUDENT: h = hStudent; break; case WAITLIST: h = hWaitlist; break; } if (h != null) iStudentTable.sort(h, new StudentComparator(sort), asc); } }
From source file:org.unitime.timetable.gwt.client.solver.PageFilter.java
License:Apache License
protected Widget getWidget(final FilterParameterInterface param) { if (param.hasOptions()) { final ListBox list = new ListBox(); list.setMultipleSelect(param.isMultiSelect()); if (!param.isMultiSelect()) list.addItem(MESSAGES.itemSelect()); for (ListItem item : param.getOptions()) { list.addItem(item.getText(), item.getValue()); if (param.isMultiSelect()) list.setItemSelected(list.getItemCount() - 1, param.isDefaultItem(item)); else if (param.isDefaultItem(item)) list.setSelectedIndex(list.getItemCount() - 1); }/*from www . ja v a 2s . c o m*/ list.addChangeHandler(new ChangeHandler() { @Override public void onChange(ChangeEvent event) { if (param.isMultiSelect()) { String value = ""; for (int i = 0; i < list.getItemCount(); i++) if (list.isItemSelected(i)) value += (value.isEmpty() ? "" : ",") + list.getValue(i); param.setValue(value); } else { if (list.getSelectedIndex() <= 0) param.setValue(null); else param.setValue(list.getValue(list.getSelectedIndex())); } ValueChangeEvent.fire(PageFilter.this, iFilter); } }); return list; } if ("boolean".equalsIgnoreCase(param.getType())) { CheckBox ch = new CheckBox(); ch.setValue("1".equalsIgnoreCase(param.getDefaultValue())); ch.addValueChangeHandler(new ValueChangeHandler<Boolean>() { @Override public void onValueChange(ValueChangeEvent<Boolean> event) { if (event.getValue() == null) param.setValue(null); else param.setValue(event.getValue() ? "1" : "0"); ValueChangeEvent.fire(PageFilter.this, iFilter); } }); return ch; } if ("file".equalsIgnoreCase(param.getType())) { UniTimeFileUpload upload = new UniTimeFileUpload(); upload.reset(); upload.addValueChangeHandler(new ValueChangeHandler<String>() { @Override public void onValueChange(ValueChangeEvent<String> event) { if (event.getValue() == null) param.setValue(null); else param.setValue(event.getValue()); ValueChangeEvent.fire(PageFilter.this, iFilter); } }); return upload; } if ("textarea".equalsIgnoreCase(param.getType())) { TextArea textarea = new TextArea(); textarea.setStyleName("unitime-TextArea"); textarea.setVisibleLines(5); textarea.setCharacterWidth(80); if (param.hasDefaultValue()) textarea.setText(param.getDefaultValue()); textarea.addValueChangeHandler(new ValueChangeHandler<String>() { @Override public void onValueChange(ValueChangeEvent<String> event) { if (event.getValue() == null) param.setValue(null); else param.setValue(event.getValue()); ValueChangeEvent.fire(PageFilter.this, iFilter); } }); return textarea; } if ("integer".equalsIgnoreCase(param.getType()) || "int".equalsIgnoreCase(param.getType()) || "long".equalsIgnoreCase(param.getType()) || "short".equalsIgnoreCase(param.getType()) || "byte".equalsIgnoreCase(param.getType())) { NumberBox text = new NumberBox(); text.setDecimal(false); text.setNegative(true); if (param.hasDefaultValue()) text.setText(param.getDefaultValue()); text.addValueChangeHandler(new ValueChangeHandler<String>() { @Override public void onValueChange(ValueChangeEvent<String> event) { if (event.getValue() == null) param.setValue(null); else param.setValue(event.getValue()); ValueChangeEvent.fire(PageFilter.this, iFilter); } }); return text; } if ("number".equalsIgnoreCase(param.getType()) || "float".equalsIgnoreCase(param.getType()) || "double".equalsIgnoreCase(param.getType())) { NumberBox text = new NumberBox(); text.setDecimal(true); text.setNegative(true); if (param.hasDefaultValue()) text.setText(param.getDefaultValue()); text.addValueChangeHandler(new ValueChangeHandler<String>() { @Override public void onValueChange(ValueChangeEvent<String> event) { if (event.getValue() == null) param.setValue(null); else param.setValue(event.getValue()); ValueChangeEvent.fire(PageFilter.this, iFilter); } }); return text; } if ("date".equalsIgnoreCase(param.getType())) { SingleDateSelector text = new SingleDateSelector(); if (param.hasDefaultValue()) text.setText(param.getDefaultValue()); final DateTimeFormat format = DateTimeFormat.getFormat(CONSTANTS.eventDateFormat()); text.addValueChangeHandler(new ValueChangeHandler<Date>() { @Override public void onValueChange(ValueChangeEvent<Date> event) { if (event.getValue() == null) param.setValue(null); else param.setValue(format.format(event.getValue())); ValueChangeEvent.fire(PageFilter.this, iFilter); } }); return text; } TextBox text = new TextBox(); text.setStyleName("unitime-TextBox"); text.setWidth("400px"); if (param.hasDefaultValue()) text.setText(param.getDefaultValue()); text.addValueChangeHandler(new ValueChangeHandler<String>() { @Override public void onValueChange(ValueChangeEvent<String> event) { if (event.getValue() == null) param.setValue(null); else param.setValue(event.getValue()); ValueChangeEvent.fire(PageFilter.this, iFilter); } }); return text; }
From source file:org.unitime.timetable.gwt.client.widgets.CourseFinderMultipleCourses.java
License:Apache License
@Override public void setValue(RequestedCourse value, final boolean fireEvents) { iCheckedCourses.clear();/* ww w. j av a2 s .com*/ for (int r = 0; r < iCourses.getRowCount(); r++) { CourseAssignment ca = iCourses.getData(r); if (iCourses.getWidget(r, 0) instanceof CheckBox && ca != null) { CheckBox c = (CheckBox) iCourses.getWidget(r, 0); c.setValue(false); c.setText(""); } } String query = (value == null || !value.isCourse() ? "" : value.getCourseName()); iSelectedMethods.clear(); if (iRequired != null) iRequired.setValue(false); for (CheckBox ch : iInstructionalMethods.values()) if (ch.isEnabled()) ch.setValue(false); if (value != null && value.hasSelectedIntructionalMethods()) for (Preference id : value.getSelectedIntructionalMethods()) { iSelectedMethods.add(id); if (id.isRequired() && iRequired != null) iRequired.setValue(true); CheckBox ch = iInstructionalMethods.get(id); if (ch != null && ch.isEnabled()) ch.setValue(true); } if (iDetails != null) for (CourseFinderCourseDetails d : iDetails) d.onSetValue(value); if (query.isEmpty() && !iShowDefaultSuggestions) { iLastQuery = null; iCourses.clearTable(1); iCourses.setEmptyMessage(MESSAGES.courseSelectionNoCourseFilter()); updateCourseDetails(); } else if (!query.equals(iLastQuery)) { iLastQuery = query; iDataProvider.getData(query, new AsyncCallback<Collection<CourseAssignment>>() { public void onFailure(Throwable caught) { iCourses.clearTable(1); iCourses.setEmptyMessage(caught.getMessage()); if (isVisible()) AriaStatus.getInstance().setText(caught.getMessage()); updateCourseDetails(); ResponseEvent.fire(CourseFinderMultipleCourses.this, false); } public void onSuccess(Collection<CourseAssignment> result) { iCourses.clearTable(1); boolean hasCredit = false, hasNote = false; for (final CourseAssignment record : result) { List<Widget> line = new ArrayList<Widget>(); CheckBox ch = new CheckBox(); ch.setValue( iCheckedCourses.contains(new RequestedCourse(record, CONSTANTS.showCourseTitle()))); ch.setText(ch.getValue() ? String.valueOf(iCheckedCourses .indexOf(new RequestedCourse(record, CONSTANTS.showCourseTitle())) + 1) : ""); ch.addValueChangeHandler(new ValueChangeHandler<Boolean>() { @Override public void onValueChange(ValueChangeEvent<Boolean> event) { RequestedCourse rc = new RequestedCourse(); rc.setCourseId(record.getCourseId()); rc.setCourseName(MESSAGES.courseName(record.getSubject(), record.getCourseNbr())); if (record.hasTitle() && (!record.hasUniqueName() || iShowCourseTitles)) rc.setCourseName(MESSAGES.courseNameWithTitle(record.getSubject(), record.getCourseNbr(), record.getTitle())); rc.setCourseTitle(record.getTitle()); rc.setCredit(record.guessCreditRange()); if (event.getValue()) { iCheckedCourses.add(rc); } else { iCheckedCourses.remove(rc); } for (int r = 0; r < iCourses.getRowCount(); r++) { CourseAssignment ca = iCourses.getData(r); if (iCourses.getWidget(r, 0) instanceof CheckBox && ca != null) { CheckBox c = (CheckBox) iCourses.getWidget(r, 0); c.setText(c.getValue() ? String.valueOf(iCheckedCourses.indexOf( new RequestedCourse(ca, CONSTANTS.showCourseTitle())) + 1) : ""); } } } }); line.add(ch); line.add(new Label(record.getSubject(), false)); line.add(new Label(record.getCourseNbr(), false)); line.add(new HTML(record.getLimit() == null || record.getLimit() == 0 || record.getEnrollment() == null ? "" : record.getLimit() < 0 ? "∞" : (record.getLimit() - record.getEnrollment()) + " / " + record.getLimit(), false)); line.add(new Label(record.getTitle() == null ? "" : record.getTitle(), false)); if (record.hasCredit()) { Label credit = new Label(record.getCreditAbbv(), false); if (record.hasCredit()) credit.setTitle(record.getCreditText()); line.add(credit); hasCredit = true; } else { line.add(new Label()); } line.add(new Label(record.getNote() == null ? "" : record.getNote())); if (record.hasNote()) hasNote = true; if (record.hasTitle()) { if (record.hasNote()) { line.add(new AriaHiddenLabel( ARIA.courseFinderCourseWithTitleAndNote(record.getSubject(), record.getCourseNbr(), record.getTitle(), record.getNote()))); } else { line.add(new AriaHiddenLabel(ARIA.courseFinderCourseWithTitle(record.getSubject(), record.getCourseNbr(), record.getTitle()))); } } else { if (record.hasNote()) { line.add(new AriaHiddenLabel(ARIA.courseFinderCourseWithNote(record.getSubject(), record.getCourseNbr(), record.getNote()))); } else { line.add(new AriaHiddenLabel( ARIA.courseFinderCourse(record.getSubject(), record.getCourseNbr()))); } } int row = iCourses.addRow(record, line); if (iLastQuery .equalsIgnoreCase(MESSAGES.courseName(record.getSubject(), record.getCourseNbr())) || (record.getTitle() != null && iLastQuery.equalsIgnoreCase(MESSAGES.courseNameWithTitle( record.getSubject(), record.getCourseNbr(), record.getTitle())))) iCourses.setSelected(row, true); } iCourses.setColumnVisible(4, hasCredit); iCourses.setColumnVisible(5, hasNote); if (result.size() == 1) iCourses.setSelected(1, true); if (iCourses.getSelectedRow() >= 0) { scrollToSelectedRow(); if (fireEvents) ValueChangeEvent.fire(CourseFinderMultipleCourses.this, getValue()); } updateCourseDetails(); ResponseEvent.fire(CourseFinderMultipleCourses.this, !result.isEmpty()); } }); } if (iRequired != null) { iRequired.setEnabled(isEnabled() && (iSpecReg == null || iSpecReg.isCanRequire())); iRequired.setVisible(iSpecReg == null || iSpecReg.isCanRequire()); } }
From source file:org.unitime.timetable.gwt.client.widgets.CourseFinderMultipleCourses.java
License:Apache License
protected void updateCourseDetails() { if (iLastDetails != null) { for (RequestedCourse rc : iCheckedCourses) { if (rc.equals(iLastDetails)) { rc.clearSelection();/* w w w . j a v a 2 s. co m*/ for (Map.Entry<Preference, CheckBox> e : iInstructionalMethods.entrySet()) if (e.getValue().isEnabled() && e.getValue().getValue()) rc.setSelectedIntructionalMethod(e.getKey(), true); if (iDetails != null) for (CourseFinderCourseDetails d : iDetails) d.onGetValue(rc); } } } int row = iCourses.getSelectedRow(); CourseAssignment record = iCourses.getData(row); iLastDetails = record; if (record == null) { if (iDetails != null) for (CourseFinderCourseDetails detail : iDetails) { detail.setValue(null); } if (isVisible() && isAttached()) AriaStatus.getInstance().setHTML(ARIA.courseFinderNoCourse()); iInstructionalMethodsPanel.clear(); iInstructionalMethods.clear(); } else { for (CourseFinderCourseDetails detail : iDetails) detail.setValue(record); if (record.hasTitle()) { if (record.hasNote()) { AriaStatus.getInstance() .setHTML(ARIA.courseFinderSelectedWithTitleAndNote(iCourses.getSelectedRow(), iCourses.getRowCount() - 1, record.getSubject(), record.getCourseNbr(), record.getTitle(), record.getNote())); } else { AriaStatus.getInstance() .setHTML(ARIA.courseFinderSelectedWithTitle(iCourses.getSelectedRow(), iCourses.getRowCount() - 1, record.getSubject(), record.getCourseNbr(), record.getTitle())); } } else { if (record.hasNote()) { AriaStatus.getInstance() .setHTML(ARIA.courseFinderSelectedWithNote(iCourses.getSelectedRow(), iCourses.getRowCount() - 1, record.getSubject(), record.getCourseNbr(), record.getNote())); } else { AriaStatus.getInstance().setHTML(ARIA.courseFinderSelected(iCourses.getSelectedRow(), iCourses.getRowCount() - 1, record.getSubject(), record.getCourseNbr())); } } iInstructionalMethodsPanel.clear(); iInstructionalMethods.clear(); if (record.hasInstructionalMethodSelection()) { P imp = new P("preference-label"); imp.setText(MESSAGES.labelInstructionalMethodPreference()); iInstructionalMethodsPanel.add(imp); for (final IdValue m : record.getInstructionalMethods()) { CheckBox ch = new CheckBox(m.getValue()); ch.setValue(isSelectedMethod(m.getId())); ch.setEnabled(isEnabled()); final Preference p = new Preference(m.getId(), m.getValue(), isSelectedMethodRequired(m.getId())); ch.addValueChangeHandler(new ValueChangeHandler<Boolean>() { @Override public void onValueChange(ValueChangeEvent<Boolean> event) { if (event.getValue()) iSelectedMethods.add(p); else iSelectedMethods.remove(p); } }); ch.addStyleName("instructional-method"); iInstructionalMethods.put(p, ch); iInstructionalMethodsPanel.add(ch); } } else if (record.hasInstructionalMethods()) { P imp = new P("preference-label"); imp.setText(MESSAGES.labelInstructionalMethodPreference()); iInstructionalMethodsPanel.add(imp); for (IdValue m : record.getInstructionalMethods()) { CheckBox ch = new CheckBox(m.getValue()); ch.addStyleName("instructional-method"); ch.setValue(true); ch.setEnabled(false); iInstructionalMethods .put(new Preference(m.getId(), m.getValue(), isSelectedMethodRequired(m.getId())), ch); iInstructionalMethodsPanel.add(ch); } } if (iRequired != null) { iInstructionalMethodsPanel.add(iRequired); } } }
From source file:org.unitime.timetable.gwt.client.widgets.CourseFinderMultipleCourses.java
License:Apache License
public boolean setCheckedCourses(List<RequestedCourse> checkedCourses) { iLastDetails = null;//from ww w . j a va2s . co m iCheckedCourses = checkedCourses; iSelectedMethods.clear(); if (iRequired != null) iRequired.setValue(false); if (iDetails != null) for (CourseFinderCourseDetails detail : iDetails) detail.setValue(null); if (iCourses.getSelectedRow() >= 0) iCourses.setSelected(iCourses.getSelectedRow(), false); if (!iCheckedCourses.isEmpty()) { RequestedCourse value = iCheckedCourses.get(0); if (value != null && value.hasSelectedIntructionalMethods()) for (Preference id : iCheckedCourses.get(0).getSelectedIntructionalMethods()) { iSelectedMethods.add(id); if (id.isRequired() && iRequired != null) iRequired.setValue(true); } if (value != null && value.hasSelectedClasses()) for (Preference p : value.getSelectedClasses()) if (p.isRequired() && iRequired != null) iRequired.setValue(true); if (iDetails != null) for (CourseFinderCourseDetails d : iDetails) if (d instanceof CourseFinderClasses) { Set<Preference> classes = ((CourseFinderClasses) d).getAllSelectedClasses(); classes.clear(); for (RequestedCourse rc : iCheckedCourses) if (rc.hasSelectedClasses()) classes.addAll(rc.getSelectedClasses()); } } int checked = 0; for (int r = 0; r < iCourses.getRowCount(); r++) { CourseAssignment ca = iCourses.getData(r); if (iCourses.getWidget(r, 0) instanceof CheckBox && ca != null) { CheckBox c = (CheckBox) iCourses.getWidget(r, 0); int idx = iCheckedCourses.indexOf(new RequestedCourse(ca, CONSTANTS.showCourseTitle())); c.setValue(idx >= 0); c.setText(idx >= 0 ? String.valueOf(idx + 1) : ""); if (idx >= 0) checked++; if (!iCheckedCourses.isEmpty() && iCheckedCourses.get(0).equals(ca)) { iCourses.setSelected(r, true); } } } scrollToSelectedRow(); updateCourseDetails(); return (checked == checkedCourses.size()); }
From source file:org.utgenome.gwt.utgb.client.db.DatabaseTable.java
License:Apache License
public void setValue(int row, int column, JSONValue value) { if (value == null) return;//from w w w . j a v a 2 s .c o m DataType dataType = _relation.getDataType(column); JSONBoolean bool; if ((bool = value.isBoolean()) != null) { CheckBox cb = new CheckBox(); cb.setValue(bool.booleanValue()); _table.setWidget(row, column, cb); } else { _table.setText(row, column, dataType.toString(value)); } }
From source file:org.waveprotocol.wave.client.editor.debug.DebugOptions.java
License:Apache License
private void addCheckBox(Panel panel, String caption, boolean initValue, ValueChangeHandler<Boolean> handler) { CheckBox box = new CheckBox(caption); box.setValue(initValue); box.addValueChangeHandler(handler);/*from ww w. ja v a2 s . c om*/ panel.add(box); }
From source file:org.zanata.webtrans.client.view.TransFilterView.java
License:Open Source License
private void updateChildCheckbox(CheckBox checkbox, boolean value) { checkbox.setValue(value); updateParentCheckboxes(); }