Search() public method

public Search ( IProgressIndicator progressIndicator ) : ICollection
progressIndicator IProgressIndicator
return ICollection
Example #1
0
        protected override void Execute(IDataContext dataContext, IEnumerable <IRegisteredComponentsContextSearch> searches, INavigationExecutionHost host)
        {
            List <RegisteredComponentsSearchRequest> requests = searches.SelectNotNull(item => item.GetRegisteredComponentsRequest(dataContext)).ToList();
            ITextControl textControl = dataContext.GetData(JetBrains.TextControl.DataContext.DataConstants.TEXT_CONTROL);

            if (textControl != null && requests.Any())
            {
                RegisteredComponentsSearchRequest requestToExecute = requests.First();
                ICollection <IOccurence>          occurences       = requestToExecute.Search();
                if (occurences.IsEmpty())
                {
                    Shell.Instance.Components.Tooltips().ShowAtCaret(EternalLifetime.Instance, NoRegisteredTypesFound, textControl, locks, Shell.Instance.GetComponent <IActionManager>());
                }
                else
                {
                    Func <SearchRegisteredComponentsDescriptor> descriptorBuilder = () => new SearchRegisteredComponentsDescriptor(requestToExecute, occurences);
                    host.ShowResultsPopupMenu(dataContext, occurences, descriptorBuilder, null, true, requestToExecute.Title);
                }
            }
        }