Index: plugin.properties =================================================================== RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.java.tasks/plugin.properties,v retrieving revision 1.3 diff -u -r1.3 plugin.properties --- plugin.properties 24 Jul 2009 12:06:24 -0000 1.3 +++ plugin.properties 26 Dec 2009 14:34:25 -0000 @@ -15,3 +15,5 @@ JavaStackTraceHyperlinkDetector.name = Mylyn Stack Trace NewTaskFromJunitResultViewAction.label = New Task from Failure... + +MylynTemplateVariableResolver.activeTaskId.description = Return the ID of the current active task if any else nothing \ No newline at end of file Index: plugin.xml =================================================================== RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.java.tasks/plugin.xml,v retrieving revision 1.5 diff -u -r1.5 plugin.xml --- plugin.xml 24 Jul 2009 12:06:24 -0000 1.5 +++ plugin.xml 26 Dec 2009 14:34:25 -0000 @@ -33,5 +33,22 @@ menubarPath="org.eclipse.jdt.junit.ResultView"/> + + + + + + Index: META-INF/MANIFEST.MF =================================================================== RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.java.tasks/META-INF/MANIFEST.MF,v retrieving revision 1.10 diff -u -r1.10 MANIFEST.MF --- META-INF/MANIFEST.MF 15 Dec 2009 23:10:18 -0000 1.10 +++ META-INF/MANIFEST.MF 26 Dec 2009 14:34:25 -0000 @@ -11,6 +11,7 @@ org.eclipse.jface.text, org.eclipse.ui, org.eclipse.ui.workbench.texteditor, + org.eclipse.ui.editors, org.eclipse.mylyn.tasks.core;bundle-version="[3.0.0,4.0.0)", org.eclipse.mylyn.tasks.ui;bundle-version="[3.0.0,4.0.0)" Bundle-ActivationPolicy: lazy Index: src/org/eclipse/mylyn/internal/java/tasks/MylynTemplateVariableResolver.java =================================================================== RCS file: src/org/eclipse/mylyn/internal/java/tasks/MylynTemplateVariableResolver.java diff -N src/org/eclipse/mylyn/internal/java/tasks/MylynTemplateVariableResolver.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/mylyn/internal/java/tasks/MylynTemplateVariableResolver.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,42 @@ +/******************************************************************************* + * Copyright (c) 2010 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.java.tasks; + +import org.eclipse.jface.text.templates.TemplateContext; +import org.eclipse.jface.text.templates.TemplateVariableResolver; +import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; +import org.eclipse.mylyn.tasks.core.ITask; + +/** + * Resolver to resolve variables from the mylyn context. + * + * @author Andreas Höhmann + * @since 3.3.1 + */ +public class MylynTemplateVariableResolver extends TemplateVariableResolver { + + /** + * Would be used as resolver type. + */ + private static final String TYPE_ACTIVE_TASK_ID = "activeTask.id"; //$NON-NLS-1$ + + /** + * {@inheritDoc} + */ + @Override + protected String resolve(final TemplateContext context) { + final String type = getType(); + if (TYPE_ACTIVE_TASK_ID.equalsIgnoreCase(type)) { + final ITask activeTask = TasksUiPlugin.getTaskActivityManager().getActiveTask(); + if (activeTask != null) { + return activeTask.getTaskId(); + } + } + return ""; //$NON-NLS-1$ + } +}