diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/client/views/collections/CollectionTreeView.tsx | 31 |
1 files changed, 17 insertions, 14 deletions
diff --git a/src/client/views/collections/CollectionTreeView.tsx b/src/client/views/collections/CollectionTreeView.tsx index bb1b49f4f..8b06d9ac4 100644 --- a/src/client/views/collections/CollectionTreeView.tsx +++ b/src/client/views/collections/CollectionTreeView.tsx @@ -33,8 +33,15 @@ class TreeView extends React.Component<TreeViewProps> { collapsed: boolean = false; delete = () => { - if (this) { - this.props.deleteDoc(this.props.document); + this.props.deleteDoc(this.props.document); + } + + + @action + remove = (document: Document) => { + var children = this.props.document.GetT<ListField<Document>>(KeyStore.Data, ListField); + if (children && children !== FieldWaiting) { + children.Data.splice(children.Data.indexOf(document), 1); } } @@ -85,15 +92,14 @@ class TreeView extends React.Component<TreeViewProps> { // check if this document is a collection if (children && children !== FieldWaiting) { - var subView = null; - - // render all children elements - let childrenElement = (children.Data.map(value => - <TreeView document={value} deleteDoc={() => console.log("test")} />) - ) + let subView; // if uncollapsed, then add the children elements if (!this.collapsed) { + // render all children elements + let childrenElement = (children.Data.map(value => + <TreeView document={value} deleteDoc={this.remove} />) + ) subView = <li key={this.props.document.Id} > {this.renderBullet(BulletType.Collapsible)} @@ -129,7 +135,7 @@ class TreeView extends React.Component<TreeViewProps> { export class CollectionTreeView extends CollectionViewBase { @action - remove(document: Document) { + remove = (document: Document) => { var children = this.props.Document.GetT<ListField<Document>>(KeyStore.Data, ListField); if (children && children !== FieldWaiting) { children.Data.splice(children.Data.indexOf(document), 1); @@ -146,7 +152,7 @@ export class CollectionTreeView extends CollectionViewBase { var children = this.props.Document.GetT<ListField<Document>>(KeyStore.Data, ListField); let childrenElement = !children || children === FieldWaiting ? (null) : (children.Data.map(value => - <TreeView document={value} key={value.Id} deleteDoc={(value) => this.remove(value)} />) + <TreeView document={value} key={value.Id} deleteDoc={this.remove} />) ) return ( @@ -154,10 +160,7 @@ export class CollectionTreeView extends CollectionViewBase { <h3> <EditableView contents={titleStr} height={72} GetValue={() => { - let title = this.props.Document.GetT<TextField>(KeyStore.Title, TextField); - if (title && title !== "<Waiting>") - return title.Data; - return ""; + return this.props.Document.Title; }} SetValue={(value: string) => { this.props.Document.SetData(KeyStore.Title, value, TextField); return true; |