예제 #1
0
        public override void GetTemplates(TemplateSelectorFiltersParameters parameters, GetItemsCompleted <TemplateHeader> completed)
        {
            Assert.ArgumentNotNull(parameters, nameof(parameters));
            Assert.ArgumentNotNull(completed, nameof(completed));

            if (Templates == null)
            {
                completed(Enumerable.Empty <TemplateHeader>());
                return;
            }

            var filtered = Templates;

            if (!string.IsNullOrEmpty(FilterText))
            {
                filtered = filtered.Where(r => r.Name.IsFilterMatch(FilterText)).ToList();
            }

            if (!string.IsNullOrEmpty(RootPath))
            {
                filtered = filtered.Where(r => r.Path.StartsWith(RootPath, StringComparison.InvariantCultureIgnoreCase)).ToList();
            }

            completed(filtered);
        }
예제 #2
0
        public override void GetTemplates(TemplateSelectorFiltersParameters parameters, GetItemsCompleted <TemplateHeader> completed)
        {
            Assert.ArgumentNotNull(parameters, nameof(parameters));
            Assert.ArgumentNotNull(completed, nameof(completed));

            if (Templates == null)
            {
                completed(Enumerable.Empty <TemplateHeader>());
                return;
            }

            completed(Templates);
        }
예제 #3
0
        public override void GetTemplates(TemplateSelectorFiltersParameters parameters, GetItemsCompleted <TemplateHeader> completed)
        {
            Assert.ArgumentNotNull(parameters, nameof(parameters));
            Assert.ArgumentNotNull(completed, nameof(completed));

            var templates = Templates;

            if (templates == null)
            {
                completed(Enumerable.Empty <TemplateHeader>());
                return;
            }

            var templateList = templates.ToList();

            var recent = RecentTemplateManager.GetTemplates(parameters.DatabaseUri);

            var result = recent.Where(templateHeader => templateList.Any(t => t.TemplateUri == templateHeader.TemplateUri)).ToList();

            completed(result);
        }
 public abstract void GetTemplates(TemplateSelectorFiltersParameters parameters, GetItemsCompleted <TemplateHeader> completed);