diff options
author | bobzel <zzzman@gmail.com> | 2020-08-19 00:12:50 -0400 |
---|---|---|
committer | bobzel <zzzman@gmail.com> | 2020-08-19 00:12:50 -0400 |
commit | bf4baf81576cfd7363cccdd2526914f6afd59c98 (patch) | |
tree | 3b944f072d90012b03aa059c737853e50757ca7f /src/client/util/SelectionManager.ts | |
parent | a9f029cad5588ef127de753a4ee4ac0a8c739eb0 (diff) |
updated PropertiesButtons to work with selected documents in schemaViews
Diffstat (limited to 'src/client/util/SelectionManager.ts')
-rw-r--r-- | src/client/util/SelectionManager.ts | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/client/util/SelectionManager.ts b/src/client/util/SelectionManager.ts index 14d06b9b6..35b82cc30 100644 --- a/src/client/util/SelectionManager.ts +++ b/src/client/util/SelectionManager.ts @@ -3,9 +3,7 @@ import { Doc, Opt } from "../../fields/Doc"; import { DocumentView } from "../views/nodes/DocumentView"; import { computedFn } from "mobx-utils"; import { List } from "../../fields/List"; -import { Scripting } from "./Scripting"; -import { DocumentManager } from "./DocumentManager"; -import { MobileDocumentUploadContent } from "../../server/Message"; +import { CollectionSchemaView } from "../views/collections/CollectionSchemaView"; export namespace SelectionManager { @@ -14,10 +12,12 @@ export namespace SelectionManager { @observable IsDragging: boolean = false; SelectedDocuments: ObservableMap<DocumentView, boolean> = new ObservableMap(); @observable SelectedSchemaDocument: Doc | undefined; + @observable SelectedSchemaCollection: CollectionSchemaView | undefined; @action - SelectSchemaDoc(doc: Opt<Doc>) { + SelectSchemaDoc(collectionView: Opt<CollectionSchemaView>, doc: Opt<Doc>) { manager.SelectedSchemaDocument = doc; + manager.SelectedSchemaCollection = collectionView; } @action SelectDoc(docView: DocumentView, ctrlPressed: boolean): void { @@ -33,6 +33,7 @@ export namespace SelectionManager { } else if (!ctrlPressed && Array.from(manager.SelectedDocuments.entries()).length > 1) { Array.from(manager.SelectedDocuments.keys()).map(dv => dv !== docView && dv.props.whenActiveChanged(false)); manager.SelectedSchemaDocument = undefined; + manager.SelectedSchemaCollection = undefined; manager.SelectedDocuments.clear(); manager.SelectedDocuments.set(docView, true); } @@ -49,6 +50,7 @@ export namespace SelectionManager { } @action DeselectAll(): void { + manager.SelectedSchemaCollection = undefined; manager.SelectedSchemaDocument = undefined; Array.from(manager.SelectedDocuments.keys()).map(dv => dv.props.whenActiveChanged(false)); manager.SelectedDocuments.clear(); @@ -64,8 +66,8 @@ export namespace SelectionManager { export function SelectDoc(docView: DocumentView, ctrlPressed: boolean): void { manager.SelectDoc(docView, ctrlPressed); } - export function SelectSchemaDoc(document: Opt<Doc>): void { - manager.SelectSchemaDoc(document); + export function SelectSchemaDoc(colSchema: Opt<CollectionSchemaView>, document: Opt<Doc>): void { + manager.SelectSchemaDoc(colSchema, document); } // computed functions, such as used in IsSelected generate errors if they're called outside of a @@ -97,4 +99,7 @@ export namespace SelectionManager { export function SelectedSchemaDoc(): Doc | undefined { return manager.SelectedSchemaDocument; } + export function SelectedSchemaCollection(): CollectionSchemaView | undefined { + return manager.SelectedSchemaCollection; + } }
\ No newline at end of file |