enite higlignt bug fix #2306

This commit is contained in:
Bachir Soussi Chiadmi 2023-10-06 14:46:44 +02:00
parent 3b4acd6949
commit 5fcff3f6dd
4 changed files with 43 additions and 10 deletions

View File

@ -204,6 +204,15 @@ body{
h3{
font-weight: 400;
font-size: 1.323em;
position: relative;
overflow: visible;
&::before{
content:"\2022";
color: #01ffe2;
position:absolute;
left:-0.45em;
font-weight: bold;
}
}
span.menacemaintient{
display: block;

View File

@ -214,6 +214,7 @@ export default {
...mapActions(ConcernementsStore,['openCloseConcernements',
// 'setConcernementMapItem',
'hideShowConcernement',
'setOpenedEntiteId',
'setActiveRevision',
'setBesoinPaperId',
'setOpenedDoleanceField',
@ -694,15 +695,32 @@ export default {
// for (let i = 0; i < this.entites.length; i++) {
for (let i = 0; i < this.concernement.revisions_byid[this.concernement.active_revision].entites.length; i++) {
let entite = this.concernement.revisions_byid[this.concernement.active_revision].entites[i];
// item type
let item_type = entite.entite ? entite.entite.agissante ? 'entite_action' : 'entite' : 'entite_hidden';
// use paper symbol
let symbol_name = entite.entite ? entite.entite.agissante ? 'entite_action' : 'entite' : 'entite_hidden';
let symbol_name = item_type;
switch (item_type) {
case 'entite':
if(parseInt(this.opened_entite_id) === entite.entite.id){
symbol_name = 'entite_hover';
}
break;
case 'entite_action':
if(parseInt(this.opened_entite_id) === entite.entite.id){
symbol_name = 'entite_action_hover';
}
break;
}
let instance = new paper.SymbolItem(this.paper_symbol_definitions[symbol_name]);
instance.name = 'entite';
instance.position = new paper.Point([this.pos.x + entite.display.pos.x * this.scale, this.pos.y + entite.display.pos.y * this.scale]);
instance.scale(this.scale);
instance.fillColor = '#000';
instance.item_id = entite.entite ? entite.entite.id : null;
instance.item_type = symbol_name;
instance.item_type = item_type;
instance.is_symbol_instance = true;
g.addChild(instance)
}
@ -1305,11 +1323,11 @@ export default {
}
// focus on opened entite
if (this.is_open && this.opened_entite_id && (this.map_mode === 'terraindevie' || this.map_mode === 'action')) {
if (this.is_open && (this.map_mode === 'terraindevie' || this.map_mode === 'action')) {
let group = this.map_mode === 'terraindevie' ? this.paper_main_object.children['entites'] : this.paper_main_object.children['agissantes'];
if(group){
group.children.forEach((item) => {
if (item.item_id === this.opened_entite_id) {
if (this.opened_entite_id && item.item_id === parseInt(this.opened_entite_id)) {
item.definition = item.item_type === 'entite' ? this.paper_symbol_definitions.entite_hover : this.paper_symbol_definitions.entite_action_hover;
} else {
if (!this.hover_elmt || item.item_id !== this.hover_elmt.id) {
@ -1321,8 +1339,6 @@ export default {
}
},
onIsHover(){
// handle layer z-index
@ -1548,6 +1564,7 @@ export default {
hash: `#${this.map_mode}`,
params: {id: this.cid, mapitemid: this.id}
});
// reset the mousehover
this.resetHoverElmt();
}
@ -1683,6 +1700,8 @@ export default {
this.handlePaperVisibilityOnBeforeClose();
this.setOpenedEntiteId(null);
// this.setOpenedRecit(null);
// create once the closing tween

View File

@ -196,7 +196,8 @@ export default {
console.log(`symbol instance o.type:${o.type}, oitem`, oitem);
switch (o.type) {
case 'entite':
if (!this.opened_entite_id || this.opened_entite_id !== oitem.item_id) {
// console.log('this.opened_entite_id', parseInt(this.opened_entite_id), 'oitem.item_id', oitem.item_id);
if (!this.opened_entite_id || parseInt(this.opened_entite_id) !== oitem.item_id) {
oitem.definition = this.paper_symbol_definitions.entite;
}
break;
@ -207,7 +208,7 @@ export default {
oitem.definition = this.paper_symbol_definitions.reponse;
break;
case 'entite_action':
if (!this.opened_entite_id || this.opened_entite_id !== oitem.item_id) {
if (!this.opened_entite_id || parseInt(this.opened_entite_id) !== oitem.item_id) {
oitem.definition = this.paper_symbol_definitions.entite_action;
}
break;

View File

@ -111,7 +111,11 @@ export default {
eid: {
handler (n, o) {
console.log(`TerrainDeVie watch eid o:${o}, n:${n}`);
if (n) {
this.loadEntite()
}else{
this.entite = null;
}
},
deep: true
}
@ -157,7 +161,7 @@ export default {
<!-- TODO update entite with revisions -->
<span v-if="entite && concernement.entites_byid[eid].menacemaintien < 0" class="menacemaintient">est menacé par</span>
<span v-if="entite && concernement.entites_byid[eid].menacemaintien > 0" class="menacemaintient">est maintenu par</span>
<h3 v-if="entite"><span class="entite-point">&bull;</span>&ThinSpace;{{ entite.title }}</h3>
<h3 v-if="entite">{{ entite.title }}</h3>
</div>
</template>