1 26 package org.omg.lifl.eclipse.plugin.shell.views; 27 28 import java.util.Vector ; 29 30 import org.eclipse.jface.dialogs.MessageDialog; 31 import org.eclipse.jface.text.Document; 32 import org.eclipse.jface.text.TextViewer; 33 import org.eclipse.swt.graphics.Color; 34 import org.eclipse.swt.graphics.Point; 35 import org.eclipse.swt.layout.GridData; 36 import org.eclipse.swt.widgets.Composite; 37 import org.eclipse.ui.part.ViewPart; 38 39 43 44 public class OpenCCMConsole extends ViewPart { 45 private TextViewer viewer; 46 private Document document; 47 public static final String CONSOLE_ID = "org.omg.lifl.eclipse.plugin.shell.views.OpenCCMConsole"; 48 49 52 public OpenCCMConsole() { 53 viewer = null; 54 document = null; 55 } 56 57 61 public void createPartControl(Composite parent) { 62 viewer = 63 new TextViewer(parent, 832); GridData viewerData = new GridData(1808); 65 viewer.getControl().setLayoutData(viewerData); 66 viewer.setEditable(false); 67 68 } 69 70 private void showMessage(String message) { 71 MessageDialog.openInformation( 72 viewer.getControl().getShell(), 73 "OpenCCM Console View", 74 message); 75 } 76 77 80 public void setFocus() {} 81 82 public void clear() 83 { 84 viewer.setDocument(null); 85 } 86 87 public void refresh(String string, Vector errorHighlight) 88 { 89 document = new Document(string); 90 viewer.setDocument(document); 91 try 92 { 93 for(int i = 0; i < errorHighlight.size(); i++) 94 { 95 Point highlightRange = (Point)errorHighlight.elementAt(i); 96 viewer.setTextColor(new Color(null, 255, 25, 20), highlightRange.x, highlightRange.y, false); 97 } 98 99 } 100 catch(Exception e) 101 { 102 e.printStackTrace(); 103 } 104 int numLines = document.getNumberOfLines(); 105 viewer.setTopIndex(numLines); 106 } 107 108 109 110 113 public TextViewer getViewer() { 114 return viewer; 115 } 116 117 120 public void setViewer(TextViewer viewer) { 121 this.viewer = viewer; 122 } 123 124 } | Popular Tags |