Beispiel #1
0
 private void init(string content, ConsoleMsgType consoleMsgType, DateTime entryTime)
 {
     this.Content        = content;
     this.ConsoleMsgType = consoleMsgType;
     this.EntryTime      = entryTime;
     getForeground();
 }
Beispiel #2
0
 public ConsoleData(string content, ConsoleMsgType consoleMsgType, DateTime entryTime)
 {
     init
     (
         content: content,
         consoleMsgType: consoleMsgType,
         entryTime: entryTime
     );
 }
        /// <summary>
        /// Rewrites the content of a line with a new one.
        /// </summary>
        /// <param name="type">the type of the new message</param>
        /// <param name="text">the message</param>
        /// <param name="replacers">text replacers</param>
        public static void ReWriteLine(ConsoleMsgType type, string text, params object[] replacers)
        {
            int currentLineCursor = Console.CursorTop;

            Console.SetCursorPosition(0, Console.CursorTop);
            for (int i = 0; i < Console.WindowWidth; i++)
            {
                Console.Write(" ");
            }
            Console.SetCursorPosition(0, currentLineCursor);
            Write(type, text);
        }
        public void Write(string text, ConsoleMsgType msgType = ConsoleMsgType.Normal)
        {
            if (!Dispatcher.CheckAccess())
            {
                Dispatcher.Invoke(new Action <string, ConsoleMsgType>(Write), text, msgType);
            }
            else
            {
                if (!MainWindow.IsDisposed(this))
                {
                    string timetext = string.Format(" [{0}] ", DateTime.Now.ToShortTimeString());

                    Run time = new Run(timetext)
                    {
                        Foreground = Brushes.DarkTurquoise
                    };
                    Run message;

                    if (msgType == ConsoleMsgType.Error)
                    {
                        message = new Run(text)
                        {
                            Foreground = Brushes.Red, FontWeight = FontWeights.Bold
                        }
                    }
                    ;
                    else if (msgType == ConsoleMsgType.Warning)
                    {
                        message = new Run(text)
                        {
                            Foreground = Brushes.Orange
                        }
                    }
                    ;
                    else
                    {
                        message = new Run(text)
                        {
                            Foreground = Brushes.White
                        }
                    };

                    Paragraph p = new Paragraph();
                    p.Inlines.Add(time);
                    p.Inlines.Add(message);
                    p.Margin   = new Thickness(0);
                    p.FontSize = 13;
                    rtbConsole.Document.Blocks.Add(p);
                    rtbConsole.ScrollToEnd();
                }
            }
        }
        /// <summary>
        /// Writes a message to the console, using prefixes.
        /// </summary>
        /// <param name="type">the type of output</param>
        /// <param name="text">the message</param>
        /// <param name="replacers">text replacers</param>
        public static void Write(ConsoleMsgType type, string text, params object[] replacers)
        {
            // If this type of message must be silenced
            if (noDisplay.HasFlag(type))
            {
                return;
            }

            lock (WriteLock)
            {
                switch (type)
                {
                case ConsoleMsgType.Status:
                    Console.ForegroundColor = ConsoleColor.Green;
                    Console.Write("[Status] ");
                    Console.ResetColor();
                    break;

                case ConsoleMsgType.SQL:
                    Console.ForegroundColor = ConsoleColor.Magenta;
                    Console.Write("[SQL] ");
                    Console.ResetColor();
                    break;

                case ConsoleMsgType.Info:
                    Console.ForegroundColor = ConsoleColor.White;
                    Console.Write("[Info] ");
                    Console.ResetColor();
                    break;

                case ConsoleMsgType.Notice:
                    Console.ForegroundColor = ConsoleColor.White;
                    Console.Write("[Notice] ");
                    Console.ResetColor();
                    break;

                case ConsoleMsgType.Warning:
                    Console.ForegroundColor = ConsoleColor.Yellow;
                    Console.Write("[Warning] ");
                    Console.ResetColor();
                    break;

                case ConsoleMsgType.Debug:
                    Console.ForegroundColor = ConsoleColor.Cyan;
                    Console.Write("[Debug] ");
                    Console.ResetColor();
                    break;

                case ConsoleMsgType.Error:
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.Write("[Error] ");
                    Console.ResetColor();
                    break;

                case ConsoleMsgType.FatalError:
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.Write("[Fatal Error] ");
                    Console.ResetColor();
                    break;

                case ConsoleMsgType.PacketDebug:
                    // When doing a packet debug, it must not have replacers
                    // because packet data might have '{' which will crash
                    // the server
                    Console.Write(text);
                    return;

                default:
                    Console.WriteLine("In ConsoleUtils -> Write(): Invalid type flag passed\n");
                    break;
                }
                Console.Write(text, replacers);
            }
        }
 /// <summary>
 /// Sets the omitting settings.
 /// </summary>
 /// <param name="settings">settings</param>
 public static void SetDisplaySettings(ConsoleMsgType settings)
 {
     noDisplay = settings;
 }