04161fd8ab02d4ea7484198e3b75eeaea718d664
[phpeclipse.git] / archive / net.sourceforge.phpeclipse.wiki / src / net / sourceforge / phpeclipse / wiki / actions / ProblemConsole.java
1 package net.sourceforge.phpeclipse.wiki.actions;
2
3 import net.sourceforge.phpeclipse.wiki.editor.WikiEditorPlugin;
4
5 import org.eclipse.swt.graphics.Color;
6 import org.eclipse.ui.console.ConsolePlugin;
7 import org.eclipse.ui.console.IConsole;
8 import org.eclipse.ui.console.MessageConsole;
9 import org.eclipse.ui.console.MessageConsoleStream;
10
11 public class ProblemConsole {
12   private MessageConsole myConsole;
13
14   private MessageConsoleStream stream;
15
16   private boolean hasMessages;
17
18   public ProblemConsole() {
19     hasMessages = false;
20     myConsole = new MessageConsole("Wikipedia Editor Problems", null);
21     ConsolePlugin.getDefault().getConsoleManager().addConsoles(new IConsole[] { myConsole });
22     ConsolePlugin.getDefault().getConsoleManager().showConsoleView(myConsole);
23     //  layout.addView(IConsoleConstants.ID_CONSOLE_VIEW, IPageLayout.BOTTOM, .5f,IPageLayout.ID_EDITOR_AREA);
24     stream = myConsole.newMessageStream();
25   }
26
27   /**
28    * @return
29    */
30   public Color getColor() {
31     return stream.getColor();
32   }
33
34   /**
35    * @return
36    */
37   public MessageConsole getConsole() {
38     return stream.getConsole();
39   }
40
41   /*
42    * (non-Javadoc)
43    * 
44    * @see java.lang.Object#hashCode()
45    */
46   public int hashCode() {
47     return stream.hashCode();
48   }
49
50   /**
51    * @param message
52    */
53   public void print(String message) {
54     hasMessages = true;
55     stream.print(message);
56   }
57
58   /**
59    *  
60    */
61   public void println() {
62     hasMessages = true;
63     stream.println();
64   }
65
66   /**
67    * @param message
68    */
69   public void println(String message) {
70     hasMessages = true;
71     stream.println(message);
72   }
73
74   /**
75    * @param color
76    */
77   public void setColor(Color color) {
78     stream.setColor(color);
79   }
80
81   public void reportError(String title, String message) {
82     if (hasMessages) {
83       WikiEditorPlugin.getDefault().reportError(title, message);
84     }
85   }
86
87   public void reportError() {
88     reportError("Problems listed", "Open console view for problems log!");
89   }
90 }