/// <summary>Manages the number of different colors that the Windows console is able to display in a given session.</summary> public ConsoleColorManager() { colorStore = new ColorStore(); colorMapper = new ColorMapper(); colorChangeCount = INITIAL_COLOR_CHANGE_COUNT_VALUE; maxColorChanges = MAX_COLOR_CHANGES; }
public ColorManager GetManager (ConcurrentDictionary <Color, ConsoleColor> colorMap, ConcurrentDictionary <ConsoleColor, Color> consoleColorMap, int maxColorChanges, int initialColorChangeCountValue) { ColorStore colorStore = GetColorStore(colorMap, consoleColorMap); ColorMapper colorMapper = GetColorMapper(); return(new ColorManager(colorStore, colorMapper, maxColorChanges, initialColorChangeCountValue)); }
/// <summary>Manages the number of different colors that the Windows console is able to display in a given session.</summary> /// <param name="colorStore">The ColorStore instance in which the ColorManager will store colors.</param> /// <param name="colorMapper">The ColorMapper instance the ColorManager will use to relate different color types to one another.</param> /// <param name="maxColorChanges"> /// The maximum number of color changes allowed by the ColorManager. It's necessary to keep track of this, because the Windows console can only display /// 16 different colors in a given session. /// </param> /// <param name="initialColorChangeCountValue">The number of color changes which have already occurred.</param> public ColorManager(ColorStore colorStore, ColorMapper colorMapper, int maxColorChanges, int initialColorChangeCountValue) { this.colorStore = colorStore; this.colorMapper = colorMapper; colorChangeCount = initialColorChangeCountValue; this.maxColorChanges = maxColorChanges; }