1 /*** 2 * Created on Jun 13, 2005, Copyright UC Regents 3 */ 4 package org.telscenter.pas.beans; 5 6 import java.util.List; 7 import java.util.Map; 8 9 import javax.swing.JLabel; 10 import javax.swing.JPanel; 11 12 import net.sf.sail.core.beans.service.AnnotationService; 13 14 import org.telscenter.pas.service.NavigateAction; 15 import org.telscenter.pas.steps.domain.BlockInteraction; 16 17 import com.lowagie.text.pdf.PdfPCell; 18 19 /*** 20 * To be implemented by subclasses of PasStep that can return report on work 21 * performed within the step. 22 * 23 * @author turadg 24 */ 25 public interface IWorkReporter { 26 27 /*** 28 * A JPanel presenting a report of the learner's work suitable for the 29 * learner themself. 30 * 31 * @return 32 */ 33 34 public JPanel getReportForLearner(); 35 36 /*** 37 * for special navigation options 38 * 39 * @param navigateAction - navigates the project to that step 40 * @return 41 */ 42 public JPanel getReportForLearner(NavigateAction navigateAction); 43 44 /*** 45 * for special navigation options 46 * 47 * @param navigateAction - navigates the project to that step 48 * @return 49 */ 50 public JPanel getReportForLearnerWithAnnotations(NavigateAction navigateAction); 51 52 public JPanel getReportForLearnerWithAnnotations(); 53 54 public PdfPCell getReportForLearnerPDF(AnnotationService annotationService); 55 56 public void initStepParts(); 57 58 public List<JPanel> getCurrentStepParts(); 59 60 public List<String> getCurrentPrompts(); 61 62 public List<JLabel> getCurrentAnswers(); 63 64 public Integer getPossibleScore(); 65 66 public void setPossibleScore(Integer possibleScore); 67 68 69 /*** 70 * Returns a <rimname, prompt> mapping(s) for this step 71 * Note that steps like <code>Note</code> can have multiple 72 * Rims because if it were a multi-part note step. 73 * 74 * @return <code>Map</code> rimname<->prompt mapping for this step. 75 */ 76 public Map<String, String> getEntityToPromptMap(); 77 78 }