From fc90ee911d25cfba9a6611fcb45a92993ebcb710 Mon Sep 17 00:00:00 2001 From: David Sehnal <david.sehnal@gmail.com> Date: Mon, 18 Feb 2019 12:45:12 +0100 Subject: [PATCH] mol-state: isLocked transform prop support --- src/mol-plugin/ui/state-tree.tsx | 8 +++----- src/mol-state/transform.ts | 4 +++- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/mol-plugin/ui/state-tree.tsx b/src/mol-plugin/ui/state-tree.tsx index 87123f35a..59a5fc8c2 100644 --- a/src/mol-plugin/ui/state-tree.tsx +++ b/src/mol-plugin/ui/state-tree.tsx @@ -177,10 +177,6 @@ class StateTreeNodeLabel extends PluginComponent<{ nodeRef: string, state: State const children = this.props.state.tree.children.get(this.props.nodeRef); const cellState = this.props.state.cellStates.get(this.props.nodeRef); - const remove = <button onClick={this.remove} className='msp-btn msp-btn-link msp-tree-remove-button'> - <span className='msp-icon msp-icon-remove' /> - </button>; - const visibility = <button onClick={this.toggleVisible} className={`msp-btn msp-btn-link msp-tree-visibility${cellState.isHidden ? ' msp-tree-visibility-hidden' : ''}`}> <span className='msp-icon msp-icon-visual-visibility' /> </button>; @@ -190,7 +186,9 @@ class StateTreeNodeLabel extends PluginComponent<{ nodeRef: string, state: State {children.size > 0 && <button onClick={this.toggleExpanded} className='msp-btn msp-btn-link msp-tree-toggle-exp-button'> <span className={`msp-icon msp-icon-${cellState.isCollapsed ? 'expand' : 'collapse'}`} /> </button>} - {remove}{visibility} + {!cell.transform.props.isLocked && <button onClick={this.remove} className='msp-btn msp-btn-link msp-tree-remove-button'> + <span className='msp-icon msp-icon-remove' /> + </button>}{visibility} </div> } } \ No newline at end of file diff --git a/src/mol-state/transform.ts b/src/mol-state/transform.ts index 86edad5a9..dea70d4da 100644 --- a/src/mol-state/transform.ts +++ b/src/mol-state/transform.ts @@ -25,7 +25,9 @@ export namespace Transform { export interface Props { tag?: string isGhost?: boolean, - isBinding?: boolean + isBinding?: boolean, + // determine if the corresponding cell can be deleted by the user. + isLocked?: boolean } export interface Options { -- GitLab