static void OnLogged(object sender, LogEventArgs e) { if (!e.WriteToConsole) return; switch (e.MessageType) { case LogType.Error: Console.ForegroundColor = ConsoleColor.Red; Console.Error.WriteLine(e.Message); Console.ResetColor(); return; case LogType.SeriousError: Console.ForegroundColor = ConsoleColor.White; Console.BackgroundColor = ConsoleColor.Red; Console.Error.WriteLine(e.Message); Console.ResetColor(); return; case LogType.Warning: Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine(e.Message); Console.ResetColor(); return; case LogType.Debug: Console.ForegroundColor = ConsoleColor.DarkGray; Console.WriteLine(e.Message); Console.ResetColor(); return; default: Console.WriteLine(e.Message); return; } }
void HandleLog( object sender, LogEventArgs e ) { for( int i = 0; i < thingsToLog.Length; i++ ) { if( thingsToLog[i] == e.MessageType ) { HasMessages = true; lock( locker ) { messages.Add( e.MessageType + ": " + e.RawMessage ); } } } }
public void OnLogged( object sender, LogEventArgs e ) { if( !e.WriteToConsole ) return; try { if( shutdownComplete ) return; if( logBox.InvokeRequired ) { BeginInvoke( (EventHandler<LogEventArgs>)OnLogged, sender, e ); } else { Log( e.Message ); } } catch( ObjectDisposedException ) { } catch( InvalidOperationException ) { } }
void HandleLog( object sender, LogEventArgs e ) { if( creatingThread != null && creatingThread != Thread.CurrentThread ) return; for( int i = 0; i < thingsToLog.Length; i++ ) { if( thingsToLog[i] != e.MessageType ) continue; switch( e.MessageType ) { case LogType.SeriousError: case LogType.Error: HasErrors = true; break; case LogType.Warning: HasWarnings = true; break; } HasMessages = true; lock( locker ) { messages.Add( e.MessageType + ": " + e.RawMessage ); } } }
public void OnLogged( object sender, LogEventArgs e ) { if( !e.WriteToConsole ) return; try { if( shutdownComplete ) return; if( logBox.InvokeRequired ) { BeginInvoke( (EventHandler<LogEventArgs>)OnLogged, sender, e ); } else { logBox.AppendText( e.Message + Environment.NewLine ); if( logBox.Lines.Length > MaxLinesInLog ) { logBox.Text = "----- cut off, see 800Craft.log for complete log -----" + Environment.NewLine + logBox.Text.Substring( logBox.GetFirstCharIndexFromLine( 50 ) ); } logBox.SelectionStart = logBox.Text.Length; logBox.ScrollToCaret(); if( !Server.IsRunning || shutdownPending ) logBox.Refresh(); } } catch( ObjectDisposedException ) { } catch( InvalidOperationException ) { } }
public void OnLogged(object sender, LogEventArgs e) { if (!e.WriteToConsole) return; try { if (shutdownComplete) return; if (logBox.InvokeRequired) { BeginInvoke((EventHandler<LogEventArgs>)OnLogged, sender, e); } else { // store user's selection int userSelectionStart = logBox.SelectionStart; int userSelectionLength = logBox.SelectionLength; bool userSelecting = (logBox.SelectionStart != logBox.Text.Length && logBox.Focused || logBox.SelectionLength > 0); // insert and color a new message int oldLength = logBox.Text.Length; string msgToAppend = e.Message + Environment.NewLine; logBox.AppendText(msgToAppend); logBox.Select(oldLength, msgToAppend.Length); switch (e.MessageType) { case LogType.PrivateChat: logBox.SelectionColor = System.Drawing.Color.Teal; break; case LogType.IRC: if (ThemeBox.SelectedItem == null) { logBox.SelectionColor = System.Drawing.Color.Navy; } else { switch (ThemeBox.SelectedItem.ToString()) { default: logBox.SelectionColor = System.Drawing.Color.LightSkyBlue; break; case "New LegendCraft": logBox.SelectionColor = System.Drawing.Color.Navy; break; } } break; case LogType.ChangedWorld: logBox.SelectionColor = System.Drawing.Color.Orange; break; case LogType.Warning: if (ThemeBox.SelectedItem == null) { logBox.SelectionColor = System.Drawing.Color.Yellow; } else { switch (ThemeBox.SelectedItem.ToString()) { default: logBox.SelectionColor = System.Drawing.Color.MediumOrchid; break; case "New LegendCraft": logBox.SelectionColor = System.Drawing.Color.Yellow; break; } } break; case LogType.Debug: logBox.SelectionColor = System.Drawing.Color.DarkGray; break; case LogType.Error: case LogType.SeriousError: logBox.SelectionColor = System.Drawing.Color.Red; break; case LogType.ConsoleInput: case LogType.ConsoleOutput: if (ThemeBox.SelectedItem == null) { logBox.SelectionColor = System.Drawing.Color.White; } else { switch (ThemeBox.SelectedItem.ToString()) { default: logBox.SelectionColor = System.Drawing.Color.Black; break; case "New LegendCraft": logBox.SelectionColor = System.Drawing.Color.White; break; } } break; default: if (ThemeBox.SelectedItem == null) { logBox.SelectionColor = System.Drawing.Color.LightGray; } else { switch (ThemeBox.SelectedItem.ToString()) { default: logBox.SelectionColor = System.Drawing.Color.Black; break; case "New LegendCraft": logBox.SelectionColor = System.Drawing.Color.LightGray; break; } } break; } // cut off the log, if too long if (logBox.Lines.Length > MaxLinesInLog) { logBox.SelectionStart = 0; logBox.SelectionLength = logBox.GetFirstCharIndexFromLine(LinesToTrimWhenExceeded); userSelectionStart -= logBox.SelectionLength; if (userSelectionStart < 0) userSelecting = false; string textToAdd = "----- cut off, see " + Logger.CurrentLogFileName + " for complete log -----" + Environment.NewLine; logBox.SelectedText = textToAdd; userSelectionStart += textToAdd.Length; logBox.SelectionColor = System.Drawing.Color.DarkGray; } // either restore user's selection, or scroll to end if (userSelecting) { logBox.Select(userSelectionStart, userSelectionLength); } else { logBox.SelectionStart = logBox.Text.Length; logBox.ScrollToCaret(); } } } catch (ObjectDisposedException) { } catch (InvalidOperationException) { } }
static void OnLogged( object sender, LogEventArgs e ) { switch( e.MessageType ) { case LogType.Error: case LogType.SeriousError: case LogType.Warning: Console.Error.WriteLine( e.MessageType ); return; default: Console.WriteLine( e.Message ); return; } }
void OnLogged( object sender, LogEventArgs e ) { if( !e.WriteToConsole ) return; try { if( shutdownComplete ) return; if( InvokeRequired ) { BeginInvoke( (EventHandler<LogEventArgs>)OnLogged, sender, e ); } else { // store user's selection int userSelectionStart = logBox.SelectionStart; int userSelectionLength = logBox.SelectionLength; bool userSelecting = (logBox.SelectionStart != logBox.Text.Length && logBox.Focused || logBox.SelectionLength > 0); // insert and color a new message int oldLength = logBox.Text.Length; char initialcolor = 'f'; switch( e.MessageType ) { case LogType.Warning: initialcolor = 'e'; break; case LogType.Debug: initialcolor = '8'; break; case LogType.Error: case LogType.SeriousError: initialcolor = 'c'; break; case LogType.ConsoleInput: case LogType.ConsoleOutput: initialcolor = 'f'; break; default: initialcolor = '7'; break; } foreach (string msgToAppend in Color.LogColors(e.Message, initialcolor)) { logBox.AppendText(msgToAppend.Remove(0, 2)); logBox.Select(oldLength, msgToAppend.Length - 2); switch (msgToAppend.ToLower()[1]) { case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'a': case 'b': case 'c': case 'd': case 'e': case 's': case 'y': case 'p': case 'r': case 'h': case 'w': case 'm': case 'i': logBox.SelectionColor = System.Drawing.Color.FromName( Color.GetName( msgToAppend.ToLower()[1] ) ); break; case '0': logBox.SelectionColor = System.Drawing.Color.FromArgb(64, 64, 64); break; default: logBox.SelectionColor = System.Drawing.Color.White; break; } oldLength = logBox.Text.Length; } logBox.AppendText(Environment.NewLine); // cut off the log, if too long if( logBox.Lines.Length > MaxLinesInLog ) { logBox.SelectionStart = 0; logBox.SelectionLength = logBox.GetFirstCharIndexFromLine( LinesToTrimWhenExceeded ); userSelectionStart -= logBox.SelectionLength; if( userSelectionStart < 0 ) userSelecting = false; string textToAdd = "&3----- cut off, see " + Logger.CurrentLogFileName + " for complete log -----" + Environment.NewLine; logBox.SelectedText = textToAdd; userSelectionStart += textToAdd.Length; logBox.SelectionColor = System.Drawing.Color.DarkGray; } // either restore user's selection, or scroll to end if( userSelecting ) { logBox.Select( userSelectionStart, userSelectionLength ); } else { logBox.SelectionStart = logBox.Text.Length; logBox.ScrollToCaret(); } } } catch( ObjectDisposedException ) { } catch( InvalidOperationException ) { } }