blob: 7bdbd633f7251236eeca996bf3f9ab76a7a2f9a1 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2004, 2007 Mylyn project committers 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
*******************************************************************************/
package org.eclipse.mylyn.internal.web.tasks;
import org.eclipse.jface.wizard.Wizard;
import org.eclipse.mylyn.internal.tasks.core.RepositoryQuery;
import org.eclipse.mylyn.internal.tasks.ui.util.TasksUiInternal;
import org.eclipse.mylyn.tasks.core.AbstractRepositoryConnector;
import org.eclipse.mylyn.tasks.core.TaskRepository;
import org.eclipse.mylyn.tasks.ui.TasksUi;
/**
* Wizard used to create query for web based connector
*
* @author Eugene Kuleshov
*/
public class WebQueryWizard extends Wizard {
private static final String TITLE = "New Web Query";
private final TaskRepository repository;
private WebQueryWizardPage queryPage;
public WebQueryWizard(TaskRepository repository) {
this.repository = repository;
setNeedsProgressMonitor(true);
setWindowTitle(TITLE);
}
@Override
public void addPages() {
queryPage = new WebQueryWizardPage(repository);
queryPage.setWizard(this);
addPage(queryPage);
}
@Override
public boolean performFinish() {
RepositoryQuery query = queryPage.getQuery();
if (query != null) {
TasksUiInternal.getTaskList().addQuery(query);
AbstractRepositoryConnector connector = TasksUi.getRepositoryManager().getRepositoryConnector(
repository.getConnectorKind());
if (connector != null) {
TasksUiInternal.synchronizeQuery(connector, query, null, true);
}
// filter.refreshHits();
}
return true;
}
@Override
public boolean canFinish() {
if (queryPage.getNextPage() == null) {
return queryPage.isPageComplete();
}
return queryPage.getNextPage().isPageComplete();
}
}