Search in sources :

Example 1 with GraphicOrderInteraction

use of uk.ac.ed.ph.jqtiplus.node.item.interaction.GraphicOrderInteraction in project OpenOLAT by OpenOLAT.

the class GraphicOrderInteractionArchive method writeHeader1.

@Override
public int writeHeader1(AssessmentItem item, Interaction interaction, int itemNumber, int interactionNumber, Row dataRow, int col, OpenXMLWorkbook workbook) {
    if (interactionNumber == 0) {
        String header = item.getTitle();
        dataRow.addCell(col++, header, workbook.getStyles().getHeaderStyle());
    }
    GraphicOrderInteraction orderInteraction = (GraphicOrderInteraction) interaction;
    List<HotspotChoice> choices = orderInteraction.getHotspotChoices();
    if (choices.size() > 0) {
        col += (choices.size() - 1);
    }
    return col;
}
Also used : GraphicOrderInteraction(uk.ac.ed.ph.jqtiplus.node.item.interaction.GraphicOrderInteraction) HotspotChoice(uk.ac.ed.ph.jqtiplus.node.item.interaction.graphic.HotspotChoice)

Example 2 with GraphicOrderInteraction

use of uk.ac.ed.ph.jqtiplus.node.item.interaction.GraphicOrderInteraction in project OpenOLAT by OpenOLAT.

the class GraphicOrderInteractionArchive method writeHeader2.

@Override
public int writeHeader2(AssessmentItem item, Interaction interaction, int itemNumber, int interactionNumber, Row dataRow, int col, OpenXMLWorkbook workbook) {
    GraphicOrderInteraction orderInteraction = (GraphicOrderInteraction) interaction;
    List<HotspotChoice> choices = orderInteraction.getHotspotChoices();
    if (choices.size() > 0) {
        for (int i = 0; i < choices.size(); i++) {
            String header = (itemNumber + 1) + "_GO" + i;
            dataRow.addCell(col++, header, workbook.getStyles().getHeaderStyle());
        }
    } else {
        col++;
    }
    return col;
}
Also used : GraphicOrderInteraction(uk.ac.ed.ph.jqtiplus.node.item.interaction.GraphicOrderInteraction) HotspotChoice(uk.ac.ed.ph.jqtiplus.node.item.interaction.graphic.HotspotChoice)

Example 3 with GraphicOrderInteraction

use of uk.ac.ed.ph.jqtiplus.node.item.interaction.GraphicOrderInteraction in project openolat by klemens.

the class GraphicOrderInteractionArchive method writeHeader2.

@Override
public int writeHeader2(AssessmentItem item, Interaction interaction, int itemNumber, int interactionNumber, Row dataRow, int col, OpenXMLWorkbook workbook) {
    GraphicOrderInteraction orderInteraction = (GraphicOrderInteraction) interaction;
    List<HotspotChoice> choices = orderInteraction.getHotspotChoices();
    if (choices.size() > 0) {
        for (int i = 0; i < choices.size(); i++) {
            String header = (itemNumber + 1) + "_GO" + i;
            dataRow.addCell(col++, header, workbook.getStyles().getHeaderStyle());
        }
    } else {
        col++;
    }
    return col;
}
Also used : GraphicOrderInteraction(uk.ac.ed.ph.jqtiplus.node.item.interaction.GraphicOrderInteraction) HotspotChoice(uk.ac.ed.ph.jqtiplus.node.item.interaction.graphic.HotspotChoice)

Example 4 with GraphicOrderInteraction

use of uk.ac.ed.ph.jqtiplus.node.item.interaction.GraphicOrderInteraction in project openolat by klemens.

the class GraphicOrderInteractionArchive method writeInteractionData.

@Override
public int writeInteractionData(AssessmentItem item, AssessmentResponse response, Interaction interaction, int itemNumber, Row dataRow, int col, OpenXMLWorkbook workbook) {
    GraphicOrderInteraction orderInteraction = (GraphicOrderInteraction) interaction;
    List<HotspotChoice> choices = orderInteraction.getHotspotChoices();
    if (choices.size() > 0) {
        String stringuifiedResponse = response == null ? null : response.getStringuifiedResponse();
        List<String> responses = CorrectResponsesUtil.parseResponses(stringuifiedResponse);
        List<Identifier> correctAnswers = CorrectResponsesUtil.getCorrectOrderedIdentifierResponses(item, interaction);
        for (int i = 0; i < choices.size(); i++) {
            String currentResponse = null;
            if (responses.size() > i) {
                currentResponse = responses.get(i);
            }
            String correctAnswer = null;
            if (correctAnswers.size() > i) {
                correctAnswer = correctAnswers.get(i).toString();
            }
            if (correctAnswer != null && correctAnswer.equals(currentResponse)) {
                dataRow.addCell(col++, currentResponse, workbook.getStyles().getCorrectStyle());
            } else {
                dataRow.addCell(col++, currentResponse, null);
            }
        }
    } else {
        col++;
    }
    return col;
}
Also used : GraphicOrderInteraction(uk.ac.ed.ph.jqtiplus.node.item.interaction.GraphicOrderInteraction) Identifier(uk.ac.ed.ph.jqtiplus.types.Identifier) HotspotChoice(uk.ac.ed.ph.jqtiplus.node.item.interaction.graphic.HotspotChoice)

Example 5 with GraphicOrderInteraction

use of uk.ac.ed.ph.jqtiplus.node.item.interaction.GraphicOrderInteraction in project OpenOLAT by OpenOLAT.

the class GraphicOrderInteractionArchive method writeInteractionData.

@Override
public int writeInteractionData(AssessmentItem item, AssessmentResponse response, Interaction interaction, int itemNumber, Row dataRow, int col, OpenXMLWorkbook workbook) {
    GraphicOrderInteraction orderInteraction = (GraphicOrderInteraction) interaction;
    List<HotspotChoice> choices = orderInteraction.getHotspotChoices();
    if (choices.size() > 0) {
        String stringuifiedResponse = response == null ? null : response.getStringuifiedResponse();
        List<String> responses = CorrectResponsesUtil.parseResponses(stringuifiedResponse);
        List<Identifier> correctAnswers = CorrectResponsesUtil.getCorrectOrderedIdentifierResponses(item, interaction);
        for (int i = 0; i < choices.size(); i++) {
            String currentResponse = null;
            if (responses.size() > i) {
                currentResponse = responses.get(i);
            }
            String correctAnswer = null;
            if (correctAnswers.size() > i) {
                correctAnswer = correctAnswers.get(i).toString();
            }
            if (correctAnswer != null && correctAnswer.equals(currentResponse)) {
                dataRow.addCell(col++, currentResponse, workbook.getStyles().getCorrectStyle());
            } else {
                dataRow.addCell(col++, currentResponse, null);
            }
        }
    } else {
        col++;
    }
    return col;
}
Also used : GraphicOrderInteraction(uk.ac.ed.ph.jqtiplus.node.item.interaction.GraphicOrderInteraction) Identifier(uk.ac.ed.ph.jqtiplus.types.Identifier) HotspotChoice(uk.ac.ed.ph.jqtiplus.node.item.interaction.graphic.HotspotChoice)

Aggregations

GraphicOrderInteraction (uk.ac.ed.ph.jqtiplus.node.item.interaction.GraphicOrderInteraction)6 HotspotChoice (uk.ac.ed.ph.jqtiplus.node.item.interaction.graphic.HotspotChoice)6 Identifier (uk.ac.ed.ph.jqtiplus.types.Identifier)2