From faa710aee13347c4c55690f516ffda9179a92f3c Mon Sep 17 00:00:00 2001 From: Melanie Date: Tue, 14 Aug 2012 21:54:47 +0200 Subject: Allow the use of the region debug console found in recent viewers. This console will be available to estate owners and managers. If the user using the console had god privs, they can use "set console on" and "set console off" to switch on the actual region console. This allows console access from within the viewer. The region debug console can coexist with any other main console. --- OpenSim/Framework/Console/CommandConsole.cs | 9 +++++++++ OpenSim/Framework/Console/LocalConsole.cs | 4 +++- OpenSim/Framework/Console/MockConsole.cs | 4 +++- OpenSim/Framework/Console/RemoteConsole.cs | 1 + 4 files changed, 16 insertions(+), 2 deletions(-) (limited to 'OpenSim/Framework/Console') diff --git a/OpenSim/Framework/Console/CommandConsole.cs b/OpenSim/Framework/Console/CommandConsole.cs index 87bdacd..bd23d1c 100644 --- a/OpenSim/Framework/Console/CommandConsole.cs +++ b/OpenSim/Framework/Console/CommandConsole.cs @@ -678,6 +678,8 @@ namespace OpenSim.Framework.Console { // private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); + public event OnOutputDelegate OnOutput; + public ICommands Commands { get; private set; } public CommandConsole(string defaultPrompt) : base(defaultPrompt) @@ -697,6 +699,13 @@ namespace OpenSim.Framework.Console Output(s); } + protected void FireOnOutput(string text) + { + OnOutputDelegate onOutput = OnOutput; + if (onOutput != null) + onOutput(text); + } + /// /// Display a command prompt on the console and wait for user input /// diff --git a/OpenSim/Framework/Console/LocalConsole.cs b/OpenSim/Framework/Console/LocalConsole.cs index f65813b..d41481f 100644 --- a/OpenSim/Framework/Console/LocalConsole.cs +++ b/OpenSim/Framework/Console/LocalConsole.cs @@ -319,6 +319,8 @@ namespace OpenSim.Framework.Console public override void Output(string text, string level) { + FireOnOutput(text); + lock (m_commandLine) { if (m_cursorYPosition == -1) @@ -509,4 +511,4 @@ namespace OpenSim.Framework.Console } } } -} \ No newline at end of file +} diff --git a/OpenSim/Framework/Console/MockConsole.cs b/OpenSim/Framework/Console/MockConsole.cs index 4d8751f..b489f93 100644 --- a/OpenSim/Framework/Console/MockConsole.cs +++ b/OpenSim/Framework/Console/MockConsole.cs @@ -40,6 +40,8 @@ namespace OpenSim.Framework.Console /// public class MockConsole : ICommandConsole { + public event OnOutputDelegate OnOutput; + private MockCommands m_commands = new MockCommands(); public ICommands Commands { get { return m_commands; } } @@ -76,4 +78,4 @@ namespace OpenSim.Framework.Console public string[] Resolve(string[] cmd) { return null; } public XmlElement GetXml(XmlDocument doc) { return null; } } -} \ No newline at end of file +} diff --git a/OpenSim/Framework/Console/RemoteConsole.cs b/OpenSim/Framework/Console/RemoteConsole.cs index eabb62d..27edd4b 100644 --- a/OpenSim/Framework/Console/RemoteConsole.cs +++ b/OpenSim/Framework/Console/RemoteConsole.cs @@ -100,6 +100,7 @@ namespace OpenSim.Framework.Console m_LineNumber++; m_Scrollback.Add(String.Format("{0}", m_LineNumber)+":"+level+":"+text); } + FireOnOutput(text.Trim()); System.Console.WriteLine(text.Trim()); } -- cgit v1.1