// Copyright (c) 2021, Fr.Terrot. All rights reserved. // Use of this source code is governed by a MIT-style // license that can be found in the LICENSE file. package io.gitea.mylyn.ui; import org.eclipse.mylyn.commons.ui.CommonImages; import org.eclipse.mylyn.tasks.ui.ITasksUiConstants; import org.eclipse.mylyn.tasks.ui.TasksUiImages; import org.eclipse.mylyn.tasks.ui.TasksUiUtil; import org.eclipse.mylyn.tasks.ui.editors.AbstractTaskEditorPageFactory; import org.eclipse.mylyn.tasks.ui.editors.TaskEditor; import org.eclipse.mylyn.tasks.ui.editors.TaskEditorInput; import org.eclipse.swt.graphics.Image; import org.eclipse.ui.forms.editor.IFormPage; import io.gitea.mylyn.core.GiteaPluginCore; public class GiteaEditorPageFactory extends AbstractTaskEditorPageFactory { @Override public boolean canCreatePageFor(TaskEditorInput input) { if (input.getTask().getConnectorKind().equals(GiteaPluginCore.CONNECTOR_KIND)) { return true; } else if (TasksUiUtil.isOutgoingNewTask(input.getTask(), GiteaPluginCore.CONNECTOR_KIND)) { return true; } return false; } @Override public IFormPage createPage(TaskEditor editor) { return new GiteaEditorPage(editor, GiteaPluginCore.CONNECTOR_KIND); } @Override public int getPriority() { return 0; } @Override public Image getPageImage() { return CommonImages.getImage(TasksUiImages.TASK); } @Override public String getPageText() { return Labels.GITEA_ISSUE; } @Override public String[] getConflictingIds(TaskEditorInput input) { return new String[] { ITasksUiConstants.ID_PAGE_PLANNING }; } }