void StartSearch() { // TODO: use SerialDisposable instead if (_searchSubscription != null) _searchSubscription.Dispose(); _selectedItem = null; _currentItems = new List<INavigateToItem>(); _searchSubscription = _navigateToItemProvider.Search(_searchFilter).ObserveOnThreadPool().Subscribe(OnNextItem); }
void CloseWindow(INavigateToItem selectedItem) { if (selectedItem != null) { selectedItem.NavigateTo(); } Close(); }
private void CloseWindow(INavigateToItem selectedItem) { if(selectedItem != null) { selectedItem.NavigateTo(); } Close(); }
void OnNextItem(INavigateToItem item) { UnityEditorScheduler.Instance.Schedule(() => { if (_selectedItem == null) _selectedItem = item; _currentItems.Add(item); Repaint(); }); }
void StartSearch() { // TODO: use SerialDisposable instead if (_searchSubscription != null) { _searchSubscription.Dispose(); } _selectedItem = null; _currentItems = new List <INavigateToItem>(); _searchSubscription = _navigateToItemProvider.Search(_searchFilter).ObserveOnThreadPool().Subscribe(OnNextItem); }
void OnNextItem(INavigateToItem item) { UnityEditorScheduler.Instance.Schedule(() => { if (_selectedItem == null) { _selectedItem = item; } _currentItems.Add(item); Repaint(); }); }
private void FilterChanged() { _currentItems = _filePathProvider.Search(_searchFilter); if(_currentItems.Count > 0) { if(_currentItems.IndexOf(_selectedItem) < 0) _selectedItem = _currentItems[0]; } else { _selectedItem = null; } }
void Select(INavigateToItem name) { _selectedItem = name; Repaint(); }