1 33 34 package edu.rice.cs.drjava.ui; 35 36 import edu.rice.cs.drjava.model.SingleDisplayModel; 37 import edu.rice.cs.drjava.model.compiler.CompilerErrorModel; 38 import edu.rice.cs.util.text.SwingDocument; 39 40 import javax.swing.text.*; 41 42 47 public class JavadocErrorPanel extends ErrorPanel { 48 49 protected JavadocErrorListPane _errorListPane; 50 53 58 public JavadocErrorPanel(SingleDisplayModel model, MainFrame frame) { 59 super(model, frame, "Javadoc Output", "Javadoc"); 60 _errorListPane = new JavadocErrorListPane(); 62 setErrorListPane(_errorListPane); 63 } 64 65 68 public JavadocErrorListPane getErrorListPane() { 69 return _errorListPane; 70 } 71 72 protected CompilerErrorModel getErrorModel() { 73 return getModel().getJavadocModel().getJavadocErrorModel(); 74 } 75 76 77 public void setJavadocInProgress() { 78 _errorListPane.setJavadocInProgress(); 79 } 80 81 84 protected void _close() { 85 super._close(); 86 getModel().getJavadocModel().resetJavadocErrors(); 87 reset(); 88 } 89 90 91 public void reset() { 92 CompilerErrorModel model = getModel().getJavadocModel().getJavadocErrorModel(); 93 if (model != null) _numErrors = model.getNumErrors(); 94 else _numErrors = 0; 95 96 _errorListPane.updateListPane(true); 97 } 98 99 103 public class JavadocErrorListPane extends ErrorPanel.ErrorListPane { 104 108 109 public void setJavadocInProgress() { 110 _errorListPositions = new Position[0]; 111 112 SwingDocument doc = new SwingDocument(); 113 doc.append("Generating Javadoc. Please wait...\n", NORMAL_ATTRIBUTES); 114 setDocument(doc); 115 selectNothing(); 116 } 117 118 119 protected void _updateWithErrors() throws BadLocationException { 120 SwingDocument doc = new SwingDocument(); 121 String failureName = "error"; 122 if (getErrorModel().hasOnlyWarnings()) failureName = "warning"; 123 _updateWithErrors(failureName, "found", doc); 124 } 125 126 127 protected void _updateNoErrors(boolean done) throws BadLocationException { 128 SwingDocument doc = new SwingDocument(); 129 String msg = (done) ? "Javadoc generated successfully." : ""; 130 doc.append(msg, NORMAL_ATTRIBUTES); 131 setDocument(doc); 132 selectNothing(); 133 } 134 135 139 } 140 141 } 142 | Popular Tags |