Skip to content

Commit 61582f9

Browse files
author
hikki
committed
v3.2
1 parent 27fbc5a commit 61582f9

File tree

1 file changed

+21
-8
lines changed

1 file changed

+21
-8
lines changed

resources/assets/component.js

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1158,7 +1158,7 @@ window.ComponentCascadeLine = class {
11581158
this.name = name;
11591159
this.OPTIONS = Object.assign({
11601160
movable : true,
1161-
exchange:true,
1161+
exchange:false,
11621162
insert:true,
11631163
update:true,
11641164
delete:true
@@ -1716,8 +1716,17 @@ window.ComponentCascadeLine = class {
17161716
if(el.getAttribute('drag-zone') === 'true'){
17171717
if(e.type==='dragover'){
17181718
aim = el;
1719-
el.click();
1720-
el.style.setProperty('background', '#bb8f2c');
1719+
if(aim.classList.contains('dlp-label-silence'))aim.click();
1720+
if(!object.OPTIONS.exchange){
1721+
let stack = parseInt(aim.getAttribute('data-stack'));
1722+
let index = parseInt(aim.getAttribute('data-k'));
1723+
let parents = object.dimensional_data[stack][index].parentNodes;
1724+
if(Array.isArray(parents) && (parents.indexOf(parseInt(D.getAttribute('data-id'))) === -1)){
1725+
aim.style.setProperty('background', '#bb8f2c');
1726+
}
1727+
}else {
1728+
aim.style.setProperty('background', '#bb8f2c');
1729+
}
17211730
}else if(e.type ==='dragleave' && aim instanceof HTMLElement){
17221731
aim.style.removeProperty( 'background');
17231732
aim = null;
@@ -1758,26 +1767,30 @@ window.ComponentCascadeLine = class {
17581767
}
17591768

17601769
nodeMigrateConfirm(node,aim_node){
1761-
aim_node.style.removeProperty( 'background');
1770+
let event;
17621771
let stack = parseInt(aim_node.getAttribute('data-stack'));
17631772
let index = parseInt(aim_node.getAttribute('data-k'));
17641773
let aim_node_data = this.dimensional_data[stack][index];
17651774
stack = parseInt(node.getAttribute('data-stack'));
17661775
index = parseInt(node.getAttribute('data-k'));
17671776
let node_data = this.dimensional_data[stack][index];
1777+
if(aim_node_data.parentNodes.indexOf(node_data.key) !== -1){
1778+
event = 'exchange';
1779+
}else {
1780+
event = 'migrate';
1781+
}
1782+
if(!this.OPTIONS.exchange && event === 'exchange')return;
1783+
aim_node.style.removeProperty( 'background');
17681784
this.dialog(`<span class="dlp-text title" title="${node_data.val}">${node_data.val}</span> 迁移`,90);
17691785
let M = document.createElement('div');
17701786
let object = this;
17711787
M.className = 'dlp dlp-text dlp-label';
17721788
M.insertAdjacentHTML('afterbegin', `<span>${node_data.val}</span><i class="right">${_component.check_circle}</i>`);
17731789
this.PLANE_BODY.insertAdjacentHTML('afterbegin', `<div class="dlp dlp-text dlp-label"><span>${aim_node_data.val}</span></div>`);
1774-
let event;
1775-
if(aim_node_data.parentNodes.indexOf(node_data.key) !== -1){
1790+
if(event === 'exchange'){
17761791
this.PLANE_BODY.insertAdjacentHTML('beforeend', `<div style="font-size: 20px!important;">⇵</div>`);
1777-
event = 'exchange';
17781792
}else {
17791793
this.PLANE_BODY.insertAdjacentHTML('beforeend', `<div style="font-size: 18px!important;">↑</div>`);
1780-
event = 'migrate';
17811794
}
17821795
/*M.addEventListener('click', (() => {
17831796
if (object.submit_block) return;

0 commit comments

Comments
 (0)