public LauncherMenuViewModel(MenuItemViewModel vm, Util.Math.Point screenSize)
        {
            _babumiConfigRepository = ServiceLocator.Instance.GetInstance <BabumiConfigRepository>();
            MenuVM          = vm;
            IsOpen          = true;
            ScreenSize      = screenSize;
            this.ItemSource = new List <RadialMenu.Controls.RadialMenuItem>();

            Func <LauncherSettingsDataSet, Tuple <WrapPanel, ICommand> > createItem = new Func <LauncherSettingsDataSet, Tuple <WrapPanel, ICommand> >((LauncherSettingsDataSet item ) =>
            {
                var wrapPanel = new WrapPanel();
                System.Windows.Controls.Image soruce = new System.Windows.Controls.Image();
                soruce.Source         = Imaging.CreateBitmapSourceFromHIcon(Icon.ExtractAssociatedIcon(item.Path).Handle, Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions());
                wrapPanel.Orientation = Orientation.Vertical;
                wrapPanel.Children.Add(soruce);
                wrapPanel.Children.Add(new TextBlock {
                    Text = item.DisplayName
                });
                return(new Tuple <WrapPanel, ICommand>(wrapPanel, new ViewModelCommand(() => { Process.Start(item.Path); })));
            });

            foreach (var launcherItem in _babumiConfigRepository.GetConfig().Dataset)
            {
                var item = createItem(launcherItem);
                this.ItemSource.Add(new RadialMenu.Controls.RadialMenuItem
                {
                    Content = item.Item1,
                    Command = item.Item2
                });
            }
        }
        public LauncherSettingViewModel()
        {
            _listCollection         = new ObservableCollection <LauncherItem>();
            _babumiConfigRepository = ServiceLocator.Instance.GetInstance <BabumiConfigRepository>();
            var config = _babumiConfigRepository.GetConfig();

            LaucnherItemAdd(config.Dataset.Select(e => e.Path).ToArray());
        }
 public CharacterViewModel()
 {
     CharacterNotify.Instance.TopMostMessageSubject.Subscribe(TopMostMessageSend);
     CharacterNotify.Instance.WindowSizeMessageSubject.Subscribe(WindowSizeChange);
     _babumiConfigRepository = ServiceLocator.Instance.GetInstance <BabumiConfigRepository>();
 }
 private CharacterNotify()
 {
     _babumiConfigRepository = ServiceLocator.Instance.GetInstance <BabumiConfigRepository>();
 }