private void initialize()
        {
            imageService           = _dataService.GetService(SettingsRegistry.ServiceTitleImageSaver);
            ImageServiceConfig     = imageService.Config;
            MusicTickerToImagePath = ImageServiceConfig.GetParameterValue("FilenameMusic") as string;

            _lastFmService = _dataService.Services.FirstOrDefault(service => service.Config.ServiceName == SettingsRegistry.ServiceTitleMusicTicker);
            _lastFmService.GetData((dataObject) =>
            {
                CurrentTrack = dataObject as MusicTrackInfo;
                CurrentTrack.PropertyChanged += (o, e) => {
                    if (e.PropertyName == MusicTrackInfo.ImagePropertyName)
                    {
                        if (imageService.Config.Enabled)
                        {
                            UI.Dispatch(() => {
                                IsNeedSave = true;
                                IsNeedSave = false;
                            });
                        }
                    }
                };
            });
            Config = _lastFmService.Config;

            Config.PropertyChanged += (o, e) =>
            {
                if (e.PropertyName == ServiceConfig.EnabledPropertyName)
                {
                    if (Config.Enabled)
                    {
                        Win.ShowMusicTicker();
                    }
                    else
                    {
                        Win.HideMusicTicker();
                    }
                }
            };

            AppConfig = (Application.Current as App).AppConfig;
        }
Пример #2
0
        private void Initialize()
        {
            if (Chats == null)
            {
                Chats = new ObservableCollection <IChat>();
            }

            imageService       = _generalDataService.GetService(SettingsRegistry.ServiceTitleImageSaver);
            ImageServiceConfig = imageService.Config;
            StatusToImagePath  = ImageServiceConfig.GetParameterValue("FilenameStatus") as string;

            ChatsView                      = CollectionViewSource.GetDefaultView(Chats) as ListCollectionView;
            ChatsView.CustomSort           = new SortViewerCount();
            _dataService.ChatStatusHandler = (chat) =>
            {
                UI.Dispatch(() => {
                    Chats.RemoveAll(item => item.ChatName == chat.ChatName);
                    if (chat.Enabled == true)
                    {
                        Chats.Add(chat);
                        chat.Status.PropertyChanged += (o, e) =>
                        {
                            if (ImageServiceConfig.Enabled)
                            {
                                IsNeedSave = true;
                                IsNeedSave = false;
                            }
                        };
                    }
                    if (ChatsView.NeedsRefresh)
                    {
                        ChatsView.Refresh();
                    }
                });
            };
            AppConfig = Ubiquitous.Default.Config.AppConfig;
        }