Skip to main content
aboutsummaryrefslogtreecommitdiffstats
blob: c561aa1a0d3750cb98a9f68ae51137b068205a4e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package org.eclipse.linuxtools.internal.mylyn.osio.rest.ui.provisional;

import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.mylyn.tasks.core.TaskRepository;
import org.eclipse.mylyn.tasks.core.data.TaskAttribute;
import org.eclipse.mylyn.tasks.core.data.TaskDataModel;
import org.eclipse.mylyn.tasks.ui.editors.AbstractAttributeEditor;
import org.eclipse.mylyn.tasks.ui.editors.AttributeEditorFactory;
import org.eclipse.ui.services.IServiceLocator;

public class RepositoryQueryAttributeEditorFactory extends AttributeEditorFactory {
	
	private final TaskDataModel taskModel;

	public RepositoryQueryAttributeEditorFactory(@NonNull TaskDataModel model, @NonNull TaskRepository taskRepository) {
		super(model, taskRepository);
		this.taskModel = model;
	}

	public RepositoryQueryAttributeEditorFactory(@NonNull TaskDataModel model, @NonNull TaskRepository taskRepository,
			@Nullable IServiceLocator serviceLocator) {
		super(model, taskRepository, serviceLocator);
		this.taskModel = model;
	}
	
	@NonNull
	public AbstractAttributeEditor createEditor(@NonNull String type, @NonNull TaskAttribute taskAttribute) {
		if (TaskAttribute.TYPE_MULTI_SELECT.equals(type)) {
			return new RepositoryQueryAttributeEditor(taskModel, taskAttribute);
		}
		return super.createEditor(type, taskAttribute);
	}

}

Back to the top