From 87e87750b7ff9e25795d4b6600ffa735053b994c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20Dornier?= Date: Fri, 10 Nov 2023 10:24:32 +0100 Subject: [PATCH 1/6] remove duplicate labels when editing and add new --- src/js/models/panel_model.js | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/src/js/models/panel_model.js b/src/js/models/panel_model.js index 7e3c02a67..50e60a78d 100644 --- a/src/js/models/panel_model.js +++ b/src/js/models/panel_model.js @@ -241,13 +241,35 @@ var oldLabs = this.get("labels"); // Need to clone the list of labels... var labs = []; - for (var i=0; i Date: Fri, 10 Nov 2023 14:08:48 +0100 Subject: [PATCH 2/6] remove duplicates after adding them on the figure when editing --- src/js/models/panel_model.js | 17 +++-------------- src/js/views/right_panel_view.js | 14 +++++++++++--- 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/src/js/models/panel_model.js b/src/js/models/panel_model.js index 50e60a78d..b3468047b 100644 --- a/src/js/models/panel_model.js +++ b/src/js/models/panel_model.js @@ -241,24 +241,15 @@ var oldLabs = this.get("labels"); // Need to clone the list of labels... var labs = []; - /*for (var i=0; i Date: Thu, 16 Nov 2023 10:49:22 +0100 Subject: [PATCH 3/6] Fix undo break by removing duplicates in edit_labels --- src/js/models/panel_model.js | 14 +++++++++++++- src/js/views/right_panel_view.js | 10 ---------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/src/js/models/panel_model.js b/src/js/models/panel_model.js index d52cd9ce8..3561340ad 100644 --- a/src/js/models/panel_model.js +++ b/src/js/models/panel_model.js @@ -456,8 +456,20 @@ labs.push( lbl ); } } + + // filter unique keys only to remove duplicates + var filtered_lbls_map = {} + for (var i=0; i Date: Tue, 21 Nov 2023 08:24:09 +0100 Subject: [PATCH 4/6] Fix bug on label sorting --- src/js/models/panel_model.js | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/js/models/panel_model.js b/src/js/models/panel_model.js index 3561340ad..720e21e1e 100644 --- a/src/js/models/panel_model.js +++ b/src/js/models/panel_model.js @@ -243,24 +243,24 @@ var oldLabs = this.get("labels"); // Need to clone the list of labels... var labs = []; - var newLabKey = []; - for (var i=0; i Date: Tue, 21 Nov 2023 08:27:09 +0100 Subject: [PATCH 5/6] Remove whitespace lines --- src/js/models/panel_model.js | 3 +-- src/js/views/right_panel_view.js | 4 +++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/js/models/panel_model.js b/src/js/models/panel_model.js index 720e21e1e..0ad93a692 100644 --- a/src/js/models/panel_model.js +++ b/src/js/models/panel_model.js @@ -252,7 +252,6 @@ oldLabKeys.push(lbl_key); labs.push( $.extend(true, {}, lbl)); } - // ... then add new labels ... for (var j=0; j Date: Wed, 22 Nov 2023 16:27:45 +0100 Subject: [PATCH 6/6] shorten the filtering and remove Object.values() --- src/js/models/panel_model.js | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/src/js/models/panel_model.js b/src/js/models/panel_model.js index b23379b02..ebdeabeed 100644 --- a/src/js/models/panel_model.js +++ b/src/js/models/panel_model.js @@ -463,16 +463,12 @@ } } - // filter unique keys only to remove duplicates - var filtered_lbls_map = {} - for (var i=0; i this.get_label_key(lbl)); + + // get all unique labels based on filtering keys + //(i.e removing duplicate keys based on the index of the first occurrence of the value) + var filtered_lbls = labs.filter((lbl, index) => index == keys.indexOf(this.get_label_key(lbl))); // ... so that we get the changed event triggering OK this.save('labels', filtered_lbls);