diff --git a/src/vs/base/browser/ui/tree/abstractTree.ts b/src/vs/base/browser/ui/tree/abstractTree.ts index 16d9f2d0ae6e26172b300fd17b9465b7c6daeedb..904702b3e625c6169fd0efaeebf69b650a05604f 100644 --- a/src/vs/base/browser/ui/tree/abstractTree.ts +++ b/src/vs/base/browser/ui/tree/abstractTree.ts @@ -11,9 +11,8 @@ import { append, $, toggleClass } from 'vs/base/browser/dom'; import { Event, Relay, chain } from 'vs/base/common/event'; import { StandardKeyboardEvent } from 'vs/base/browser/keyboardEvent'; import { KeyCode } from 'vs/base/common/keyCodes'; -import { ITreeModel, ITreeNode, ITreeRenderer } from 'vs/base/browser/ui/tree/tree'; +import { ITreeModel, ITreeNode, ITreeRenderer, ITreeModelOptions } from 'vs/base/browser/ui/tree/tree'; import { ISpliceable } from 'vs/base/common/sequence'; -import { IIndexTreeModelOptions } from 'vs/base/browser/ui/tree/indexTreeModel'; export function createComposedTreeListOptions(options?: IListOptions): IListOptions { if (!options) { @@ -168,7 +167,7 @@ function isInputElement(e: HTMLElement): boolean { return e.tagName === 'INPUT' || e.tagName === 'TEXTAREA'; } -export interface ITreeOptions extends IListOptions, IIndexTreeModelOptions { } +export interface ITreeOptions extends IListOptions, ITreeModelOptions { } export interface ITreeEvent extends IListEvent> { } export interface ITreeContextMenuEvent extends IListContextMenuEvent> { } diff --git a/src/vs/base/browser/ui/tree/indexTreeModel.ts b/src/vs/base/browser/ui/tree/indexTreeModel.ts index 695a145e421cfba585933302e83bd266a2ec2add..8e0a5a7842e9bca0f7d80ed50b4ce393170ecfde 100644 --- a/src/vs/base/browser/ui/tree/indexTreeModel.ts +++ b/src/vs/base/browser/ui/tree/indexTreeModel.ts @@ -7,7 +7,7 @@ import { ISpliceable } from 'vs/base/common/sequence'; import { Iterator, ISequence } from 'vs/base/common/iterator'; import { Emitter, Event, EventBufferer } from 'vs/base/common/event'; import { tail2 } from 'vs/base/common/arrays'; -import { ITreeFilterDataResult, TreeVisibility, ITreeFilter, ITreeModel, ITreeNode, ITreeElement } from 'vs/base/browser/ui/tree/tree'; +import { ITreeFilterDataResult, TreeVisibility, ITreeFilter, ITreeModel, ITreeNode, ITreeElement, ITreeModelOptions } from 'vs/base/browser/ui/tree/tree'; interface IMutableTreeNode extends ITreeNode { readonly parent: IMutableTreeNode | undefined; @@ -38,10 +38,6 @@ function getVisibleState(visibility: boolean | TreeVisibility): TreeVisibility { } } -export interface IIndexTreeModelOptions { - filter?: ITreeFilter; -} - export class IndexTreeModel implements ITreeModel { private root: IMutableTreeNode = { @@ -66,7 +62,7 @@ export class IndexTreeModel implements ITreeModel; - constructor(private list: ISpliceable>, options: IIndexTreeModelOptions = {}) { + constructor(private list: ISpliceable>, options: ITreeModelOptions = {}) { this.filter = options.filter; } diff --git a/src/vs/base/browser/ui/tree/objectTreeModel.ts b/src/vs/base/browser/ui/tree/objectTreeModel.ts index 54d40157a641e15ee24d6df026463ffa4162f0ee..3d0a69872f48c3685d773e5e35f62f6472c9b660 100644 --- a/src/vs/base/browser/ui/tree/objectTreeModel.ts +++ b/src/vs/base/browser/ui/tree/objectTreeModel.ts @@ -7,11 +7,9 @@ import { ISpliceable } from 'vs/base/common/sequence'; import { Iterator, ISequence } from 'vs/base/common/iterator'; -import { IndexTreeModel, IIndexTreeModelOptions } from 'vs/base/browser/ui/tree/indexTreeModel'; +import { IndexTreeModel } from 'vs/base/browser/ui/tree/indexTreeModel'; import { Event } from 'vs/base/common/event'; -import { ITreeModel, ITreeNode, ITreeElement } from 'vs/base/browser/ui/tree/tree'; - -export interface IObjectTreeModelOptions extends IIndexTreeModelOptions { } +import { ITreeModel, ITreeNode, ITreeElement, ITreeModelOptions } from 'vs/base/browser/ui/tree/tree'; export class ObjectTreeModel, TFilterData = void> implements ITreeModel { @@ -23,7 +21,7 @@ export class ObjectTreeModel, TFilterData = void> imp get size(): number { return this.nodes.size; } - constructor(list: ISpliceable>, options: IObjectTreeModelOptions = {}) { + constructor(list: ISpliceable>, options: ITreeModelOptions = {}) { this.model = new IndexTreeModel(list, options); this.onDidChangeCollapseState = this.model.onDidChangeCollapseState; this.onDidChangeRenderNodeCount = this.model.onDidChangeRenderNodeCount; diff --git a/src/vs/base/browser/ui/tree/tree.ts b/src/vs/base/browser/ui/tree/tree.ts index 8c8956f0eb575d56cfcc71834738b49886b768bc..f3fd7701877a5bb696918783e2419634e0c03289 100644 --- a/src/vs/base/browser/ui/tree/tree.ts +++ b/src/vs/base/browser/ui/tree/tree.ts @@ -109,4 +109,8 @@ export interface ITreeModel { export interface ITreeRenderer extends IListRenderer, TTemplateData> { renderTwistie?(element: T, twistieElement: HTMLElement): boolean; onDidChangeTwistieState?: Event; +} + +export interface ITreeModelOptions { + filter?: ITreeFilter; } \ No newline at end of file