select vbox multiple wip
This commit is contained in:
parent
0d08536837
commit
33152e54d5
@ -172,14 +172,13 @@ class Vbox extends preact.Component {
|
|||||||
if (!vboxSelecting) return false;
|
if (!vboxSelecting) return false;
|
||||||
document.activeElement.blur();
|
document.activeElement.blur();
|
||||||
clearVboxSelected();
|
clearVboxSelected();
|
||||||
sendVboxAccept(vboxSelected[0], vboxSelected[1]);
|
sendVboxAccept(vboxSelected[0][0], vboxSelected[0][1]);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
function availableBtn(v, group, index) {
|
function availableBtn(v, group, index) {
|
||||||
if (!v) return <button disabled class='empty' key={(group * 10) + index} > </button>;
|
if (!v) return <button disabled class='empty' key={(group * 10) + index} > </button>;
|
||||||
const selected = vboxSelected[0] === group && vboxSelected[1] === index;
|
const selected = vboxSelected.length && vboxSelected.some(vs => vs[0] === group && vs[1] === index);
|
||||||
|
|
||||||
// state not yet set in double click handler
|
// state not yet set in double click handler
|
||||||
function onDblClick(e) {
|
function onDblClick(e) {
|
||||||
clearVboxSelected();
|
clearVboxSelected();
|
||||||
@ -190,10 +189,11 @@ class Vbox extends preact.Component {
|
|||||||
function onClick(e) {
|
function onClick(e) {
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
setItemEquip(null);
|
setItemEquip(null);
|
||||||
setCombiner([]);
|
|
||||||
setInfo(vbox.free[group][index]);
|
setInfo(vbox.free[group][index]);
|
||||||
if (vboxSelected[0] === group && vboxSelected[1] === index) return clearVboxSelected();
|
if (vboxSelected.length && vboxSelected.some(vs => vs[0] === group && vs[1] === index)) {
|
||||||
return setVboxSelected([group, index]);
|
return setVboxSelected(vboxSelected.filter(vs => !(vs[0] === group && vs[1] === index)));
|
||||||
|
}
|
||||||
|
return setVboxSelected([...vboxSelected, [group, index]]);
|
||||||
}
|
}
|
||||||
|
|
||||||
const combinerItems = combiner.map(j => vbox.bound[j]);
|
const combinerItems = combiner.map(j => vbox.bound[j]);
|
||||||
@ -217,10 +217,7 @@ class Vbox extends preact.Component {
|
|||||||
const disabled = vbox.bits <= group;
|
const disabled = vbox.bits <= group;
|
||||||
return (
|
return (
|
||||||
<label draggable='true'
|
<label draggable='true'
|
||||||
onDragStart={ev => {
|
onDragStart={ev => ev.dataTransfer.setData('text', '')}
|
||||||
onClick(ev);
|
|
||||||
ev.dataTransfer.setData('text', '')
|
|
||||||
}}
|
|
||||||
key={group * 10 + index}
|
key={group * 10 + index}
|
||||||
onDragEnd={clearVboxSelected}>
|
onDragEnd={clearVboxSelected}>
|
||||||
<button
|
<button
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user