提交 8d139ed5 编写于 作者: A Alex Dima

Fixes #33456

上级 977396b7
......@@ -5,28 +5,30 @@
'use strict';
import * as nls from 'vs/nls';
import { registerEditorAction, ServicesAccessor, EditorAction } from 'vs/editor/browser/editorExtensions';
import { IConfigurationService, ConfigurationTarget } from 'vs/platform/configuration/common/configuration';
import { ICodeEditor } from 'vs/editor/browser/editorBrowser';
import { Registry } from 'vs/platform/registry/common/platform';
import { IWorkbenchActionRegistry, Extensions as ActionExtensions } from 'vs/workbench/common/actions';
import { Action } from 'vs/base/common/actions';
import { TPromise } from 'vs/base/common/winjs.base';
import { SyncActionDescriptor } from 'vs/platform/actions/common/actions';
export class ToggleMinimapAction extends EditorAction {
export class ToggleMinimapAction extends Action {
public static readonly ID = 'editor.action.toggleMinimap';
public static readonly LABEL = nls.localize('toggleMinimap', "View: Toggle Minimap");
constructor() {
super({
id: 'editor.action.toggleMinimap',
label: nls.localize('toggleMinimap', "View: Toggle Minimap"),
alias: 'View: Toggle Minimap',
precondition: null
});
constructor(
id: string,
label: string,
@IConfigurationService private readonly _configurationService: IConfigurationService
) {
super(id, label);
}
public run(accessor: ServicesAccessor, editor: ICodeEditor): void {
const configurationService = accessor.get(IConfigurationService);
const newValue = !editor.getConfiguration().viewInfo.minimap.enabled;
configurationService.updateValue('editor.minimap.enabled', newValue, ConfigurationTarget.USER);
public run(): TPromise<any> {
const newValue = !this._configurationService.getValue<boolean>('editor.minimap.enabled');
return this._configurationService.updateValue('editor.minimap.enabled', newValue, ConfigurationTarget.USER);
}
}
registerEditorAction(ToggleMinimapAction);
const registry = Registry.as<IWorkbenchActionRegistry>(ActionExtensions.WorkbenchActions);
registry.registerWorkbenchAction(new SyncActionDescriptor(ToggleMinimapAction, ToggleMinimapAction.ID, ToggleMinimapAction.LABEL), 'View: Toggle Minimap');
......@@ -5,28 +5,31 @@
'use strict';
import * as nls from 'vs/nls';
import { registerEditorAction, ServicesAccessor, EditorAction } from 'vs/editor/browser/editorExtensions';
import { IConfigurationService, ConfigurationTarget } from 'vs/platform/configuration/common/configuration';
import { ICodeEditor } from 'vs/editor/browser/editorBrowser';
import { Registry } from 'vs/platform/registry/common/platform';
import { IWorkbenchActionRegistry, Extensions as ActionExtensions } from 'vs/workbench/common/actions';
import { Action } from 'vs/base/common/actions';
import { TPromise } from 'vs/base/common/winjs.base';
import { SyncActionDescriptor } from 'vs/platform/actions/common/actions';
export class ToggleRenderControlCharacterAction extends EditorAction {
export class ToggleRenderControlCharacterAction extends Action {
constructor() {
super({
id: 'editor.action.toggleRenderControlCharacter',
label: nls.localize('toggleRenderControlCharacters', "View: Toggle Control Characters"),
alias: 'View: Toggle Control Characters',
precondition: null
});
}
public run(accessor: ServicesAccessor, editor: ICodeEditor): void {
const configurationService = accessor.get(IConfigurationService);
public static readonly ID = 'editor.action.toggleRenderControlCharacter';
public static readonly LABEL = nls.localize('toggleRenderControlCharacters', "View: Toggle Control Characters");
let newRenderControlCharacters = !editor.getConfiguration().viewInfo.renderControlCharacters;
constructor(
id: string,
label: string,
@IConfigurationService private readonly _configurationService: IConfigurationService
) {
super(id, label);
}
configurationService.updateValue('editor.renderControlCharacters', newRenderControlCharacters, ConfigurationTarget.USER);
public run(): TPromise<any> {
let newRenderControlCharacters = !this._configurationService.getValue<boolean>('editor.renderControlCharacters');
return this._configurationService.updateValue('editor.renderControlCharacters', newRenderControlCharacters, ConfigurationTarget.USER);
}
}
registerEditorAction(ToggleRenderControlCharacterAction);
const registry = Registry.as<IWorkbenchActionRegistry>(ActionExtensions.WorkbenchActions);
registry.registerWorkbenchAction(new SyncActionDescriptor(ToggleRenderControlCharacterAction, ToggleRenderControlCharacterAction.ID, ToggleRenderControlCharacterAction.LABEL), 'View: Toggle Control Characters');
......@@ -5,25 +5,29 @@
'use strict';
import * as nls from 'vs/nls';
import { registerEditorAction, ServicesAccessor, EditorAction } from 'vs/editor/browser/editorExtensions';
import { IConfigurationService, ConfigurationTarget } from 'vs/platform/configuration/common/configuration';
import { ICodeEditor } from 'vs/editor/browser/editorBrowser';
import { Registry } from 'vs/platform/registry/common/platform';
import { IWorkbenchActionRegistry, Extensions as ActionExtensions } from 'vs/workbench/common/actions';
import { Action } from 'vs/base/common/actions';
import { TPromise } from 'vs/base/common/winjs.base';
import { SyncActionDescriptor } from 'vs/platform/actions/common/actions';
export class ToggleRenderWhitespaceAction extends EditorAction {
export class ToggleRenderWhitespaceAction extends Action {
constructor() {
super({
id: 'editor.action.toggleRenderWhitespace',
label: nls.localize('toggleRenderWhitespace', "View: Toggle Render Whitespace"),
alias: 'View: Toggle Render Whitespace',
precondition: null
});
public static readonly ID = 'editor.action.toggleRenderWhitespace';
public static readonly LABEL = nls.localize('toggleRenderWhitespace', "View: Toggle Render Whitespace");
constructor(
id: string,
label: string,
@IConfigurationService private readonly _configurationService: IConfigurationService
) {
super(id, label);
}
public run(accessor: ServicesAccessor, editor: ICodeEditor): void {
const configurationService = accessor.get(IConfigurationService);
public run(): TPromise<any> {
const renderWhitespace = this._configurationService.getValue<string>('editor.renderWhitespace');
let renderWhitespace = editor.getConfiguration().viewInfo.renderWhitespace;
let newRenderWhitespace: string;
if (renderWhitespace === 'none') {
newRenderWhitespace = 'all';
......@@ -31,8 +35,9 @@ export class ToggleRenderWhitespaceAction extends EditorAction {
newRenderWhitespace = 'none';
}
configurationService.updateValue('editor.renderWhitespace', newRenderWhitespace, ConfigurationTarget.USER);
return this._configurationService.updateValue('editor.renderWhitespace', newRenderWhitespace, ConfigurationTarget.USER);
}
}
registerEditorAction(ToggleRenderWhitespaceAction);
const registry = Registry.as<IWorkbenchActionRegistry>(ActionExtensions.WorkbenchActions);
registry.registerWorkbenchAction(new SyncActionDescriptor(ToggleRenderWhitespaceAction, ToggleRenderWhitespaceAction.ID, ToggleRenderWhitespaceAction.LABEL), 'View: Toggle Render Whitespace');
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册