コード例 #1
0
        private static void ApplicationManager_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
        {
            if (e.Action == NotifyCollectionChangedAction.Reset)
            {
                ApplicationItems.Clear();
                IgnoredApplicationItems.Clear();
                return;
            }

            if (e.NewItems != null)
            {
                foreach (var item in e.NewItems)
                {
                    AddApplication((IApplication)item);
                }
            }

            if (e.OldItems != null)
            {
                foreach (var item in e.OldItems)
                {
                    RemoveApplication((IApplication)item);
                }
            }
        }
コード例 #2
0
        private static void ReloadApplicationItems()
        {
            if (ApplicationItems == null)
            {
                ApplicationItems = new ObservableCollection <IApplication>();
            }
            if (IgnoredApplicationItems == null)
            {
                IgnoredApplicationItems = new ObservableCollection <IgnoredApp>();
            }

            ApplicationItems.Clear();
            IgnoredApplicationItems.Clear();

            ApplicationItems.Add(ApplicationManager.Instance.GetGlobalApplication());
            foreach (IApplication app in ApplicationManager.Instance.Applications)
            {
                if (app is UserApp)
                {
                    ApplicationItems.Add(app);
                }
                else if (app is IgnoredApp)
                {
                    IgnoredApplicationItems.Add((IgnoredApp)app);
                }
            }
        }
コード例 #3
0
        private static void UpdateApplicationItems()
        {
            if (ApplicationItems == null)
            {
                ApplicationItems = new ObservableCollection <IApplication>();
            }
            else
            {
                ApplicationItems.Clear();
            }

            var newApps = new List <IApplication>();

            newApps.Add(ApplicationManager.Instance.GetGlobalApplication());
            newApps.AddRange(ApplicationManager.Instance.Applications.Where(app => (app is UserApp)).OrderBy(app => app.Name));

            foreach (var app in newApps)
            {
                ApplicationItems.Add(app);
            }
        }