예제 #1
0
        public IResourceList   ProcessQuery(string query, int[] inDocIds, out IHighlightDataProvider hldp,
                                            out string[] stopList, out string parseError)
        {
            FullTextIndexer.QueryResult qr = _queryManager.QueryList(query);

            hldp       = null;
            stopList   = null;
            parseError = null;
            IResourceList result = Core.ResourceStore.EmptyResourceList;

            if (qr != null)
            {
                SimplePropertyProvider provider;
                result = ConvertResultList(qr.Result, qr.IsSingularTerm, inDocIds, out provider);

                if (QueryProcessor.LastSearchLexemes.Length > 0)
                {
                    hldp = new SearchHighlightDataProvider(this, qr.Result, provider, QueryProcessor.LastSearchLexemes);
                }

                stopList   = QueryProcessor.LastStoplist;
                parseError = qr.ErrorMessage;
            }

            return(result);
        }
예제 #2
0
        public IResourceList   ProcessQuery(string query, out IHighlightDataProvider hldp)
        {
            string[] stoplist;
            string   parseError;

            return(ProcessQuery(query, null, out hldp, out stoplist, out parseError));
        }
예제 #3
0
 public ResourceListDisplayOptions(ResourceListDisplayOptions options)
 {
     _caption                  = options.Caption;
     _captionTemplate          = options.CaptionTemplate;
     _columns                  = options.Columns;
     _selectedResource         = options.SelectedResource;
     _highlightDataProvider    = options.HighlightDataProvider;
     _threadingHandler         = options.ThreadingHandler;
     _sortSettings             = options.SortSettings;
     _tabFilter                = options.TabFilter;
     _seeAlsoBar               = options.SeeAlsoBar;
     _suppressContexts         = options.SuppressContexts;
     _statusLine               = options.StatusLine;
     _statusLineClickHandler   = options.StatusLineClickHandler;
     _emptyText                = options.EmptyText;
     _transientContainerPaneId = options._transientContainerPaneId;
     _transientContainerParent = options._transientContainerParent;
 }
예제 #4
0
 internal void SetHighlightDataProvider(IHighlightDataProvider provider)
 {
     _contextsRequested     = new IntHashSet();
     _contextCache          = new IntHashTable();
     _highlightDataProvider = provider;
 }
예제 #5
0
 public IResourceList   ProcessQuery(string SearchQuery, int[] RestrictByIDs,
                                     bool CalcContexts, out IHighlightDataProvider hldp)
 {
     hldp = null; return(null);
 }
예제 #6
0
 public IResourceList   ProcessQuery(string SearchQuery, int[] RestrictByIDs,
                                     out IHighlightDataProvider hldp,
                                     out string[] lastStopList, out string errorMsg)
 {
     hldp = null; lastStopList = null; errorMsg = null; return(null);
 }