public void Setup()
 {
     fakeDataAccess = Substitute.For<IDataAccess>();
     fakeView = Substitute.For<ISearchView>();
     target = new SearchPresenter(fakeDataAccess);
     target.SearchView = fakeView;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="SearchViewPresentationModel"/> class.
        /// </summary>
        /// <param name="view">The view associated with this presentation model.</param>
        /// <param name="configurationService">The configuration service instance used to retrieve configuration values.</param>
        /// <param name="assetsDataServiceFacade">The service facade used to search for assets.</param>
        /// <param name="eventAggregator">The event aggregator instance used to publish/subscribe for events.</param>
        public SearchViewPresentationModel(ISearchView view, IConfigurationService configurationService, IAssetsDataServiceFacade assetsDataServiceFacade, IEventAggregator eventAggregator, ISearchServiceBridge searchServiceBridge)
        {
            this.configurationService = configurationService;

            this.assetsDataServiceFacade = assetsDataServiceFacade;
            this.assetsDataServiceFacade.LoadAssetsCompleted += this.OnLoadAssetsCompleted;

            this.searchServiceBridge = searchServiceBridge;
            this.searchServiceBridge.ResultsAvailable += this.OnLoadAssetsCompleted;

            this.eventAggregator = eventAggregator;
            this.eventAggregator.GetEvent <AssetsLoadingEvent>().Subscribe(this.OnAssetsLoading, true);

            this.searchCommand         = new DelegateCommand <string>(this.Search);
            this.KeyboardActionCommand = new DelegateCommand <Tuple <KeyboardAction, object> >(this.ExecuteKeyboardAction);

            this.SearchIntegrationEnabled = this.configurationService.GetParameterValueAsBoolean("SearchIntegrationEnabled").GetValueOrDefault();
            this.CanSearch = true;

            this.View       = view;
            this.View.Model = this;

            if (!this.SearchIntegrationEnabled)
            {
                this.Search(null);
            }
        }
Esempio n. 3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="PlaylistViewModel" /> class.
        /// </summary>
        /// <param name="publicTransport">The public transport.</param>
        /// <param name="playlistService">The playlist service.</param>
        /// <param name="dispatcher">The dispatcher.</param>
        /// <param name="playerService">The audio player service.</param>
        /// <param name="fileInfoBuilder">The fileInfoBuilder.</param>
        /// <param name="configurationManager">The configuration manager.</param>
        /// <param name="globalHotkeyService">The global hotkey service.</param>
        /// <param name="windowManager">The window manager.</param>
        /// <param name="searchView">The search view.</param>
        public PlaylistViewModel(IPublicTransport publicTransport,
                                 IPlaylistService playlistService,
                                 IDispatcher dispatcher,
                                 IPlayerService playerService,
                                 IInfoBuilder <StorableTaggedFile> fileInfoBuilder,
                                 IConfigurationManager configurationManager,
                                 IGlobalHotkeyService globalHotkeyService,
                                 IWindowManager windowManager,
                                 ISearchView searchView)
        {
            this.publicTransport = Guard.IsNull(() => publicTransport);
            Guard.IsNull(() => configurationManager);
            this.dispatcher          = Guard.IsNull(() => dispatcher);
            this.fileInfoBuilder     = Guard.IsNull(() => fileInfoBuilder);
            this.globalHotkeyService = Guard.IsNull(() => globalHotkeyService);
            this.windowManager       = Guard.IsNull(() => windowManager);
            this.searchView          = Guard.IsNull(() => searchView);
            publicTransport.ApplicationEventBus.Subscribe <PlaylistUpdatedEvent>(OnPlaylistUpdated);
            publicTransport.ApplicationEventBus.Subscribe <TrackChangedEvent>(OnTrackChanged);
            searchHotkey = configurationManager.GetValue("Search", new HotkeyDescriptor(ModifierKeys.Control | ModifierKeys.Alt, Key.J),
                                                         KnownConfigSections.GlobalHotkeys);
            searchHotkey.ValueChanged += SearchHotkeyOnValueChanged;
            globalHotkeyService.RegisterHotkey(searchHotkey.Value, OnSearch);
            searchView.PlayFile += SearchViewOnPlayFile;
            Files = new List <FileItem>(playlistService.Files.Select(x => new FileItem(x)));
            var currenTrack = playerService.CurrentTrackAsReadonly;

            if (null == currenTrack)
            {
                return;
            }
            SetPlayingFile(playlistService.Files.Find(x => x.Filename == currenTrack.Name));
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="BoxDetailsPresenter"/> class.
 /// </summary>
 /// <param name="view">The view.</param>
 public BoxDetailsPresenter(ISearchView view)
 {
     if (view == null)
     {
         throw new Exception("view cannot be null");
     }
     _searchView = view;
 }
Esempio n. 5
0
 public SearchPresenter(ISearchView view)
 {
     if (view == null)
     {
         throw new Exception("view cannot be null");
     }
     this.view = view;
 }
        public SearchPresenter(ISearchView view)
        {
            _view = view;

            _view.Form_Load    += InitailLoad;
            _view.Clear_Click  += ClearForm;
            _view.Search_Click += Search;
            _view.Selected_Row += Selected;
        }
 public SearchPresenter(ISearchView searchview)
 {
     _searchview = searchview;
     _searchview.Search_event += new EventHandler<EventArgs>(OnSearch);
     _searchview.Stop_event += new EventHandler<EventArgs>(OnStop);
     _model.Found_event += new EventHandler<List<System.IO.FileInfo>>(Display);
     _model.SearchFinished += new EventHandler<EventArgs>(OnFinished);
     //UpdateView();
 }
Esempio n. 8
0
 public SearchPresenter(
     ISearchView view,
     IApplicationController applicationController,
     ISearchRepository searchRepository)
 {
     _view = view;
     _applicationController = applicationController;
     _searchRepository = searchRepository;
 }
Esempio n. 9
0
 public SearchPresenter(
     ISearchView view,
     IApplicationController applicationController,
     ISearchRepository searchRepository)
 {
     _view = view;
     _applicationController = applicationController;
     _searchRepository      = searchRepository;
 }
 public SearchPresenter(ISearchView searchview)
 {
     _searchview = searchview;
     _searchview.Search_event += new EventHandler <EventArgs>(OnSearch);
     _searchview.Stop_event   += new EventHandler <EventArgs>(OnStop);
     _model.Found_event       += new EventHandler <List <System.IO.FileInfo> >(Display);
     _model.SearchFinished    += new EventHandler <EventArgs>(OnFinished);
     //UpdateView();
 }
		public SearchPresenter(ISearchView view, IErrorLogRepository errorLogRepository, IHttpUserAgentSearchLauncherFactory httpUserAgentSearchLauncherFactory, ISettingsManager settingsManager)
		{
			View = view;

			_repository = errorLogRepository;
			_httpUserAgentSearchLauncherFactory = httpUserAgentSearchLauncherFactory;
			_settingsManager = settingsManager;

			RegisterEvents();
		}
        public static void ExecuteQuery(ISearchView view, SearchQuery query, SearchAnalytics.GenericEventType sourceEvt = SearchAnalytics.GenericEventType.SearchQueryExecute)
        {
            if (view is QuickSearch qs)
            {
                qs.SendEvent(sourceEvt, query.searchQuery);
            }

            view.context.SetFilteredProviders(query.providerIds);
            view.SetSearchText(query.searchQuery);
        }
        public void ThrowNullReferenceException_WhenISearchViewIsNull()
        {
            ISearchView searchView         = null;
            var         advertServiceMock  = new Mock <IAdvertServices>();
            var         pictureServiceMock = new Mock <IPictureServices>();

            Assert.That(
                () => new SearcherPresenter(searchView, advertServiceMock.Object, pictureServiceMock.Object),
                Throws.InstanceOf <NullReferenceException>());
        }
Esempio n. 14
0
        private void OnFilmsViewInformerSearchRequested(object sender, FormLocationInfo info)
        {
            SearchForm form = new SearchForm();

            if (ShowForm(form, info))
            {
                searchView = form;
                searchView.SearchStarted += OnSearchViewSearchStarted;
            }
        }
Esempio n. 15
0
        public static bool ShowAtPosition(ISearchView quickSearchTool, Rect rect)
        {
            var screenPos    = GUIUtility.GUIToScreenPoint(new Vector2(rect.x, rect.y));
            var screenRect   = new Rect(screenPos, rect.size);
            var filterWindow = ScriptableObject.CreateInstance <FilterWindow>();

            filterWindow.searchView = quickSearchTool;
            filterWindow.ShowAsDropDown(screenRect, Styles.windowSize);
            return(true);
        }
 protected override void Context()
 {
     _view                   = A.Fake <ISearchView>();
     _regionResolver         = A.Fake <IRegionResolver>();
     _activeSubjectRetriever = A.Fake <IActiveSubjectRetriever>();
     _searchResultMapper     = A.Fake <ISearchResultToDTOSearchResultMapper>();
     _searchTask             = A.Fake <ISearchTask>();
     _applicationController  = A.Fake <IMoBiApplicationController>();
     _context                = A.Fake <IMoBiContext>();
     sut = new SearchPresenter(_view, _regionResolver, _activeSubjectRetriever, _searchResultMapper, _searchTask, _applicationController, _context);
 }
Esempio n. 17
0
        public static void Disable()
        {
            if (searchContext != null)
            {
                searchContext.sessionStarted -= OnSearchStarted;
                searchContext.sessionEnded   -= OnSearchEnded;
            }

            searchView    = null;
            searchContext = null;
        }
Esempio n. 18
0
        public static void Enable(ISearchView view)
        {
            if (!SearchSettings.debug)
            {
                return;
            }

            searchView    = view;
            searchContext = view.context;

            Refresh();
        }
Esempio n. 19
0
        public static void ShowAtPosition(ISearchView quickSearchTool, SearchContext context, Rect screenRect)
        {
            var window = ScriptableObject.CreateInstance <SearchQueryCreateWindow>();

            window.m_SearchView = quickSearchTool;
            window.m_Context    = context;

            window.m_Description   = context.searchText;
            window.m_QueryFolder   = SearchSettings.queryFolder;
            window.m_QueryFileName = SearchQuery.RemoveInvalidChars(context.searchText);

            window.ShowAsDropDown(screenRect, Styles.windowSize);
        }
Esempio n. 20
0
        public static void Enable(ISearchView view)
        {
            if (!SearchSettings.debug)
            {
                return;
            }

            searchView    = view;
            searchContext = view.context;
            searchContext.sessionStarted += OnSearchStarted;
            searchContext.sessionEnded   += OnSearchEnded;

            Refresh();
        }
Esempio n. 21
0
        /// <summary>
        /// Initializes a new instance of the <see cref="SearchViewPresentationModel"/> class.
        /// </summary>
        /// <param name="view">The view associated with this presentation model.</param>
        /// <param name="configurationService">The configuration service instance used to retrieve configuration values.</param>
        /// <param name="assetsDataServiceFacade">The service facade used to search for assets.</param>
        /// <param name="eventAggregator">The event aggregator instance used to publish/subscribe for events.</param>
        public SearchViewPresentationModel(ISearchView view, IConfigurationService configurationService, IAssetsDataServiceFacade assetsDataServiceFacade, IEventAggregator eventAggregator)
        {
            this.configurationService    = configurationService;
            this.assetsDataServiceFacade = assetsDataServiceFacade;
            this.eventAggregator         = eventAggregator;
            this.assetsDataServiceFacade.LoadAssetsCompleted += this.DataServiceFacade_LoadAssetsCompleted;
            this.View = view;

            this.searchCommand = new DelegateCommand <string>(this.Search);

            this.View.Model = this;

            this.Search(null);
        }
Esempio n. 22
0
        public static void Draw(SearchContext context, ISearchView view, SearchField searchField)
        {
            if (!enabled)
            {
                return;
            }

            var evt = Event.current;

            if (evt.type == EventType.MouseDown && !position.Contains(evt.mousePosition))
            {
                evt.Use();
                Clear();
                return;
            }

            // Check if the cache filtered list should be updated
            if (evt.type == EventType.Repaint && !context.searchText.Equals(s_LastInput, StringComparison.Ordinal))
            {
                UpdateCompleteList(searchField.GetTextEditor());
            }

            if (s_FilteredList == null)
            {
                return;
            }

            var selected = DrawItems(evt, out var proposition);

            if (proposition.valid)
            {
                if (proposition.moveCursor == TextCursorPlacement.MoveLineEnd)
                {
                    view.SetSearchText(proposition.replacement, proposition.moveCursor);
                }
                else if (!options.tokens.All(t => t.StartsWith(proposition.replacement, StringComparison.OrdinalIgnoreCase)))
                {
                    var insertion = ReplaceText(context.searchText, proposition.replacement, options.cursor, out var insertTokenPos);
                    SearchAnalytics.SendEvent(null, SearchAnalytics.GenericEventType.QuickSearchAutoCompleteInsertSuggestion, insertion);
                    view.SetSearchText(insertion, proposition.moveCursor, insertTokenPos);
                }
            }

            if (selected)
            {
                // No more results
                Clear();
            }
        }
Esempio n. 23
0
        public QueryHelperWidget(bool blockMode, ISearchView view = null)
        {
            m_BlockMode = blockMode;
            drawBorder  = true;

            m_Areas = new QueryBuilder("")
            {
                drawBackground = false,
            };
            m_Areas.AddBlock(new QueryAreaBlock(m_Areas, k_All, ""));

            var builtinSearches = SearchTemplateAttribute.GetAllQueries();
            var allProviders    = view != null && view.context != null?view.context.GetProviders() : SearchService.GetActiveProviders();

            var generalProviders  = allProviders.Where(p => !p.isExplicitProvider);
            var explicitProviders = allProviders.Where(p => p.isExplicitProvider);
            var providers         = generalProviders.Concat(explicitProviders);

            if (blockMode)
            {
                m_ActiveSearchProviders = providers.Where(p => p.id != "expression" && (p.fetchPropositions != null || builtinSearches.Any(sq => sq.searchText.StartsWith(p.filterId) || sq.GetProviderIds().Any(pid => p.id == pid)))).ToArray();
            }
            else
            {
                m_ActiveSearchProviders = providers.ToArray();
            }

            foreach (var p in m_ActiveSearchProviders)
            {
                m_Areas.AddBlock(new QueryAreaBlock(m_Areas, p));
            }
            m_Areas.@readonly = true;
            foreach (var b in m_Areas.blocks)
            {
                b.tooltip = $"Double click to search in: {b.value}";
            }

            if (string.IsNullOrEmpty(m_CurrentAreaFilterId))
            {
                m_CurrentAreaFilterId = SearchSettings.helperWidgetCurrentArea;
            }
            m_Searches = new QueryHelperSearchGroup(m_BlockMode, L10n.Tr("Searches"));

            ChangeCurrentAreaFilter(m_CurrentAreaFilterId);

            PopulateSearches(builtinSearches);
            RefreshSearches();
            BindSearchView(view);
        }
Esempio n. 24
0
        public static bool ShowAtPosition(ISearchView quickSearchTool, SearchContext context, Rect rect)
        {
            var screenPos  = GUIUtility.GUIToScreenPoint(new Vector2(rect.x, rect.y));
            var screenRect = new Rect(screenPos, rect.size);

            s_SearchContext = context;
            var filterWindow = ScriptableObject.CreateInstance <FilterWindow>();

            filterWindow.m_SearchView = quickSearchTool;

            var height = Math.Min(Styles.kMaxWindowHeight, Styles.windowSize.y + Styles.kItemHeight * context.filters.Count());
            var size   = new Vector2(Styles.windowSize.x, height);

            filterWindow.ShowAsDropDown(screenRect, size);
            s_SearchContext = null;
            return(true);
        }
Esempio n. 25
0
 /// <summary>
 /// Initializes a new instance of the <see cref="PlaylistViewModel" /> class.
 /// </summary>
 /// <param name="publicTransport">The public transport.</param>
 /// <param name="playlistService">The playlist service.</param>
 /// <param name="dispatcher">The dispatcher.</param>
 /// <param name="playerService">The audio player service.</param>
 /// <param name="builder">The builder.</param>
 /// <param name="configurationManager">The configuration manager.</param>
 /// <param name="globalHotkeyService">The global hotkey service.</param>
 /// <param name="windowManager">The window manager.</param>
 /// <param name="searchView">The search view.</param>
 /// <param name="serializerService">The serializer service.</param>
 /// <param name="logger">The logger.</param>
 public PlaylistViewModel(IPublicTransport publicTransport,
                          IPlaylistService playlistService,
                          IDispatcher dispatcher,
                          IPlayerService playerService,
                          IInfoBuilder <StorableTaggedFile> builder,
                          IConfigurationManager configurationManager,
                          IGlobalHotkeyService globalHotkeyService,
                          IWindowManager windowManager,
                          ISearchView searchView,
                          ISerializerService serializerService,
                          ILogger logger)
     : base(logger)
 {
     publicTransport.Guard("publicTransport");
     playlistService.Guard("playlistService");
     dispatcher.Guard("dispatcher");
     playerService.Guard("playerService");
     builder.Guard("builder");
     configurationManager.Guard("configurationManager");
     globalHotkeyService.Guard("globalHotkeyService");
     windowManager.Guard("windowManager");
     searchView.Guard("searchView");
     serializerService.Guard("serializerService");
     this.playlistService     = playlistService;
     this.dispatcher          = dispatcher;
     this.playerService       = playerService;
     this.builder             = builder;
     this.globalHotkeyService = globalHotkeyService;
     this.windowManager       = windowManager;
     this.searchView          = searchView;
     publicTransport.ApplicationEventBus.Subscribe <PlaylistUpdatedEvent>(OnPlaylistUpdated);
     publicTransport.ApplicationEventBus.Subscribe <TrackChangedEvent>(OnTrackChanged);
     searchHotkey = configurationManager.GetValue("Search", new HotkeyDescriptor(ModifierKeys.Control | ModifierKeys.Alt, Key.J),
                                                  KnownConfigSections.GlobalHotkeys);
     searchHotkey.ValueChanged += SearchHotkeyOnValueChanged;
     globalHotkeyService.RegisterHotkey(searchHotkey.Value, OnSearch);
     //globalHotkeyService.RegisterHotkey(new HotkeyDescriptor(ModifierKeys.None, Key.A), () => MessageBox.Show("Stuff"));
     searchView.PlayFile += SearchViewOnPlayFile;
     Files = new List <FileItem>(playlistService.Files.Select(x => new FileItem(x)));
 }
Esempio n. 26
0
        public static void AutoCompletion(Rect rect, SearchContext context, ISearchView view)
        {
            if (s_DiscardAutoComplete || controlID <= 0)
            {
                return;
            }

            if (s_AutoCompleting && Event.current.type == EventType.MouseDown && !s_AutoCompleteRect.Contains(Event.current.mousePosition))
            {
                s_DiscardAutoComplete = true;
                s_AutoCompleting      = false;
                return;
            }

            var te             = GetTextEditor();
            var cursorPosition = te.cursorIndex;

            if (cursorPosition == 0)
            {
                return;
            }

            var searchText        = context.searchText;
            var lastTokenStartPos = searchText.LastIndexOf(' ', Math.Max(0, te.cursorIndex - 1));
            var lastToken         = lastTokenStartPos == -1 ? searchText : searchText.Substring(lastTokenStartPos + 1);
            var keywords          = SearchService.GetKeywords(context, lastToken).Where(k => !k.Equals(lastToken, StringComparison.OrdinalIgnoreCase)).ToArray();

            if (keywords.Length > 0)
            {
                const int maxAutoCompleteCount = 16;
                s_AutoCompleteMaxIndex = Math.Min(keywords.Length, maxAutoCompleteCount);
                if (!s_AutoCompleting)
                {
                    s_AutoCompleteIndex = 0;
                }

                if (Event.current.type == EventType.Repaint)
                {
                    var content = new GUIContent(context.searchText.Substring(0, context.searchText.Length - lastToken.Length));
                    var offset  = Styles.searchField.CalcSize(content).x;
                    s_AutoCompleteRect       = rect;
                    s_AutoCompleteRect.x    += offset;
                    s_AutoCompleteRect.y     = rect.yMax;
                    s_AutoCompleteRect.width = 250;
                    s_AutoCompleteRect.x     = Math.Min(rect.width - s_AutoCompleteRect.width - 25, s_AutoCompleteRect.x);
                }

                var lt = lastToken;

                var autoFill = DoAutoComplete(lastToken, keywords, maxAutoCompleteCount, 0.1f);
                if (autoFill == null)
                {
                    // No more results
                    s_AutoCompleting    = false;
                    s_AutoCompleteIndex = -1;
                }
                else if (autoFill != lastToken)
                {
                    var regex = new Regex(Regex.Escape(lastToken), RegexOptions.IgnoreCase);
                    autoFill = regex.Replace(autoFill, "");
                    view.SetSearchText(context.searchText.Insert(cursorPosition, autoFill));
                }
                else
                {
                    s_AutoCompleting = true;
                }
            }
            else
            {
                s_AutoCompleting    = false;
                s_AutoCompleteIndex = -1;
            }
        }
 public SearchPresenter(ISearchView view, IDataAccess dataAccess)
 {
     if (view == null) throw new Exception("view cannot be null");
     this.view = view;
     this.dataAccess = dataAccess;
 }
Esempio n. 28
0
 public ListView(ISearchView hostView)
     : base(hostView)
 {
 }
 /// <summary>
 /// Constructor
 /// </summary>
 public SearchPresenter(ISearchView view, Window windowHandler)
 {
     this.view = view;
     this.windowHandler = windowHandler;
 }
Esempio n. 30
0
 public GridView(ISearchView hostView)
     : base(hostView)
 {
 }
Esempio n. 31
0
 public SearchPresenter(ISearchView view, IBlogSystemData data)
 {
     this.view = view;
     this.Data = data;
 }
Esempio n. 32
0
 public ResultView(ISearchView hostView)
 {
     searchView = hostView;
 }
Esempio n. 33
0
 public static void ExecuteQuery(ISearchView view, SearchQuery query)
 {
     view.context.SetFilteredProviders(query.providerIds);
     view.SetSearchText(query.searchQuery);
 }
Esempio n. 34
0
 public SearchPresenter(ISearchView searchView)
 {
 }
 public SearchPresenter(ISearchView view)
 {
     this.view = view;
     entityData = new EntityData();
 }
 /// <summary>
 /// Constructs a new controller for the given search view
 /// </summary>
 /// <param name="svcProvider">Service provider for the controller</param>
 /// <param name="view">Search view associated with the controller</param>
 public SearchViewController(IServiceProvider svcProvider, ISearchView view)
     : base(svcProvider, view)
 {
 }
Esempio n. 37
0
 public void AttachView(ISearchView view)
 {
     _view = view;
 }
Esempio n. 38
0
 public void DetachView()
 {
     _view = null;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="BoxDetailsPresenter"/> class.
 /// </summary>
 /// <param name="view">The view.</param>
 public BoxDetailsPresenter(ISearchView view)
 {
     if (view == null) throw new Exception("view cannot be null");
     _searchView = view;
 }
Esempio n. 40
0
        public static void Draw(SearchContext context, ISearchView view)
        {
            if (!enabled)
            {
                return;
            }

            var evt = Event.current;

            if (evt.type == EventType.MouseDown && !position.Contains(evt.mousePosition))
            {
                evt.Use();
                Clear();
                return;
            }

            // Check if the cache filtered list should be updated
            if (evt.type == EventType.Repaint && !context.searchText.Equals(s_LastInput, StringComparison.Ordinal))
            {
                UpdateCompleteList(SearchField.GetTextEditor());
            }

            if (s_FilteredList == null)
            {
                return;
            }

            var autoFill = DrawItems(evt);

            if (!string.IsNullOrEmpty(autoFill))
            {
                Log($"Select({autoFill}, {options.cursor}, {options.token})");

                if (!options.token.StartsWith(autoFill, StringComparison.OrdinalIgnoreCase))
                {
                    var searchText = context.searchText;

                    var replaceFrom = options.cursor - 1;
                    while (replaceFrom >= 0 && !char.IsWhiteSpace(searchText[replaceFrom]))
                    {
                        replaceFrom--;
                    }
                    if (replaceFrom == -1)
                    {
                        replaceFrom = 0;
                    }
                    else
                    {
                        replaceFrom++;
                    }

                    var replaceTo = searchText.IndexOf(' ', options.cursor);
                    if (replaceTo == -1)
                    {
                        replaceTo = searchText.Length;
                    }
                    var sb = new StringBuilder(searchText);
                    sb.Remove(replaceFrom, replaceTo - replaceFrom);
                    sb.Insert(replaceFrom, autoFill);

                    view.SetSearchText(sb.ToString(), TextCursorPlacement.MoveAutoComplete);
                }
                Clear();
            }
            else if (autoFill == string.Empty)
            {
                // No more results
                Clear();
            }
        }
Esempio n. 41
0
 public SearchPresenter(ISearchView view)
 {
     this.view = view;
 }