コード例 #1
0
ファイル: FindWindow.cs プロジェクト: tryashtar/nbt-studio
        private List <INode> DoSearchAll(IProgress <TreeSearchReport> progress)
        {
            if (!ValidateRegex())
            {
                return(null);
            }
            var predicate = GetPredicate();
            var results   = SearchNodeOperations.SearchAll(SearchingModel, predicate, progress, CancelSource.Token).ToList();

            return(results);
        }
コード例 #2
0
ファイル: FindWindow.cs プロジェクト: tryashtar/nbt-studio
        private INode DoSearch(SearchDirection direction, IProgress <TreeSearchReport> progress)
        {
            if (!ValidateRegex())
            {
                return(null);
            }
            var start     = (SearchingView.SelectedNode?.Tag as INode) ?? LastFound;
            var predicate = GetPredicate();
            var find      = SearchNodeOperations.SearchFrom(SearchingModel, start, predicate, direction, progress, CancelSource.Token, true);

            if (find is null)
            {
                return(null);
            }
            else
            {
                LastFound = find;
                return(find);
            }
        }