extensionsInput.ts 1.2 KB
Newer Older
J
Joao Moreno 已提交
1 2 3 4 5 6 7
/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/

'use strict';

J
Joao Moreno 已提交
8 9
import { TPromise } from 'vs/base/common/winjs.base';
import { EditorInput } from 'vs/workbench/common/editor';
J
Joao Moreno 已提交
10 11 12

// TODO@joao: layer breaker
import { IExtension } from '../electron-browser/extensionsModel';
J
Joao Moreno 已提交
13

J
Joao Moreno 已提交
14
export class ExtensionsInput extends EditorInput {
J
Joao Moreno 已提交
15

J
Joao Moreno 已提交
16
	static get ID()  { return 'workbench.extensions.input2'; }
J
Joao Moreno 已提交
17
	get extension(): IExtension { return this._extension; }
J
Joao Moreno 已提交
18

J
Joao Moreno 已提交
19
	constructor(private _extension: IExtension) {
J
Joao Moreno 已提交
20 21 22
		super();
	}

23
	getTypeId(): string {
J
Joao Moreno 已提交
24 25 26 27
		return ExtensionsInput.ID;
	}

	getName(): string {
J
Joao Moreno 已提交
28
		return this.extension.displayName;
J
Joao Moreno 已提交
29 30 31
	}

	matches(other: any): boolean {
J
Joao Moreno 已提交
32
		if (!(other instanceof ExtensionsInput)) {
J
Joao Moreno 已提交
33 34 35
			return false;
		}

J
Joao Moreno 已提交
36
		const otherExtensionInput = other as ExtensionsInput;
J
Joao Moreno 已提交
37 38 39

		// TODO@joao is this correct?
		return this.extension === otherExtensionInput.extension;
J
Joao Moreno 已提交
40 41
	}

J
Joao Moreno 已提交
42 43 44
	resolve(refresh?: boolean): TPromise<any> {
		return TPromise.as(null);
	}
J
Joao Moreno 已提交
45
}