Example usage for com.google.gwt.user.client.ui CheckBox setValue

List of usage examples for com.google.gwt.user.client.ui CheckBox setValue

Introduction

In this page you can find the example usage for com.google.gwt.user.client.ui CheckBox setValue.

Prototype

@Override
public void setValue(Boolean value) 

Source Link

Document

Checks or unchecks the check box.

Usage

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("&otimes;", 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("&nbsp;");
    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("&nbsp;", 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("&nbsp;", false));
                line.add(new HTML("&nbsp;", false));
            }
            if (hasMajor)
                line.add(new HTML("&nbsp;", false));
            if (hasGroup)
                line.add(new HTML("&nbsp;", false));
            if (hasAcmd)
                line.add(new HTML("&nbsp;", false));
            line.add(new HTML("&nbsp;", 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 ? "&nbsp;" : sDF.format(info.getRequestedDate()),
                        false));
            if (hasEnrolledDate)
                line.add(new HTML(
                        info.getEnrolledDate() == null ? "&nbsp;" : sDF.format(info.getEnrolledDate()), false));
            if (iOnline)
                line.add(new HTML(info.getEmailDate() == null ? "&nbsp;" : sDF.format(info.getEmailDate()),
                        false));
        } else {
            if (hasRequestedDate)
                line.add(new HTML("&nbsp;", false));
            if (hasEnrolledDate)
                line.add(new HTML("&nbsp;", false));
            if (iOnline)
                line.add(new HTML("&nbsp;", 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 ? "&infin;"
                                            : (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();
}