--- /dev/null
+package net.sourceforge.phpeclipse.externaltools;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.ui.console.ConsolePlugin;
+import org.eclipse.ui.console.IConsole;
+import org.eclipse.ui.console.MessageConsole;
+import org.eclipse.ui.console.MessageConsoleStream;
+
+public class PHPConsole {
+ private MessageConsole myConsole;
+
+ private MessageConsoleStream stream;
+
+ private boolean hasMessages;
+
+ public PHPConsole() {
+ hasMessages = false;
+ myConsole = new MessageConsole("PHPeclipse Console", null);
+ ConsolePlugin.getDefault().getConsoleManager().addConsoles(new IConsole[] { myConsole });
+ ConsolePlugin.getDefault().getConsoleManager().showConsoleView(myConsole);
+ // layout.addView(IConsoleConstants.ID_CONSOLE_VIEW, IPageLayout.BOTTOM, .5f,IPageLayout.ID_EDITOR_AREA);
+ stream = myConsole.newMessageStream();
+ }
+
+ /**
+ * @return
+ */
+ public Color getColor() {
+ return stream.getColor();
+ }
+
+ /**
+ * @return
+ */
+ public MessageConsole getConsole() {
+ return stream.getConsole();
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see java.lang.Object#hashCode()
+ */
+ public int hashCode() {
+ return stream.hashCode();
+ }
+
+ /**
+ * @param message
+ */
+ public void print(String message) {
+ hasMessages = true;
+ stream.print(message);
+ }
+
+ /**
+ *
+ */
+ public void println() {
+ hasMessages = true;
+ stream.println();
+ }
+
+ /**
+ * @param message
+ */
+ public void println(String message) {
+ hasMessages = true;
+ stream.println(message);
+ }
+
+ /**
+ * @param color
+ */
+ public void setColor(Color color) {
+ stream.setColor(color);
+ }
+
+ // public void reportError(String title, String message) {
+ // if (hasMessages) {
+ // WikiEditorPlugin.getDefault().reportError(title, message);
+ // }
+ // }
+
+ // public void reportError() {
+ // reportError("Problems listed", "Open console view for problems log!");
+ // }
+ /**
+ * Creates a string buffer from the given input stream
+ */
+ public static String getStringFromStream(InputStream stream) throws IOException {
+ StringBuffer buffer = new StringBuffer();
+ byte[] b = new byte[100];
+ int finished = 0;
+ while (finished != -1) {
+ finished = stream.read(b);
+ if (finished != -1) {
+ String current = new String(b, 0, finished);
+ buffer.append(current);
+ }
+ }
+ return buffer.toString();
+ }
+}
\ No newline at end of file