From 93ea759a71a9c41c64307c30d6e1add315a0a955 Mon Sep 17 00:00:00 2001 From: Alexander Rose <alex.rose@rcsb.org> Date: Mon, 17 Jun 2019 15:39:12 -0700 Subject: [PATCH] StateTreeSpine.current tweaks --- src/mol-state/state.ts | 4 ++-- src/mol-state/tree/spine.ts | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/mol-state/state.ts b/src/mol-state/state.ts index cbb5e4ae1..c11fc78d0 100644 --- a/src/mol-state/state.ts +++ b/src/mol-state/state.ts @@ -162,7 +162,7 @@ class State { return cell && cell.obj; } } finally { - this.spine.setCurrent(); + this.spine.current = undefined; if (updated) this.events.changed.next(); this.events.isUpdating.next(false); @@ -607,7 +607,7 @@ async function updateNode(ctx: UpdateContext, currentRef: Ref): Promise<UpdateNo throw new Error(`No suitable parent found for '${currentRef}'`); } - ctx.spine.setCurrent(current); + ctx.spine.current = current; const parent = parentCell.obj!; current.sourceRef = parentCell.transform.ref; diff --git a/src/mol-state/tree/spine.ts b/src/mol-state/tree/spine.ts index e623ec41a..9adc01e7c 100644 --- a/src/mol-state/tree/spine.ts +++ b/src/mol-state/tree/spine.ts @@ -18,14 +18,14 @@ interface StateTreeSpine { namespace StateTreeSpine { export class Impl implements StateTreeSpine { - private current: StateObjectCell | undefined = void 0; - setCurrent(cell?: StateObjectCell) { - this.current = cell; - } + private _current: StateObjectCell | undefined = void 0; + + get current() { return this._current; } + set current(cell: StateObjectCell | undefined) { this._current = cell; } getAncestorOfType<T extends StateObject.Ctor>(t: T): StateObject.From<T> | undefined { - if (!this.current) return void 0; - let cell = this.current; + if (!this._current) return void 0; + let cell = this._current; while (true) { cell = this.cells.get(cell.transform.parent)!; if (!cell.obj) return void 0; @@ -35,8 +35,8 @@ namespace StateTreeSpine { } getRootOfType<T extends StateObject.Ctor>(t: T): StateObject.From<T> | undefined { - if (!this.current) return void 0; - let cell = this.current; + if (!this._current) return void 0; + let cell = this._current; let ret: StateObjectCell | undefined = void 0; while (true) { cell = this.cells.get(cell.transform.parent)!; -- GitLab