{"version":3,"sources":["WinJS/js/ui/controls/treeview-winjs.ts"],"names":[],"mappings":"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","file":"treeview-winjs.js","sourcesContent":["module WinJS.UI {\r\n\r\n export class TreeView {\r\n\r\n\r\n private _element: HTMLElement\r\n public get element(): HTMLElement {\r\n return this._element;\r\n }\r\n\r\n\r\n private _itemDataSource: WinJS.UI.IListDataSource\r\n public get itemDataSource(): WinJS.UI.IListDataSource {\r\n return this._itemDataSource;\r\n }\r\n public set itemDataSource(value: WinJS.UI.IListDataSource) {\r\n //if (this._data) \r\n // this._removeDataListeners();\r\n\r\n this._itemDataSource = value || new WinJS.Binding.List().dataSource;\r\n this.attachItemsHandler();\r\n this.updateView();\r\n }\r\n\r\n\r\n private _itemTemplate: WinJS.Binding.Template\r\n public get itemTemplate(): WinJS.Binding.Template {\r\n return this._itemTemplate;\r\n }\r\n\r\n private _placeholderTemplate: WinJS.Binding.Template\r\n public get placeholderTemplate(): WinJS.Binding.Template {\r\n return this._placeholderTemplate;\r\n }\r\n\r\n\r\n\r\n private _id: string\r\n public get id(): string {\r\n return this._id;\r\n }\r\n\r\n private _pid: string\r\n public get pid(): string {\r\n return this._pid;\r\n }\r\n\r\n\r\n\r\n private _root: HTMLUListElement;\r\n\r\n\r\n private _reflowing: boolean;\r\n private _reflowQueue: Array;\r\n\r\n private _listBinding: IListBinding;\r\n\r\n private _listMap: Array;\r\n private _listHandles: IItemPromise>[];\r\n\r\n private _highlightEnabled: boolean = true;\r\n\r\n\r\n private _disposed: boolean;\r\n\r\n\r\n\r\n\r\n\r\n private _onItemSelected: EventListenerObject\r\n public get onItemSelected(): EventListenerObject {\r\n return this._onItemSelected;\r\n }\r\n public set onItemSelected(eventHandler: EventListenerObject) {\r\n if (this._onItemSelected) {\r\n this.removeEventListener(\"itemSelected\", this._onItemSelected);\r\n this._onItemSelected = null;\r\n }\r\n\r\n this._onItemSelected = eventHandler;\r\n addEventListener(\"itemSelected\", this._onItemSelected);\r\n }\r\n\r\n\r\n private _onItemInvoked: EventListenerObject\r\n public get onItemInvoked(): EventListenerObject {\r\n return this._onItemInvoked;\r\n }\r\n public set onItemInvoked(eventHandler: EventListenerObject) {\r\n if (this._onItemInvoked) {\r\n removeEventListener(\"itemInvoked\", this._onItemInvoked);\r\n this._onItemInvoked = null;\r\n }\r\n\r\n this._onItemInvoked = eventHandler;\r\n addEventListener(\"itemInvoked\", this._onItemInvoked);\r\n }\r\n\r\n private _onItemToggled: EventListenerObject\r\n public get onItemToggled(): EventListenerObject {\r\n return this._onItemToggled;\r\n }\r\n public set onItemToggled(eventHandler: EventListenerObject) {\r\n if (this._onItemToggled) {\r\n removeEventListener(\"itemToggled\", this._onItemToggled);\r\n this._onItemToggled = null;\r\n }\r\n\r\n this._onItemToggled = eventHandler;\r\n addEventListener(\"itemToggled\", this._onItemToggled);\r\n }\r\n\r\n private _onItemContextInvoked: EventListenerObject\r\n public get onItemContextInvoked(): EventListenerObject {\r\n return this._onItemContextInvoked;\r\n }\r\n public set onItemContextInvoked(eventHandler: EventListenerObject) {\r\n if (this._onItemContextInvoked) {\r\n removeEventListener(\"itemContext\", this._onItemContextInvoked);\r\n this._onItemContextInvoked = null;\r\n }\r\n\r\n this._onItemContextInvoked = eventHandler;\r\n addEventListener(\"itemContext\", this._onItemContextInvoked);\r\n }\r\n\r\n\r\n\r\n\r\n private _asyncWork: IPromise[] = [];\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n constructor(element: HTMLElement, options: any) {\r\n element = element || document.createElement(\"div\");\r\n options = options || {};\r\n\r\n this._disposed = false;\r\n\r\n if (!options.idMember)\r\n throw Error(\"Treeview requires an id member to be specified\");\r\n this._id = options.idMember;\r\n\r\n if (!options.pidMember)\r\n throw Error(\"Treeview requires a parent id member to be specified\");\r\n this._pid = options.pidMember;\r\n\r\n\r\n element.winControl = this;\r\n element.classList.add('win-disposable');\r\n\r\n\r\n this._element = element;\r\n\r\n if (!options.itemDataSource) {\r\n var list = new WinJS.Binding.List();\r\n this._itemDataSource = list.dataSource;\r\n }\r\n else {\r\n this._itemDataSource = options.itemDataSource;\r\n }\r\n\r\n\r\n if (!options.placeholderTemplate)\r\n throw Error(\"Treeview requires a place holder template to be specified\");\r\n this._placeholderTemplate = options.placeholderTemplate.winControl;\r\n\r\n\r\n if (!options.itemTemplate)\r\n throw Error(\"Treeview requires an item template to be specified\");\r\n this._itemTemplate = options.itemTemplate.winControl;\r\n\r\n\r\n if (options.highlightEnabled === false)\r\n this._highlightEnabled = options.highlightEnabled;\r\n\r\n this._reflowing = false;\r\n this._reflowQueue = [];\r\n\r\n this._listHandles = [];\r\n this._listMap = [];\r\n\r\n this.attachEvents();\r\n this.attachItemsHandler();\r\n\r\n this.updateView();\r\n\r\n //WinJS.UI.setOptions(this, options);\r\n //WinJS.UI.setControl(this._element, this); \r\n }\r\n\r\n\r\n\r\n private dispatchEvent = (name: string, id: string, itemPromise: IItemPromise) => {\r\n var event;\r\n try {\r\n event = new CustomEvent(name, {\r\n bubbles: true,\r\n cancelable: true,\r\n detail: {\r\n id: id,\r\n itemPromise: itemPromise\r\n }\r\n });\r\n } catch (e) {\r\n event = document.createEvent('CustomEvent');\r\n event.initCustomEvent(name, true, true, { id: id, itemPromise: itemPromise });\r\n }\r\n\r\n this.element.dispatchEvent(event);\r\n }\r\n\r\n\r\n\r\n private detachEvents = () => {\r\n //TODO\r\n }\r\n\r\n private attachEvents = () => {\r\n\r\n var modeHandler = (eventName: string, caseSensitive?: boolean, capture?: boolean) => {\r\n return {\r\n capture: capture,\r\n name: (caseSensitive ? eventName : eventName.toLowerCase()),\r\n handler: (eventObject) => {\r\n var name = \"on\" + eventName;\r\n if (!this._disposed && this[name]) {\r\n this[name](eventObject);\r\n }\r\n }\r\n };\r\n }\r\n\r\n var events = [\r\n //modeHandler(\"PointerDown\"),\r\n modeHandler(\"click\", false),\r\n //modeHandler(\"PointerUp\"),\r\n //modeHandler(\"LostPointerCapture\"),\r\n //modeHandler(\"MSHoldVisual\", true),\r\n //modeHandler(\"PointerCancel\", true),\r\n //modeHandler(\"DragStart\"),\r\n //modeHandler(\"DragOver\"),\r\n //modeHandler(\"DragEnter\"),\r\n //modeHandler(\"DragLeave\"),\r\n //modeHandler(\"Drop\"),\r\n modeHandler(\"contextmenu\")\r\n ];\r\n events.forEach((eventHandler) => {\r\n this._element.addEventListener(eventHandler.name, eventHandler.handler, !!eventHandler.capture);\r\n });\r\n }\r\n\r\n\r\n\r\n private detachItemsHandler = () => {\r\n // TODO\r\n }\r\n\r\n private attachItemsHandler = () => {\r\n\r\n var notificationHandler: IListNotificationHandler = {\r\n\r\n beginNotifications: function TreeView_beginNotifications() {\r\n },\r\n\r\n endNotifications: function TreeView_endNotifications() {\r\n },\r\n\r\n\r\n changed: function ListView_changed(newItem: IItem, oldItem: IItem) {\r\n if (this.isDisposed) { return; }\r\n\r\n //that._createUpdater();\r\n\r\n //var elementInfo = that._updater.elements[uniqueID(oldItem)];\r\n //if (elementInfo) {\r\n // var selected = that.selection._isIncluded(elementInfo.index);\r\n // if (selected) {\r\n // that._updater.updateDrag = true;\r\n // }\r\n\r\n // if (oldItem !== newItem) {\r\n // if (that._tabManager.childFocus === oldItem || that._updater.newFocusedItem === oldItem) {\r\n // that._updater.newFocusedItem = newItem;\r\n // that._tabManager.childFocus = null;\r\n // }\r\n\r\n // if (elementInfo.itemBox) {\r\n // _ElementUtilities.addClass(newItem, _Constants._itemClass);\r\n // that._setupAriaSelectionObserver(newItem);\r\n\r\n // var next = oldItem.nextElementSibling;\r\n // elementInfo.itemBox.removeChild(oldItem);\r\n // elementInfo.itemBox.insertBefore(newItem, next);\r\n // }\r\n\r\n // that._setAriaSelected(newItem, selected);\r\n // that._view.items.setItemAt(elementInfo.newIndex, {\r\n // element: newItem,\r\n // itemBox: elementInfo.itemBox,\r\n // container: elementInfo.container,\r\n // itemsManagerRecord: elementInfo.itemsManagerRecord\r\n // });\r\n // delete that._updater.elements[uniqueID(oldItem)];\r\n // _Dispose._disposeElement(oldItem);\r\n // that._updater.elements[uniqueID(newItem)] = {\r\n // item: newItem,\r\n // container: elementInfo.container,\r\n // itemBox: elementInfo.itemBox,\r\n // index: elementInfo.index,\r\n // newIndex: elementInfo.newIndex,\r\n // itemsManagerRecord: elementInfo.itemsManagerRecord\r\n // };\r\n // } else if (elementInfo.itemBox && elementInfo.container) {\r\n // _ItemEventsHandler._ItemEventsHandler.renderSelection(elementInfo.itemBox, newItem, selected, true);\r\n // _ElementUtilities[selected ? \"addClass\" : \"removeClass\"](elementInfo.container, _Constants._selectedClass);\r\n // }\r\n // that._updater.changed = true;\r\n //}\r\n //for (var i = 0, len = that._notificationHandlers.length; i < len; i++) {\r\n // that._notificationHandlers[i].changed(newItem, oldItem);\r\n //}\r\n //that._writeProfilerMark(\"changed,info\");\r\n },\r\n\r\n countChanged: function TreeView_countChanged(newCount: number, oldCount: number) {\r\n\r\n },\r\n\r\n\r\n //updateAffectedRange: function TreeView_updateAffectedRange(newerRange) {\r\n // //that._itemsCount().then(function (count) {\r\n // // // When we receive insertion notifications before all of the containers have\r\n // // // been created and the affected range is beyond the container range, the\r\n // // // affected range indices will not correspond to the indices of the containers\r\n // // // created by updateContainers. In this case, start the affected range at the end\r\n // // // of the containers so that the affected range includes any containers that get\r\n // // // appended due to this batch of notifications.\r\n // // var containerCount = that._view.containers ? that._view.containers.length : 0;\r\n // // newerRange.start = Math.min(newerRange.start, containerCount);\r\n\r\n // // that._affectedRange.add(newerRange, count);\r\n // //});\r\n // //that._createUpdater();\r\n // //that._updater.changed = true;\r\n //},\r\n\r\n indexChanged: function TreeView_indexChanged(handle: string, newIndex: number, oldIndex: number) {\r\n // We should receive at most one indexChanged notification per oldIndex\r\n // per notification cycle.\r\n if (this.isDisposed) { return; }\r\n\r\n //that._createUpdater();\r\n\r\n //if (item) {\r\n // var itemObject = that._itemsManager.itemObject(item);\r\n // if (itemObject) {\r\n // that._groupFocusCache.updateItemIndex(itemObject.key, newIndex);\r\n // }\r\n\r\n // var elementInfo = that._updater.elements[uniqueID(item)];\r\n // if (elementInfo) {\r\n // elementInfo.newIndex = newIndex;\r\n // that._updater.changed = true;\r\n // }\r\n // that._updater.itemsMoved = true;\r\n //}\r\n //if (that._currentMode()._dragging && that._currentMode()._draggingUnselectedItem && that._currentMode()._dragInfo._isIncluded(oldIndex)) {\r\n // that._updater.newDragInfo = new _SelectionManager._Selection(that, [{ firstIndex: newIndex, lastIndex: newIndex }]);\r\n // that._updater.updateDrag = true;\r\n //}\r\n\r\n //if (that._updater.oldFocus.type !== _UI.ObjectType.groupHeader && that._updater.oldFocus.index === oldIndex) {\r\n // that._updater.newFocus.index = newIndex;\r\n // that._updater.changed = true;\r\n //}\r\n\r\n //if (that._updater.oldSelectionPivot === oldIndex) {\r\n // that._updater.newSelectionPivot = newIndex;\r\n // that._updater.changed = true;\r\n //}\r\n\r\n //var range = that._updater.selectionFirst[oldIndex];\r\n //if (range) {\r\n // range.newFirstIndex = newIndex;\r\n // that._updater.changed = true;\r\n // that._updater.selectionChanged = true;\r\n // that._updater.updateDrag = true;\r\n //}\r\n //range = that._updater.selectionLast[oldIndex];\r\n //if (range) {\r\n // range.newLastIndex = newIndex;\r\n // that._updater.changed = true;\r\n // that._updater.selectionChanged = true;\r\n // that._updater.updateDrag = true;\r\n //}\r\n },\r\n\r\n inserted: (itemPromise: IItemPromise, previousHandle: string, nextHandle: string) => {\r\n if (this._disposed)\r\n return;\r\n\r\n if (this._listHandles[itemPromise.handle] != null)\r\n return;\r\n\r\n itemPromise.done((item: IItem) => {\r\n\r\n this._itemTemplate.render(item.data).done((element) => {\r\n\r\n element.classList.add('win-node-object');\r\n var id = this.addNode(item.data[this._id], item.data[this._pid], element);\r\n\r\n this._listHandles[itemPromise.handle] = itemPromise;\r\n this._listMap[id] = itemPromise.handle\r\n\r\n console.log(\"treeview-winjs: node added\");\r\n });\r\n });\r\n itemPromise.retain();\r\n\r\n if (this._itemDataSource.list.length > 0) {\r\n var placeholder = this._root.querySelector(\".win-placeholder\");\r\n\r\n if (placeholder)\r\n placeholder.parentNode.removeChild(placeholder);\r\n }\r\n\r\n\r\n },\r\n\r\n removed: (handle: string, mirage: boolean) => {\r\n if (this._disposed) { return; }\r\n\r\n\r\n var itemPromise = >>this._listHandles[handle];\r\n itemPromise.done((item: IItem) => {\r\n this.removeNode(item.data[this._id]);\r\n\r\n // TODO removing a parent node will orphan its children and create a memory leak\r\n // should remove from listmap too \r\n //this._listHandles[itemPromise.handle] = itemPromise;\r\n //this._listMap[id] = itemPromise.handle\r\n\r\n console.log(\"treeview-winjs: node removed\");\r\n })\r\n itemPromise.release();\r\n\r\n\r\n if (this._itemDataSource.list.length == 0) {\r\n var placeholder = this._root.querySelector(\".win-placeholder\");\r\n\r\n if (!placeholder)\r\n this._placeholderTemplate.render({})\r\n .then((itemElement) => {\r\n itemElement.classList.add(\"win-placeholder\");\r\n this._root.appendChild(itemElement);\r\n });\r\n }\r\n\r\n },\r\n\r\n\r\n moved: function TreeView_moved(item: IItemPromise, previousHandle: string, nextHandle: string) {\r\n if (this.isDisposed) { return; }\r\n\r\n //that._createUpdater();\r\n\r\n //that._updater.movesCount++;\r\n //if (item) {\r\n // that._updater.itemsMoved = true;\r\n\r\n // var elementInfo = that._updater.elements[uniqueID(item)];\r\n // if (elementInfo) {\r\n // elementInfo.moved = true;\r\n // }\r\n //}\r\n\r\n //var index = that._updater.selectionHandles[itemPromise.handle];\r\n //if (index === +index) {\r\n // that._updater.updateDrag = true;\r\n // that._updater.selectionChanged = true;\r\n\r\n // var firstRange = that._updater.selectionFirst[index],\r\n // lastRange = that._updater.selectionLast[index],\r\n // range = firstRange || lastRange;\r\n\r\n // if (range && range.oldFirstIndex !== range.oldLastIndex) {\r\n // delete that._updater.selectionFirst[range.oldFirstIndex];\r\n // delete that._updater.selectionLast[range.oldLastIndex];\r\n // that._updater.changed = true;\r\n // }\r\n //}\r\n //that._writeProfilerMark(\"moved(\" + index + \"),info\");\r\n },\r\n\r\n //reload: function ListView_reload() {\r\n // if (this.isDisposed) { return; }\r\n\r\n // //that._processReload();\r\n //},\r\n\r\n\r\n itemAvailable: function (item: IItem) {\r\n }\r\n\r\n };\r\n\r\n\r\n if (this._itemDataSource) {\r\n Object.keys(this._listHandles).forEach((key) => {\r\n this._listHandles[key].release()\r\n });\r\n }\r\n\r\n this._listBinding = this._itemDataSource.createListBinding(notificationHandler);\r\n\r\n\r\n function statusChanged(eventObject) {\r\n }\r\n\r\n if (this._itemDataSource.list.addEventListener) {\r\n this._itemDataSource.list.addEventListener(\"statuschanged\", statusChanged, false);\r\n }\r\n }\r\n\r\n\r\n\r\n private updateView = () => {\r\n\r\n WinJS.Promise.join(this._asyncWork)\r\n .then(() => {\r\n console.log(\"draw cleared\");\r\n this._asyncWork = []\r\n })\r\n .then(() => {\r\n\r\n console.log(\"draw started\");\r\n\r\n WinJS.Utilities.empty(this._element);\r\n\r\n var root = document.createElement('ul');\r\n root.classList.add('win-root', 'win-node-container');\r\n\r\n this._element.appendChild(root);\r\n this._root = root;\r\n\r\n var itemsCount = this._itemDataSource.list.length;\r\n if (itemsCount > 0) {\r\n\r\n for (var i = 0; i < itemsCount; i++) {\r\n this._asyncWork.push(\r\n ((itemPromise: IItemPromise): IPromise => {\r\n\r\n return itemPromise.retain()\r\n .then((item: IItem) => {\r\n var itemElement = this._itemTemplate.render(item.data);\r\n return WinJS.Promise.join({ itemElement, item });\r\n })\r\n .then((result: { itemElement: HTMLElement, item: IItem }) => {\r\n result.itemElement.classList.add('win-node-object');\r\n var id = this.addNode(result.item.data[this._id], result.item.data[this._pid], result.itemElement);\r\n\r\n this._listHandles[itemPromise.handle] = itemPromise;\r\n this._listMap[id] = itemPromise.handle;\r\n\r\n console.log(\"treeview-winjs: node added\");\r\n });\r\n\r\n })(this._listBinding.fromIndex(i)));\r\n }\r\n\r\n console.log(\"draw added \" + this._asyncWork.length);\r\n\r\n }\r\n else {\r\n\r\n this._placeholderTemplate.render({})\r\n .then((itemElement) => {\r\n itemElement.classList.add(\"win-placeholder\");\r\n root.appendChild(itemElement);\r\n });\r\n\r\n console.log(\"draw empty \");\r\n\r\n }\r\n\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n private getNodeContainer(id: string): HTMLElement {\r\n var container;\r\n\r\n if (id) {\r\n var pnode = this.getNode(id);\r\n if (!(container = WinJS.Utilities.query('ul', pnode)[0])) {\r\n var cnode = document.createElement('ul');\r\n cnode.classList.add('win-node-container');\r\n\r\n container = pnode.appendChild(cnode);\r\n }\r\n } else {\r\n container = this._root;\r\n }\r\n\r\n return container;\r\n }\r\n\r\n public getNode(id: string): HTMLElement {\r\n var node;\r\n if (id) {\r\n node = WinJS.Utilities.query(\"[data-win-treeview-id='\" + id + \"']\", this._element).get(0);\r\n\r\n } else {\r\n node = this._root;\r\n }\r\n\r\n return node;\r\n }\r\n\r\n\r\n\r\n private measure(element: HTMLElement): number {\r\n var clone = element.cloneNode(true);\r\n clone.style.visibility = \"hidden\";\r\n clone.style.maxHeight = \"none\";\r\n element.parentElement.appendChild(clone);\r\n var height = clone.clientHeight;\r\n element.parentElement.removeChild(clone);\r\n\r\n return height;\r\n }\r\n\r\n private queueReflow(id: string, collapsing?: boolean) {\r\n\r\n var reflow = (id: string, collapsing?: boolean) => {\r\n\r\n var nodeContainer = this.getNodeContainer(id);\r\n\r\n if (!collapsing)\r\n var height = this.measure(nodeContainer);\r\n else\r\n var height = nodeContainer.clientHeight;\r\n\r\n return WinJS.UI.executeTransition(nodeContainer, {\r\n property: \"max-height\",\r\n delay: 0,\r\n duration: 200,\r\n timing: \"cubic-bezier(0.1, 0.9, 0.2, 1)\",\r\n from: !collapsing ? \"0px\" : height + \"px\",\r\n to: !collapsing ? height + \"px\" : \"0px\"\r\n }).then(() => {\r\n if (!collapsing)\r\n nodeContainer.style.maxHeight = \"none\";\r\n }).done(() => {\r\n this._reflowing = this._reflowQueue.length > 0\r\n\r\n if (this._reflowQueue.length > 0) {\r\n var queue = this._reflowQueue.shift();\r\n reflow(queue.id, queue.collapsing);\r\n }\r\n });\r\n }\r\n\r\n if (this._reflowing)\r\n this._reflowQueue.push({ id: id, collapsing: collapsing });\r\n else {\r\n this._reflowing = true;\r\n reflow(id, collapsing);\r\n }\r\n }\r\n\r\n\r\n\r\n private highlight(id: string) {\r\n var node = this.getNode(id);\r\n\r\n if (!node.classList.contains('node-highlighted')) {\r\n WinJS.Utilities.query(\"li.win-node\", this._element).forEach((node) => {\r\n node.classList.remove('node-highlighted');\r\n node.style.cssText = \"\";\r\n });\r\n\r\n if (!this._highlightEnabled)\r\n return;\r\n\r\n var offset = WinJS.Utilities.getPosition(node).left - WinJS.Utilities.getPosition(this._root).left;\r\n node.style.marginLeft = -offset + \"px\";\r\n node.style.paddingLeft = offset + \"px\";\r\n\r\n\r\n node.classList.add('node-highlighted');\r\n }\r\n }\r\n\r\n public select(id) {\r\n var node = this.getNode(id);\r\n this.highlight(id);\r\n\r\n if (!node.classList.contains('node-selected')) {\r\n WinJS.Utilities.query('li.win-node', this._element).forEach((node) => {\r\n node.classList.remove('node-selected');\r\n });\r\n\r\n node.classList.add('node-selected');\r\n this.dispatchEvent('itemSelected', id, this._listHandles[this._listMap[node.id]]);\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n\r\n private onclick = (event: MouseEvent) => {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n\r\n var element = event.target;\r\n if (WinJS.Utilities.hasClass(element, 'win-node-toggle')) {\r\n var id = element.parentElement.getAttribute('data-win-treeview-id');\r\n this.toggle(id);\r\n\r\n //var state = this.getNode(id).classList.contains('closed') ? 'open' : 'close';\r\n\r\n //this.dispatchEvent('itemToggled', id, this._listHandles[this._listMap[element.id]]);\r\n }\r\n else if (WinJS.Utilities.hasClass(element, 'win-node')) {\r\n var id = element.getAttribute('data-win-treeview-id');\r\n this.select(id);\r\n this.dispatchEvent('itemInvoked', id, this._listHandles[this._listMap[element.id]]);\r\n }\r\n else {\r\n while ((element = element.parentElement) && !element.classList.contains('win-node'));\r\n if (element) {\r\n var id = element.getAttribute('data-win-treeview-id');\r\n this.select(id);\r\n this.dispatchEvent('itemInvoked', id, this._listHandles[this._listMap[element.id]]);\r\n }\r\n }\r\n }\r\n\r\n private oncontextmenu = (event: MouseEvent) => {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n\r\n var element = event.target;\r\n if (WinJS.Utilities.hasClass(element, 'win-node')) {\r\n var id = element.getAttribute('data-win-treeview-id');\r\n this.select(id);\r\n this.dispatchEvent('itemContext', id, this._listHandles[this._listMap[element.id]]);\r\n\r\n }\r\n else {\r\n while ((element = element.parentElement) && !element.classList.contains('win-node'));\r\n if (element) {\r\n var id = element.getAttribute('data-win-treeview-id');\r\n this.select(id);\r\n this.dispatchEvent('itemContext', id, this._listHandles[this._listMap[element.id]]);\r\n }\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n private addNode(id: any, pid: any, element: HTMLElement) {\r\n\r\n if (!id)\r\n throw new Error(\"All treeview data elements must have an id\");\r\n\r\n var nodecontainer = this.getNodeContainer(pid);\r\n\r\n var node = document.createElement('li');\r\n node.classList.add('win-node');\r\n node.setAttribute('data-win-treeview-id', id);\r\n\r\n\r\n var span = document.createElement('span');\r\n span.classList.add('win-node-toggle');\r\n\r\n node.appendChild(span);\r\n node.appendChild(element);\r\n\r\n nodecontainer.appendChild(node);\r\n\r\n\r\n if (nodecontainer !== this._root)\r\n nodecontainer.parentElement.classList.add('win-has-children');\r\n\r\n var uniqueID = WinJS.Utilities._uniqueID(node);\r\n node.id = uniqueID;\r\n return uniqueID;\r\n\r\n //this.dispatch('add', id);\r\n }\r\n\r\n private removeNode(id: string) {\r\n var node = this.getNode(id);\r\n\r\n if (node) {\r\n var nodecontainer = node.parentElement;\r\n nodecontainer.removeChild(node);\r\n nodecontainer.parentElement.classList.toggle('node-has-children', !!nodecontainer.children.length);\r\n }\r\n\r\n //this.dispatch('remove', id);\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n public open(id: string) {\r\n var node = this.getNode(id);\r\n this.queueReflow(id);\r\n\r\n node.classList.remove('closed');\r\n }\r\n\r\n public close(id: string) {\r\n var node = this.getNode(id);\r\n this.queueReflow(id, true);\r\n\r\n node.classList.add('closed');\r\n }\r\n\r\n public toggle(id: string) {\r\n // call either the open or close function depending on what we have toggled\r\n this[this.getNode(id).classList.contains('closed') ? 'open' : 'close'](id);\r\n }\r\n\r\n\r\n\r\n\r\n\r\n public addEventListener = function (type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean) {\r\n this.element.addEventListener(type, listener, useCapture);\r\n };\r\n\r\n public removeEventListener = function (type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean) {\r\n this.element.removeEventListener(type, listener, useCapture);\r\n };\r\n\r\n\r\n\r\n public dispose = () => {\r\n if (!this._disposed) {\r\n this._disposed = true;\r\n\r\n WinJS.Utilities.disposeSubTree(this.element);\r\n\r\n this.onItemSelected = null;\r\n this.onItemContextInvoked = null;\r\n this.onItemInvoked = null;\r\n }\r\n }\r\n\r\n }\r\n\r\n\r\n //WinJS.Class.mix(WinJS.UI.TreeView, WinJS.Utilities.createEventProperties(\"opened\", \"closed\"), WinJS.UI.DOMEventMixin);\r\n WinJS.Utilities.markSupportedForProcessing(WinJS.UI.TreeView);\r\n\r\n\r\n WinJS.Namespace.define(\"WinJS.UI\", {\r\n TreeView: WinJS.UI.TreeView\r\n });\r\n}\r\n\r\n\r\n"],"sourceRoot":"C:\\Collections\\Test\\Trueview\\Source\\ISL.Trueview.Web/"}