Mega Code Archive

 
Categories / C# / Development Class
 

Console Output Util

// ---------------------------------------------------------------------------------- // Microsoft Developer & Platform Evangelism //  // Copyright (c) Microsoft Corporation. All rights reserved. //  // THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,  // EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES  // OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. // ---------------------------------------------------------------------------------- // The example companies, organizations, products, domain names, // e-mail addresses, logos, people, places, and events depicted // herein are fictitious.  No association with any real company, // organization, product, domain name, email address, logo, person, // places, or events is intended or should be inferred. // ---------------------------------------------------------------------------------- //--------------------------------------------------------------------------------- // Microsoft (R) .NET Services // Software Development Kit //  // Copyright (c) Microsoft Corporation. All rights reserved.   // // THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,  // EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES  // OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.  //--------------------------------------------------------------------------------- namespace Microsoft.AccessControl.Samples.AcmTool {     using System;     using System.Collections.Generic;     using System.Diagnostics;     using System.IO;     using System.Security;     using System.Security.Permissions;     using System.Text;     internal enum PrintFormat     {         Error,         Warning,         Header,         SubHeader,         Message,         Success     }     internal class ConsoleUtil     {         internal static void WriteMessage()         {             WriteMessage(PrintFormat.Message, String.Empty);         }         internal static void WriteMessage(string format, params object[] args)         {             WriteMessage(PrintFormat.Message, format, args);         }         internal static void WriteMessage(PrintFormat printFormat, string format, params object[] args)         {             switch (printFormat)             {                 case PrintFormat.Error:                     Write(ConsoleColor.Red, true, format, args);                     break;                 case PrintFormat.Header:                     Write(ConsoleColor.Cyan, false, format, args);                     break;                 case PrintFormat.Message:                     Write(ConsoleColor.Gray, false, format, args);                     break;                 case PrintFormat.SubHeader:                     Write(ConsoleColor.White, false, format, args);                     break;                 case PrintFormat.Success:                     Write(ConsoleColor.Green, false, format, args);                     break;                 case PrintFormat.Warning:                     Write(ConsoleColor.Yellow, true, format, args);                     break;             }         }         private static void Write(ConsoleColor foregroundColor, bool isError, string format, params object[] args)         {             ConsoleColor beforeColor = Console.ForegroundColor;             Console.ForegroundColor = foregroundColor;             if (!isError)             {                 Console.WriteLine(format, args);             }             else             {                 Console.Error.WriteLine(format, args);             }             Console.ForegroundColor = beforeColor;         }     } }