Пример #1
0
        public void AddRecentItem(RecentItem item)
        {
            if (recentItems == null)
            {
                throw new InvalidOperationException();
            }

            var existed = recentItems.Where(r => r.Path.Equals(item.Path)).FirstOrDefault();

            if (existed != null)
            {
                lock (_lock)
                    recentItems.Move(recentItems.IndexOf(existed), 0);

                return;
            }

            if (recentItems.Count >= MAX)
            {
                lock (_lock)
                    recentItems.RemoveAt(recentItems.Count - 1);
            }

            lock (_lock)
                recentItems.Insert(0, item);
        }
Пример #2
0
 public void RemoveRecentItem(RecentItem item)
 {
     lock (_lock)
         recentItems.Remove(item);
 }