Example #1
0
        public object Convert(object value, Type targetType,
                              object parameter, CultureInfo culture)
        {
            if (parameter != null)
            {
                string key = parameter.ToString();

                BindingList <PaletteViewModel> palettes = value as BindingList <PaletteViewModel>;

                if (palettes != null)
                {
                    PaletteViewModel palette = palettes.FirstOrDefault(s => s.name == key);

                    if (palette != null)
                    {
                        string paFontWeightName = palette.value.ToString();
                        paFontWeightName = paFontWeightName.Replace(fontWeightReservedPrefix, "");
                        paFontWeightName = paFontWeightName.Replace("'", "");

                        return(paFontWeightName);
                    }
                }
            }
            return("Normal");
        }
Example #2
0
        public object Convert(object value, Type targetType,
                              object parameter, CultureInfo culture)
        {
            try
            {
                if (parameter != null)
                {
                    string[]      substrings = parameter.ToString().Split(new char[] { '.' });
                    string        style      = substrings[0];
                    string        property   = substrings[1];
                    MainViewModel model      = ServiceLocator.Current.GetInstance <MainViewModel>();
                    var           palettes   = model.Palettes;

                    if (palettes != null)
                    {
                        string key = model.Styles.SingleOrDefault(s => s.name == style).propertyValuesMap.SingleOrDefault(s => s.property == property).value.Replace("Palette.", "").Replace("%", "");

                        PaletteViewModel palette = palettes.FirstOrDefault(s => s.name == key);

                        if (palette != null)
                        {
                            return(int.Parse(palette.value));
                        }
                    }
                }
                return(0);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
                return(0);
            }
        }
Example #3
0
        private void AddButtonClick(object sender, RoutedEventArgs e)
        {
            ColorModel colorModel = new ColorModel(id, color.R, color.G, color.B)
            {
            };

            PaletteViewModel.palette.Add(colorModel);
            PaletteViewModel.SaveColors();
            id += 1;
        }
