public void ExperiencePaint(bool Numbers = false) { return; ExperienceItems = new Dictionary <FKConfig.GeneralSettings.ExperienceBar.Items.TargetType, TextBlock>(); List <FKStyles.ItemStyle> IStyle = new List <FKStyles.ItemStyle>(); try { foreach (FKConfig.GeneralSettings.ExperienceBar.Items Item in Config.Get <FKConfig>().General.Experience.Item) { if (Config.Get <FKStyles>().Styles.Style.SingleOrDefault(x => x.Name == Item.StyleName) == null) { continue; } //FKStyles.ItemStyle Style = Config.GetNested<FKStyles, FKStyles.ItemStyle>(x => x.Styles.Style.Single(a => a.Name == Item.StyleName)); FKStyles.ItemStyle Style = null; double Position = Style.Background.Position; int count = IStyle.Count(x => x == Style); IStyle.Add(Style); if (count > 0) // Using more styles { Position = Position + (Style.Background.Width * count); } List <GradientStop> Stops = new List <GradientStop>(); foreach (var x in Style.Background.Background) { Stops.Add(new GradientStop { Color = Extensions.HexToColor("#" + x.Background).Color, Offset = x.Angle }); } //(IEnumerable<GradientStop>)Stops //string PValue = Helpers.ExperienceHelper.Call(Item.Target, true); Canvas Container = new Canvas { Width = Style.Background.Width, Height = 27, HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center, Background = new LinearGradientBrush() { StartPoint = new Point(0.5, 0), EndPoint = new Point(0.5, 1), Opacity = Style.Background.Opacity, GradientStops = new GradientStopCollection((IEnumerable <GradientStop>)Stops) } }; Border Border = new Border { Width = Style.Background.Width, Height = 27, BorderBrush = Extensions.HexToBrush("#" + Style.Background.BorderColor), BorderThickness = new Thickness(Style.Background.BorderSize) }; TextBlock Value = new TextBlock { TextAlignment = TextAlignment.Center, Text = "0", Opacity = 1, FontFamily = Extensions.GetFont("Gautami"), Foreground = Extensions.HexToBrush("#" + Style.Value.FontColor), FontSize = Style.Value.FontSize, HorizontalAlignment = (HorizontalAlignment)Style.Value.HorisontalPosition, VerticalAlignment = (VerticalAlignment)Style.Value.HorisontalPosition, Margin = Style.Value.Margin, }; if ((Item.Text != null) && Item.Text.Length > 0) { StackPanel P = new StackPanel { Width = Style.Background.Width, Orientation = Orientation.Horizontal, Height = 27 }; TextBlock Header = new TextBlock { TextAlignment = TextAlignment.Center, Text = Item.Text, FontFamily = Extensions.GetFont("Gautami"), Foreground = Extensions.HexToBrush("#" + Style.Text.FontColor), FontSize = Style.Text.FontSize, HorizontalAlignment = (HorizontalAlignment)Style.Text.HorisontalPosition, VerticalAlignment = (VerticalAlignment)Style.Text.HorisontalPosition, Margin = Style.Text.Margin, }; P.Children.Add(Header); P.Children.Add(Value); Container.Children.Add(P); } else { Grid b = new Grid { Width = Style.Background.Width, Height = 27, }; b.Children.Add(Value); Container.Children.Add(b); } var xa = new FindersKeepers.Helpers.OutlinedTextBlock { Width = Style.Background.Width, Height = 27, Text = "", HorizontalAlignment = System.Windows.HorizontalAlignment.Center, VerticalAlignment = System.Windows.VerticalAlignment.Center, StrokeThickness = 0, Fill = Brushes.White, FontFamily = Extensions.GetFont("Helvetica Rounded LT Black"), FontSize = 25, FontWeight = Style.Value.ValueThickness, TextAlignment = TextAlignment.Center }; Canvas.SetLeft(Container, Position); Container.Children.Add(Border); ExperienceItems.Add(Item.Target, Value); //ExperienceAttribs.Children.Add(Container); } } catch (Exception e) { MessageBox.Show(e.ToString()); } }
public object CreateControl() { FKStyles.ItemStyle Style = Config.Get <FKStyles>().Styles.Style.Single(a => a.Name == Item.StyleName); double Position = Style.Background.Position; List <GradientStop> Stops = new List <GradientStop>(); foreach (var x in Style.Background.Background) { Stops.Add(new GradientStop { Color = Extensions.HexToColor("#" + x.Background).Color, Offset = x.Angle }); } //string PValue = Helpers.ExperienceHelper.Call(Item.Target, true); Canvas Container = new Canvas { Width = Style.Background.Width, Height = 27, HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center, Margin = new Thickness(Style.Background.Position, 0, 0, 0), Background = new LinearGradientBrush() { StartPoint = new Point(0.5, 0), EndPoint = new Point(0.5, 1), Opacity = Style.Background.Opacity, GradientStops = new GradientStopCollection((IEnumerable <GradientStop>)Stops) } }; Border Border = new Border { Width = Style.Background.Width, Height = 27, BorderBrush = Extensions.HexToBrush("#" + Style.Background.BorderColor), BorderThickness = new Thickness(Style.Background.BorderSize) }; StackPanel Cont = new StackPanel { Orientation = Orientation.Horizontal, HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center }; /*Value = new TextBlock * { * TextAlignment = TextAlignment.Center, * Text = "0", * Opacity = 1, * FontFamily = new FontFamily(Style.Value.Font), * Foreground = Extensions.HexToBrush("#" + Style.Value.FontColor), * FontSize = Style.Value.FontSize, * HorizontalAlignment = (HorizontalAlignment)Style.Value.HorisontalPosition, * VerticalAlignment = (VerticalAlignment)Style.Value.HorisontalPosition, * };*/ TextBlock ValueExtension = new TextBlock { TextAlignment = TextAlignment.Center, Text = Item.Extension == "#" ? "" : Item.Extension, Opacity = 1, FontFamily = new FontFamily(Style.Value.Font), Foreground = Extensions.HexToBrush("#eaeaea"), FontSize = Style.Value.FontSize, HorizontalAlignment = (HorizontalAlignment)Style.Value.HorisontalPosition, VerticalAlignment = (VerticalAlignment)Style.Value.HorisontalPosition, Margin = Style.Value.Margin, }; //Cont.Children.Add(Value); Cont.Children.Add(ValueExtension); Container.Children.Add(Border); Border.Child = Cont; Container.Loaded += (s, e) => { var f = Container.PointFromScreen(new Point(0, 0)); MessageBox.Show(f.ToString()); // RegisterToolTip(Container, Style.Background.Width, Item.ToolTip); }; return(Container); }