Esempio n. 1
0
        public void Load()
        {
            if (!File.Exists(StorageFile))
            {
                return;
            }

            try
            {
                var clipboardItemsList = Storage.ReadFromBinaryFile <List <ClipboardItem> >(StorageFile);
                CollectionExtensions.AddRange(_clipboardItems, clipboardItemsList);
                OnCountChanged(_clipboardItems.Count);
            }
            catch (Exception err)
            {
                Trace.WriteLine(err);
            }
        }
Esempio n. 2
0
        public void Filter(string txt)
        {
            if (_filtered.Count == 0)
            {
                CollectionExtensions.AddRange(_filtered, _clipboardItems);
            }

            if (string.IsNullOrWhiteSpace(txt) && _filtered.Count > 0)
            {
                _clipboardItems.Clear();
                CollectionExtensions.AddRange(_clipboardItems, _filtered);
                _filtered.Clear();
                return;
            }

            List <ClipboardItem> items = (from clipboardItem in _clipboardItems
                                          let isTextMatched = clipboardItem.Data.Text != null && !clipboardItem.Data.Text.Contains(txt, StringComparison.InvariantCultureIgnoreCase)
                                                              let isImage = clipboardItem.Data.ClipboardType == ClipboardType.Image
                                                                            where isTextMatched || isImage
                                                                            select clipboardItem).ToList();

            _clipboardItems.RemoveRange(items);
            OnCountChanged(_clipboardItems.Count);
        }