提交 4c781f05 编写于 作者: J Joao Moreno

markers: tree element

上级 b368ea76
......@@ -36,7 +36,7 @@ import { mixin, deepClone } from 'vs/base/common/objects';
import { IWorkspaceFolder, IWorkspaceContextService } from 'vs/platform/workspace/common/workspace';
import { isAbsolute, join } from 'vs/base/common/paths';
import { ITreeContextMenuEvent } from 'vs/base/browser/ui/tree/abstractTree';
import { FilterData, FileResourceMarkersRenderer, Filter, VirtualDelegate, ResourceMarkersRenderer, MarkerRenderer, RelatedInformationRenderer } from 'vs/workbench/parts/markers/electron-browser/markersTreeViewer';
import { FilterData, FileResourceMarkersRenderer, Filter, VirtualDelegate, ResourceMarkersRenderer, MarkerRenderer, RelatedInformationRenderer, TreeElement } from 'vs/workbench/parts/markers/electron-browser/markersTreeViewer';
import { IContextMenuService } from 'vs/platform/contextview/browser/contextView';
import { Separator, ActionItem } from 'vs/base/browser/ui/actionbar/actionbar';
import { IMenuService, MenuId } from 'vs/platform/actions/common/actions';
......@@ -44,8 +44,6 @@ import { IKeybindingService } from 'vs/platform/keybinding/common/keybinding';
import { IKeyboardEvent } from 'vs/base/browser/keyboardEvent';
import { KeyCode } from 'vs/base/common/keyCodes';
type TreeElement = ResourceMarkers | Marker | RelatedInformation;
function createModelIterator(model: MarkersModel): Iterator<ITreeElement<TreeElement>> {
const resourcesIt = Iterator.fromArray(model.resourceMarkers);
......
......@@ -27,6 +27,8 @@ import { FilterOptions } from 'vs/workbench/parts/markers/electron-browser/marke
import { IMatch } from 'vs/base/common/filters';
import { Event } from 'vs/base/common/event';
export type TreeElement = ResourceMarkers | Marker | RelatedInformation;
interface IResourceMarkersTemplateData {
resourceLabel: ResourceLabel;
count: CountBadge;
......@@ -78,13 +80,13 @@ const enum TemplateId {
RelatedInformation = 'ri'
}
export class VirtualDelegate implements IListVirtualDelegate<ResourceMarkers | Marker | RelatedInformation> {
export class VirtualDelegate implements IListVirtualDelegate<TreeElement> {
getHeight(): number {
return 22;
}
getTemplateId(element: ResourceMarkers | Marker | RelatedInformation): string {
getTemplateId(element: TreeElement): string {
if (element instanceof ResourceMarkers) {
if ((element).resource.scheme === network.Schemas.file || (<ResourceMarkers>element).resource.scheme === network.Schemas.untitled) {
return TemplateId.FileResourceMarkers;
......@@ -326,11 +328,11 @@ export class RelatedInformationRenderer implements ITreeRenderer<RelatedInformat
}
}
export class Filter implements ITreeFilter<ResourceMarkers | Marker | RelatedInformation, FilterData> {
export class Filter implements ITreeFilter<TreeElement, FilterData> {
options = new FilterOptions();
filter(element: ResourceMarkers | Marker | RelatedInformation): TreeFilterResult<FilterData> {
filter(element: TreeElement): TreeFilterResult<FilterData> {
if (element instanceof ResourceMarkers) {
return this.filterResourceMarkers(element);
} else if (element instanceof Marker) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册