public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { return(ColorHelper.HexToColor((string)value)); }
/// <summary> /// Initializes the palettes. /// </summary> private static void InitPalette() { ThemeColors = new ObservableCollection <Color> { Colors.White, Colors.Black, ColorHelper.UIntToColor(0xFFeeece1), ColorHelper.UIntToColor(0xFF1f497d), ColorHelper.UIntToColor(0xFF4f81bd), ColorHelper.UIntToColor(0xFFc0504d), ColorHelper.UIntToColor(0xFF9bbb59), ColorHelper.UIntToColor(0xFF8064a2), ColorHelper.UIntToColor(0xFF4bacc6), ColorHelper.UIntToColor(0xFFf79646), ColorHelper.UIntToColor(0xFFf2f2f2), ColorHelper.UIntToColor(0xFF7f7f7f), ColorHelper.UIntToColor(0xFFddd9c3), ColorHelper.UIntToColor(0xFFc6d9f0), ColorHelper.UIntToColor(0xFFdbe5f1), ColorHelper.UIntToColor(0xFFf2dcdb), ColorHelper.UIntToColor(0xFFebf1dd), ColorHelper.UIntToColor(0xFFe5e0ec), ColorHelper.UIntToColor(0xFFdbeef3), ColorHelper.UIntToColor(0xFFfdeada), ColorHelper.UIntToColor(0xFFd8d8d8), ColorHelper.UIntToColor(0xFF595959), ColorHelper.UIntToColor(0xFFc4bd97), ColorHelper.UIntToColor(0xFF8db3e2), ColorHelper.UIntToColor(0xFFb8cce4), ColorHelper.UIntToColor(0xFFe5b9b7), ColorHelper.UIntToColor(0xFFd7e3bc), ColorHelper.UIntToColor(0xFFccc1d9), ColorHelper.UIntToColor(0xFFb7dde8), ColorHelper.UIntToColor(0xFFfbd5b5), ColorHelper.UIntToColor(0xFFbfbfbf), ColorHelper.UIntToColor(0xFF3f3f3f), ColorHelper.UIntToColor(0xFF938953), ColorHelper.UIntToColor(0xFF548dd4), ColorHelper.UIntToColor(0xFF95b3d7), ColorHelper.UIntToColor(0xFFd99694), ColorHelper.UIntToColor(0xFFc3d69b), ColorHelper.UIntToColor(0xFFb2a2c7), ColorHelper.UIntToColor(0xFF92cddc), ColorHelper.UIntToColor(0xFFfac08f), ColorHelper.UIntToColor(0xFFa5a5a5), ColorHelper.UIntToColor(0xFF262626), ColorHelper.UIntToColor(0xFF494429), ColorHelper.UIntToColor(0xFF17365d), ColorHelper.UIntToColor(0xFF366092), ColorHelper.UIntToColor(0xFF953734), ColorHelper.UIntToColor(0xFF76923c), ColorHelper.UIntToColor(0xFF5f497a), ColorHelper.UIntToColor(0xFF31859b), ColorHelper.UIntToColor(0xFFe36c09), ColorHelper.UIntToColor(0xFF6f7f7f), ColorHelper.UIntToColor(0xFF0c0c0c), ColorHelper.UIntToColor(0xFF1d1b10), ColorHelper.UIntToColor(0xFF0f243e), ColorHelper.UIntToColor(0xFF244061), ColorHelper.UIntToColor(0xFF632423), ColorHelper.UIntToColor(0xFF4f6128), ColorHelper.UIntToColor(0xFF3f3151), ColorHelper.UIntToColor(0xFF205867), ColorHelper.UIntToColor(0xFF974806) }; StandardColors = new ObservableCollection <Color> { Colors.Firebrick, Colors.Red, Colors.Tomato, Colors.OrangeRed, Colors.Orange, Colors.Gold, Colors.Yellow, Colors.YellowGreen, Colors.SeaGreen, Colors.DeepSkyBlue, Colors.CornflowerBlue, Colors.LightBlue, Colors.DarkCyan, Colors.MidnightBlue, Colors.DarkOrchid, Colors.Transparent, Color.FromArgb(128, 0, 0, 0), Color.FromArgb(128, 255, 255, 255), ColorHelper.UndefinedColor, ColorHelper.Automatic }; RecentColors = new ObservableCollection <Color>(); }
/// <summary> /// The update selected color. /// </summary> private void UpdateSelectedColor() { this.SelectedColor = ColorHelper.HsvToColor(this.Hue / 360.0, this.Saturation / 100.0, this.Value / 100.0); // ColorUtils.FireSelectedColorChangedEvent(this, SelectedColorChangedEvent, oldColor, newColor); }
/// <summary> /// Called when a color component is changed. /// </summary> /// <param name="e">The <see cref="System.Windows.DependencyPropertyChangedEventArgs" /> instance containing the event data.</param> protected virtual void OnComponentChanged(DependencyPropertyChangedEventArgs e) { if (this.withinColorChange) { return; } if (this.SelectedColor == null) { return; } var color = this.SelectedColor.Value; this.withinComponentChange = true; this.withinColorChange = true; var i = Convert.ToInt32(e.NewValue); byte x = i <= 255 ? (byte)i : (byte)255; if (e.Property == AlphaProperty) { this.SelectedColor = Color.FromArgb(x, color.R, color.G, color.B); } if (e.Property == RedProperty) { this.SelectedColor = Color.FromArgb(color.A, x, color.G, color.B); this.UpdateHSV(color); } if (e.Property == GreenProperty) { this.SelectedColor = Color.FromArgb(color.A, color.R, x, color.B); this.UpdateHSV(color); } if (e.Property == BlueProperty) { this.SelectedColor = Color.FromArgb(color.A, color.R, color.G, x); this.UpdateHSV(color); } var hsv = color.ColorToHsv(); double y = Convert.ToDouble(e.NewValue); if (e.Property == HueProperty) { this.SelectedColor = ColorHelper.HsvToColor(y / 360, hsv[1], hsv[2], color.A / 255.0); this.UpdateRGB(this.SelectedColor.Value); } if (e.Property == SaturationProperty) { this.SelectedColor = ColorHelper.HsvToColor(hsv[0], y / 100, hsv[2], color.A / 255.0); this.UpdateRGB(this.SelectedColor.Value); } if (e.Property == BrightnessProperty) { this.SelectedColor = ColorHelper.HsvToColor(hsv[0], hsv[1], y / 100, color.A / 255.0); this.UpdateRGB(this.SelectedColor.Value); } this.withinColorChange = false; this.withinComponentChange = false; }