From 31f7c3b24c573be2520a3ac3cb00e1eaca2d394e Mon Sep 17 00:00:00 2001 From: Andrea Gottsponer <ago@attr.ch> Date: Wed, 11 Dec 2019 11:49:18 +0100 Subject: [PATCH] - fix unchoose --- src/app/index.ts | 4 +++- src/lib/elements/images/MedsurfSprite.ts | 3 ++- src/lib/generators/InteractiveGenerator.ts | 9 ++++++--- src/lib/generators/SelftestGenerator.ts | 9 ++++++--- 4 files changed, 17 insertions(+), 8 deletions(-) diff --git a/src/app/index.ts b/src/app/index.ts index 1ae89d30..e036782a 100644 --- a/src/app/index.ts +++ b/src/app/index.ts @@ -10,6 +10,7 @@ import {Line} from "../lib/elements/connections/Line"; import {ImageNavigatorElement} from "../lib/elements/interactions/ImageNavigatorElement"; import {FillCollection} from "../lib/elements/collections/FillCollection"; import {LegendCollection, LegendItem} from "../lib/elements/collections/LegendCollection"; +import {MedsurfSprite} from "../lib"; const canvas = document.getElementById("medsurf_canvas") as HTMLCanvasElement; const width = canvas.width; @@ -232,8 +233,9 @@ PIXI.Renderer.registerPlugin('bla', bla); // IMAGES // BaseSprite // const image = new MedsurfSprite(app.renderer, canvas, PIXI.Texture.from("https://api.medsurf.stage.iml.unibe.ch/v1/file/slides/3893/image/1500x1514_80_eaaa24fd-e69e-491e-b576-fccab29c85a2.jpg")); + const image = new MedsurfSprite(app.renderer, canvas, PIXI.Texture.from("http://localhost:3000/v1/file/slide/2701,2701/image/1800x1800_80.jpeg")); // Tile BaseSprite - const image = new MedsurfTileSprite(app.renderer, canvas, 5800, "https://api.medsurf.stage.iml.unibe.ch:443/v1/file/slide/5800/image/", 29512, 20512); + // const image = new MedsurfTileSprite(app.renderer, canvas, 5800, "https://api.medsurf.stage.iml.unibe.ch:443/v1/file/slide/5800/image/", 29512, 20512); // Video // const image = new MedsurfSprite(app.renderer, canvas, PIXI.Texture.from("./assets/juldem.mp4")); diff --git a/src/lib/elements/images/MedsurfSprite.ts b/src/lib/elements/images/MedsurfSprite.ts index de1c3737..d231e029 100644 --- a/src/lib/elements/images/MedsurfSprite.ts +++ b/src/lib/elements/images/MedsurfSprite.ts @@ -266,7 +266,8 @@ export class MedsurfSprite extends BaseSprite { } protected _onLoaded(): void { - this._fitToScreen(this._canvas.width, this._canvas.height); + // TODO this not working + // this._fitToScreen(this._canvas.width, this._canvas.height); } protected setVisibleElements(): void { diff --git a/src/lib/generators/InteractiveGenerator.ts b/src/lib/generators/InteractiveGenerator.ts index 07b3da94..6d3ca3d7 100644 --- a/src/lib/generators/InteractiveGenerator.ts +++ b/src/lib/generators/InteractiveGenerator.ts @@ -52,9 +52,12 @@ export class InteractiveGenerator extends BaseGenerator { protected _chooseElement(event: PIXI.interaction.InteractionEvent, element: ImageObject): void { event.stopPropagation(); - this._targetFill.interactiveItems.push(element); - - // TODO check for lines + const index = this._targetFill.interactiveItems.findIndex((item: ImageObject) => item === element); + if (index > -1) { + this._targetFill.interactiveItems.splice(index, 1); + } else { + this._targetFill.interactiveItems.push(element); + } element.modeInteraction.changeMode("interactive_choosing", this._targetFill); } diff --git a/src/lib/generators/SelftestGenerator.ts b/src/lib/generators/SelftestGenerator.ts index 810426bf..75d8c8ec 100644 --- a/src/lib/generators/SelftestGenerator.ts +++ b/src/lib/generators/SelftestGenerator.ts @@ -48,9 +48,12 @@ export class SelftestGenerator extends BaseGenerator { protected _chooseElement(event: PIXI.interaction.InteractionEvent, element: ImageObject): void { event.stopPropagation(); - this.targetPositionPoint.selftestItems.push(element); - - // TODO check for lines + const index = this.targetPositionPoint.selftestItems.findIndex((item: ImageObject) => item === element); + if (index > -1) { + this.targetPositionPoint.selftestItems.splice(index, 1); + } else { + this.targetPositionPoint.selftestItems.push(element); + } element.modeInteraction.changeMode("selftest_choosing", this.targetPositionPoint); } -- GitLab