Skip to content

Commit 144a706

Browse files
committed
Allow drag to empty tree
1 parent b503747 commit 144a706

File tree

5 files changed

+17
-2
lines changed

5 files changed

+17
-2
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
<a name="2.6.1"></a>
2+
# 2.6.1 (2016-01-03)
3+
* Added drop slot for empty tree
4+
15
<a name="2.6.0"></a>
26
# 2.6.0 (2016-01-01)
37
* Added index to node content template

lib/angular2-tree-component.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { NgModule } from '@angular/core';
22
import { CommonModule } from '@angular/common';
33

44
import { TREE_ACTIONS, IActionMapping, IActionHandler } from './models/tree-options.model';
5-
import { ITreeOptions } from './defs/api';
5+
import { ITreeOptions, IAllowDropFn } from './defs/api';
66
import { KEYS } from './constants/keys';
77
import { TreeModel } from './models/tree.model';
88
import { TreeNode } from './models/tree-node.model';
@@ -43,6 +43,7 @@ export {
4343
KEYS,
4444
IActionMapping,
4545
IActionHandler,
46+
IAllowDropFn,
4647
LoadingComponent,
4748
TreeComponent,
4849
TreeNodeComponent,

lib/components/tree.component.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import * as _ from 'lodash'
1616
providers: [TreeModel],
1717
styles: [
1818
'.tree-children { padding-left: 20px }',
19+
'.empty-tree-drop-slot .node-drop-slot { height: 20px; min-width: 100px }',
1920
`.tree {
2021
display: inline-block;
2122
cursor: pointer;
@@ -39,6 +40,12 @@ import * as _ from 'lodash'
3940
treeNodeFullTemplate: treeNodeFullTemplate
4041
}">
4142
</TreeNode>
43+
<TreeNodeDropSlot
44+
class="empty-tree-drop-slot"
45+
*ngIf="treeModel.isEmptyTree()"
46+
[dropIndex]="0"
47+
[node]="treeModel.virtualRoot">
48+
</TreeNodeDropSlot>
4249
</div>
4350
`
4451
})

lib/models/tree.model.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,9 @@ export class TreeModel implements ITreeModel {
132132
TreeModel.focusedTree = value ? this : null;
133133
}
134134

135+
isEmptyTree():boolean {
136+
return this.roots && this.roots.length === 0;
137+
}
135138

136139
private _treeNodeContentComponent:any;
137140
get treeNodeContentComponent() { return this._treeNodeContentComponent };

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "angular2-tree-component",
3-
"version": "2.6.0",
3+
"version": "2.6.1",
44
"description": "A simple yet powerful tree component for Angular2",
55
"author": "Adam Klein <adam@500tech.com>",
66
"homepage": "https://github.com/500tech/angular2-tree-component",

0 commit comments

Comments
 (0)