本文整理汇总了TypeScript中vs/workbench/services/editor/common/editorService.IWorkbenchEditorService类的典型用法代码示例。如果您正苦于以下问题:TypeScript IWorkbenchEditorService类的具体用法?TypeScript IWorkbenchEditorService怎么用?TypeScript IWorkbenchEditorService使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了IWorkbenchEditorService类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1:
handler: (accessor: ServicesAccessor) => {
let editorService: IWorkbenchEditorService = accessor.get(IWorkbenchEditorService);
let instantiationService: IInstantiationService = accessor.get(IInstantiationService);
let connectionService: IConnectionManagementService = accessor.get(IConnectionManagementService);
let objectExplorerService: IObjectExplorerService = accessor.get(IObjectExplorerService);
let connectionProfile = TaskUtilities.getCurrentGlobalConnection(objectExplorerService, connectionService, editorService);
let profilerInput = instantiationService.createInstance(ProfilerInput, connectionProfile);
return editorService.openEditor(profilerInput, { pinned: true }, false).then(() => TPromise.as(true));
}
示例2: getCurrentGlobalConnection
export function getCurrentGlobalConnection(objectExplorerService: IObjectExplorerService, connectionManagementService: IConnectionManagementService, workbenchEditorService: IWorkbenchEditorService, topLevelOnly: boolean = false): IConnectionProfile {
let connection: IConnectionProfile;
let objectExplorerSelection = objectExplorerService.getSelectedProfileAndDatabase();
if (objectExplorerSelection) {
let objectExplorerProfile = objectExplorerSelection.profile;
if (connectionManagementService.isProfileConnected(objectExplorerProfile)) {
if (objectExplorerSelection.databaseName && !topLevelOnly) {
connection = objectExplorerProfile.cloneWithDatabase(objectExplorerSelection.databaseName);
} else {
connection = objectExplorerProfile;
}
}
if (objectExplorerService.isFocused()) {
return connection;
}
}
let activeInput = workbenchEditorService.getActiveEditorInput();
if (activeInput) {
if (activeInput instanceof QueryInput || activeInput instanceof EditDataInput || activeInput instanceof DashboardInput) {
connection = connectionManagementService.getConnectionProfile(activeInput.uri);
}
}
return connection;
}
示例3: getResourceForCommand
export function getResourceForCommand(resource: URI | object, listService: IListService, editorService: IWorkbenchEditorService): URI {
if (URI.isUri(resource)) {
return resource;
}
let list = listService.lastFocusedList;
if (list && list.isDOMFocused()) {
let focus: any;
if (list instanceof List) {
const focused = list.getFocusedElements();
if (focused.length) {
focus = focused[0];
}
} else {
focus = list.getFocus();
}
if (focus instanceof ExplorerItem) {
return focus.resource;
} else if (focus instanceof OpenEditor) {
return focus.getResource();
}
}
return toResource(editorService.getActiveEditorInput(), { supportSideBySide: true });
}
示例4: openInEditor
public openInEditor(editorService: IWorkbenchEditorService, selection: IRange, preserveFocus?: boolean, sideBySide?: boolean, pinned?: boolean): TPromise<any> {
return !this.available ? TPromise.as(null) : editorService.openEditor({
resource: this.uri,
description: this.origin,
options: {
preserveFocus,
selection,
revealIfVisible: true,
revealInCenterIfOutsideViewport: true,
pinned: pinned || (!preserveFocus && !this.inMemory)
}
}, sideBySide);
}
示例5: getResourceForCommand
export function getResourceForCommand(resource: URI | {}, listService: IListService, editorService: IWorkbenchEditorService): URI {
if (URI.isUri(resource)) {
return resource;
}
const list = listService.lastFocusedList;
if (list && list.isDOMFocused()) {
const focus = list.getFocus();
if (focus instanceof FileStat) {
return focus.resource;
} else if (focus instanceof OpenEditor) {
return focus.getResource();
}
}
return toResource(editorService.getActiveEditorInput(), { supportSideBySide: true });
}
示例6: save
function save(resource: URI, isSaveAs: boolean, editorService: IWorkbenchEditorService, fileService: IFileService, untitledEditorService: IUntitledEditorService,
textFileService: ITextFileService, editorGroupService: IEditorGroupService): TPromise<any> {
if (resource && (fileService.canHandleResource(resource) || resource.scheme === Schemas.untitled)) {
// Save As (or Save untitled with associated path)
if (isSaveAs || resource.scheme === Schemas.untitled) {
let encodingOfSource: string;
if (resource.scheme === Schemas.untitled) {
encodingOfSource = untitledEditorService.getEncoding(resource);
} else if (fileService.canHandleResource(resource)) {
const textModel = textFileService.models.get(resource);
encodingOfSource = textModel && textModel.getEncoding(); // text model can be null e.g. if this is a binary file!
}
let viewStateOfSource: IEditorViewState;
const activeEditor = editorService.getActiveEditor();
const editor = getCodeEditor(activeEditor);
if (editor) {
const activeResource = toResource(activeEditor.input, { supportSideBySide: true });
if (activeResource && (fileService.canHandleResource(activeResource) || resource.scheme === Schemas.untitled) && activeResource.toString() === resource.toString()) {
viewStateOfSource = editor.saveViewState();
}
}
// Special case: an untitled file with associated path gets saved directly unless "saveAs" is true
let savePromise: TPromise<URI>;
if (!isSaveAs && resource.scheme === Schemas.untitled && untitledEditorService.hasAssociatedFilePath(resource)) {
savePromise = textFileService.save(resource).then((result) => {
if (result) {
return URI.file(resource.fsPath);
}
return null;
});
}
// Otherwise, really "Save As..."
else {
savePromise = textFileService.saveAs(resource);
}
return savePromise.then((target) => {
if (!target || target.toString() === resource.toString()) {
return void 0; // save canceled or same resource used
}
const replaceWith: IResourceInput = {
resource: target,
encoding: encodingOfSource,
options: {
pinned: true,
viewState: viewStateOfSource
}
};
return editorService.replaceEditors([{
toReplace: { resource: resource },
replaceWith
}]).then(() => true);
});
}
// Pin the active editor if we are saving it
const editor = editorService.getActiveEditor();
const activeEditorResource = editor && editor.input && editor.input.getResource();
if (activeEditorResource && activeEditorResource.toString() === resource.toString()) {
editorGroupService.pinEditor(editor.position, editor.input);
}
// Just save
return textFileService.save(resource, { force: true /* force a change to the file to trigger external watchers if any */ });
}
return TPromise.as(false);
}
示例7: getFilePath
private getFilePath(): string {
let input = this.editorService.getActiveEditorInput();
if (!input) {
return '';
}
let fei = WorkbenchEditorCommon.asFileEditorInput(input);
if (!fei) {
return '';
}
let resource = fei.getResource();
return Paths.normalize(resource.fsPath, true);
}
示例8:
return savePromise.then((target) => {
if (!target || target.toString() === resource.toString()) {
return void 0; // save canceled or same resource used
}
const replaceWith: IResourceInput = {
resource: target,
encoding: encodingOfSource,
options: {
pinned: true,
viewState: viewStateOfSource
}
};
return editorService.replaceEditors([{
toReplace: { resource: resource },
replaceWith
}]).then(() => true);
});