Example #4
0
        public object Convert(object value, Type targetType,
                              object parameter, CultureInfo culture)
        {
            try
            {
                if (parameter != null)
                {
                    string[] substrings = parameter.ToString().Split(new char[] { '.' });
                    string   style      = substrings[0];
                    string   property   = substrings[1];

                    MainViewModel model = ServiceLocator.Current.GetInstance <MainViewModel>();

                    if (model.Palettes != null)
                    {
                        string           key     = model.Styles.SingleOrDefault(s => s.name == style).propertyValuesMap.SingleOrDefault(s => s.property == property).value.Replace("Palette.", "").Replace("%", "");
                        PaletteViewModel palette = model.Palettes.FirstOrDefault(s => s.name == key);

                        if (palette != null)
                        {
                            string colorString = palette.value;

                            if (colorString.Contains("ColorFade"))
                            {
                                return(Colors.Black);
                            }

                            if (!colorString.Contains("RGBA("))
                            {
                                return(Colors.Black);
                            }

                            int      start  = colorString.IndexOf("(");
                            int      end    = colorString.IndexOf(")");
                            var      rgba   = colorString.Substring(start + 1, end - start - 1);
                            string[] colors = rgba.Split(new char[] { ',' });
                            var      alpha  = (byte)(float.Parse(colors[3]) * 255);

                            Color x = Color.FromArgb(alpha, byte.Parse(colors[0]), byte.Parse(colors[1]), byte.Parse(colors[2]));

                            return(new SolidColorBrush(x));
                        }
                    }
                }
                return(new SolidColorBrush(Colors.Black));
            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
                return(new SolidColorBrush(Colors.Black));
            }
        }
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            string        paletteName = value as string;
            MainViewModel model       = ServiceLocator.Current.GetInstance <MainViewModel>();

            if (model.Palettes != null)
            {
                PaletteViewModel palette = model.Palettes.FirstOrDefault(s => s.name == paletteName);

                if (palette != null)
                {
                    switch (parameter as string)
                    {
                    case "color":
                        ColorConverter colorConverter = new ColorConverter();
                        return(colorConverter.Convert(palette.value, targetType, parameter, culture));

                    case "number":
                        StringToIntConverter IntConverter = new StringToIntConverter();
                        return(IntConverter.Convert(palette.value, targetType, parameter, culture));

                    case "fontWeight":
                        FontWeightFormatConverter fontWeightConverter = new FontWeightFormatConverter();
                        return(fontWeightConverter.Convert(palette.value, targetType, parameter, culture));

                    case "font":
                        FontFormatConverter FontConverter = new FontFormatConverter();
                        return(FontConverter.Convert(palette.value, targetType, parameter, culture));

                    case "borderStyle":
                        BorderStyleFormatConverter borderStyleFormatConverter = new BorderStyleFormatConverter();
                        return(borderStyleFormatConverter.Convert(palette.value, targetType, parameter, culture));

                    case "align":
                        AlignStyleFormatConverter alignStyleFormatConverter = new AlignStyleFormatConverter();
                        return(alignStyleFormatConverter.Convert(palette.value, targetType, parameter, culture));

                    case "verticalAlign":
                        VerticalAlignStyleFormatConverter verticalAlignStyleFormatConverter = new VerticalAlignStyleFormatConverter();
                        return(verticalAlignStyleFormatConverter.Convert(palette.value, targetType, parameter, culture));

                    default:
                        return(palette.value);
                    }
                }
            }

            return(value);
        }
        public object Convert(object value, Type targetType,
                              object parameter, CultureInfo culture)
        {
            MainViewModel model = ServiceLocator.Current.GetInstance <MainViewModel>();

            if (parameter != null)
            {
                string[] substrings = parameter.ToString().Split(new char[] { '.' });
                if (substrings.Length > 1)
                {
                    string style    = substrings[0];
                    string property = substrings[1];

                    var palettes = model.Palettes;

                    if (palettes != null)
                    {
                        var currentStyle = model.Styles.SingleOrDefault(s => s.name == style);

                        if (currentStyle != null && currentStyle.propertyValuesMap != null && currentStyle.propertyValuesMap.SingleOrDefault(s => s.property == property) != null)
                        {
                            string key = currentStyle.propertyValuesMap.SingleOrDefault(s => s.property == property).value.Replace("Palette.", "").Replace("%", "");

                            PaletteViewModel palette = palettes.FirstOrDefault(s => s.name == key);
                            if (palette == null)
                            {
                                return(model.Fonts.First());
                            }
                            string paFontName = palette.value.ToString();
                            paFontName = paFontName.Replace(FontReservedPrefix, "");
                            paFontName = paFontName.Replace("'", "");
                            var font = model.Fonts.SingleOrDefault(f => f.Source == paFontName);
                            if (font != null)
                            {
                                return(model.Fonts.SingleOrDefault(f => f.Source == paFontName));
                            }
                            else
                            {
                                return(model.Fonts.First());
                            }
                        }
                    }
                }
            }
            return(model.Fonts.First());
        }
        SelectTemplate(object item, DependencyObject container)
        {
            FrameworkElement element = container as FrameworkElement;

            if (element != null && item != null && item is PaletteViewModel)
            {
                PaletteViewModel palette = item as PaletteViewModel;

                if (palette.type.Equals("c"))
                {
                    return(element.FindResource("PropertyColorDataTemplate") as DataTemplate);
                }
                else if (palette.type.Equals("n"))
                {
                    return(element.FindResource("PropertyNumberDataTemplate") as DataTemplate);
                }
                else if (palette.type.Equals("e") && palette.value.Contains("%Font.RESERVED%"))
                {
                    return(element.FindResource("PropertyFontDataTemplate") as DataTemplate);
                }
                else if (palette.type.Equals("e") && palette.value.Contains("%FontWeight.RESERVED%"))
                {
                    return(element.FindResource("PropertyFontWeightDataTemplate") as DataTemplate);
                }
                else if (palette.type.Equals("e") && palette.value.Contains("%BorderStyle.RESERVED%"))
                {
                    return(element.FindResource("PropertyBorderStyleDataTemplate") as DataTemplate);
                }
                else if (palette.type.Equals("b"))
                {
                    return(element.FindResource("PropertyBooleanStyleDataTemplate") as DataTemplate);
                }
                else if (palette.type.Equals("e") && palette.value.Contains("%Align.RESERVED%"))
                {
                    return(element.FindResource("PropertyAlignDataTemplate") as DataTemplate);
                }
                else if (palette.type.Equals("e") && palette.value.Contains("%VerticalAlign.RESERVED%"))
                {
                    return(element.FindResource("PropertyVerticalAlignDataTemplate") as DataTemplate);
                }
            }

            return(element.FindResource("DefaultPaletteDataTemplate") as DataTemplate);
        }
Example #8
0
 public Palette()
 {
     InitializeComponent();
     DataContext = new PaletteViewModel();
 }
Example #9
0
 public PaletteView()
 {
     InitializeComponent();
     DataContext = PaletteViewModel.CreatePalette();
 }
 private void ShellViewModel_UpdatePalette(object sender, UpdatePaletteEventArgs e)
 {
     PaletteViewModel.UpdateValues(e.Values);
 }