未验证 提交 67ea7f63 编写于 作者: I Isidor Nikolic 提交者: GitHub

Merge pull request #43423 from ergun1017/feature/copy-property-path

Fixes #19580; added copy property path action to debug viewlet
......@@ -34,6 +34,23 @@ export class CopyValueAction extends Action {
}
}
export class CopyEvaluatePathAction extends Action {
static readonly ID = 'workbench.debug.viewlet.action.copyEvaluatePath';
static LABEL = nls.localize('copyPath', "Copy Path");
constructor(id: string, label: string, private value: any) {
super(id, label);
}
public run(): TPromise<any> {
if (this.value instanceof Variable) {
clipboard.writeText(this.value.evaluateName);
}
return TPromise.as(null);
}
}
export class CopyAction extends Action {
static readonly ID = 'workbench.debug.action.copy';
static LABEL = nls.localize('copy', "Copy");
......
......@@ -21,7 +21,7 @@ import { twistiePixels, renderViewTree, IVariableTemplateData, BaseDebugControll
import { TPromise } from 'vs/base/common/winjs.base';
import { IAction, IActionItem } from 'vs/base/common/actions';
import { SetValueAction, AddToWatchExpressionsAction } from 'vs/workbench/parts/debug/browser/debugActions';
import { CopyValueAction } from 'vs/workbench/parts/debug/electron-browser/electronDebugActions';
import { CopyValueAction, CopyEvaluatePathAction } from 'vs/workbench/parts/debug/electron-browser/electronDebugActions';
import { Separator } from 'vs/base/browser/ui/actionbar/actionbar';
import { ViewModel } from 'vs/workbench/parts/debug/common/debugViewModel';
import { equalsIgnoreCase } from 'vs/base/common/strings';
......@@ -180,6 +180,7 @@ class VariablesActionProvider implements IActionProvider {
const variable = <Variable>element;
actions.push(new SetValueAction(SetValueAction.ID, SetValueAction.LABEL, variable, this.debugService, this.keybindingService));
actions.push(new CopyValueAction(CopyValueAction.ID, CopyValueAction.LABEL, variable, this.debugService));
actions.push(new CopyEvaluatePathAction(CopyEvaluatePathAction.ID, CopyEvaluatePathAction.LABEL, variable));
actions.push(new Separator());
actions.push(new AddToWatchExpressionsAction(AddToWatchExpressionsAction.ID, AddToWatchExpressionsAction.LABEL, variable, this.debugService, this.keybindingService));
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册