diff --git a/packages/core/examples/features/index.html b/packages/core/examples/features/main.html
similarity index 93%
rename from packages/core/examples/features/index.html
rename to packages/core/examples/features/main.html
index dce8fb1..9c35813 100644
--- a/packages/core/examples/features/index.html
+++ b/packages/core/examples/features/main.html
@@ -11,7 +11,7 @@
-
@@ -26,7 +26,7 @@
-
+
diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts
index ff91012..3712c12 100644
--- a/packages/core/src/index.ts
+++ b/packages/core/src/index.ts
@@ -89,19 +89,23 @@ class Core {
this[_renderer].render(this[_data], this[_helper].getConfig());
}
- selectElement(index: number): void {
+ selectElement(index: number, opts?: { useMode?: boolean }): void {
if (this[_data].elements[index]) {
const uuid = this[_data].elements[index].uuid;
- this[_mode] = Mode.SELECT_ELEMENT;
+ if (opts?.useMode === true) {
+ this[_mode] = Mode.SELECT_ELEMENT;
+ } else {
+ this[_mode] = Mode.NULL;
+ }
this[_selectedUUID] = uuid;
this.draw();
}
}
- selectElementByUUID(uuid: string): void {
+ selectElementByUUID(uuid: string, opts?: { useMode?: boolean }): void {
const index = this[_helper].getElementIndexByUUID(uuid);
if (typeof index === 'number' && index >= 0) {
- this.selectElement(index);
+ this.selectElement(index, opts);
}
}
@@ -229,7 +233,7 @@ class Core {
this[_selectedUUID] = uuid;
} else {
const [index, uuid] = this[_element].isPointInElement(point, this[_data]);
- this.selectElement(index);
+ this.selectElement(index, { useMode: true });
if (typeof uuid === 'string' && this[_coreEvent].has('screenSelectElement')) {
this[_coreEvent].trigger(
'screenSelectElement',