From 303067bc98d9d6057d5f42de91331c6a24fb981b Mon Sep 17 00:00:00 2001 From: spingel Date: Sat, 3 Apr 2010 00:37:07 +0000 Subject: NEW - bug 304099: [patch][api] create extension point for tasks related search functionality https://bugs.eclipse.org/bugs/show_bug.cgi?id=304099 --- .../tasks/ui/search/DefaultSearchProvider.java | 45 ++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 org.eclipse.mylyn.tasks.search/src/org/eclipse/mylyn/internal/tasks/ui/search/DefaultSearchProvider.java (limited to 'org.eclipse.mylyn.tasks.search/src/org/eclipse/mylyn/internal/tasks/ui') diff --git a/org.eclipse.mylyn.tasks.search/src/org/eclipse/mylyn/internal/tasks/ui/search/DefaultSearchProvider.java b/org.eclipse.mylyn.tasks.search/src/org/eclipse/mylyn/internal/tasks/ui/search/DefaultSearchProvider.java new file mode 100644 index 000000000..ef9cfb3da --- /dev/null +++ b/org.eclipse.mylyn.tasks.search/src/org/eclipse/mylyn/internal/tasks/ui/search/DefaultSearchProvider.java @@ -0,0 +1,45 @@ +/******************************************************************************* + * Copyright (c) 2010 Flavio Donze and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Flavio Donze - initial API and implementation + * Tasktop Technologies - improvements + *******************************************************************************/ + +package org.eclipse.mylyn.internal.tasks.ui.search; + +import org.eclipse.mylyn.internal.tasks.core.ITaskList; +import org.eclipse.mylyn.internal.tasks.ui.TaskSearchPage; +import org.eclipse.mylyn.tasks.core.IRepositoryQuery; +import org.eclipse.mylyn.tasks.core.TaskRepository; +import org.eclipse.search.ui.NewSearchUI; +import org.eclipse.ui.IWorkbenchWindow; +import org.eclipse.ui.PlatformUI; + +/** + * This search provider uses the default platform search functionality. + * + * @author Flavio Donze + */ +public class DefaultSearchProvider extends AbstractSearchProvider { + + @Override + public void openSearchDialog(IWorkbenchWindow window) { + NewSearchUI.openSearchDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow(), TaskSearchPage.ID); + } + + @Override + public void runSearchQuery(ITaskList tasklist, TaskRepository repository, IRepositoryQuery repositoryQuery, + boolean activateResultView) { + if (activateResultView) { + NewSearchUI.activateSearchResultView(); + } + SearchHitCollector collector = new SearchHitCollector(tasklist, repository, repositoryQuery); + NewSearchUI.runQueryInBackground(collector); + } + +} -- cgit v1.2.3