/*
Copyright (C) 2011, Christian Trutz <christian.trutz@belaso.de>
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 de.belaso.mongolyn.ui;
import org.eclipse.mylyn.tasks.core.IRepositoryQuery;
import org.eclipse.mylyn.tasks.core.TaskRepository;
import org.eclipse.mylyn.tasks.ui.wizards.AbstractRepositoryQueryPage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Text;
/**
*
* @author Christian Trutz
*
*/
public class TaskQueryPage extends AbstractRepositoryQueryPage {
private final IRepositoryQuery query;
private Text summary = null;
public TaskQueryPage(TaskRepository taskRepository, IRepositoryQuery query) {
super("Mongolyn query page", taskRepository, query);
this.query = query;
}
@Override
public void createControl(Composite parent) {
Composite root = new Composite(parent, SWT.NONE);
root.setLayout(new GridLayout(2, false));
new Label(root, SWT.NONE).setText("Query name:");
summary = new Text(root, SWT.BORDER);
if (query != null)
summary.setText(query.getSummary());
summary.addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent e) {
setPageComplete(isPageComplete());
}
});
setControl(root);
}
@Override
public String getQueryTitle() {
if (summary != null)
return summary.getText();
return null;
}
@Override
public void applyTo(IRepositoryQuery query) {
if (summary != null)
query.setSummary(summary.getText());
}
}