|
|
@ -854,37 +854,76 @@ function setupInterface(data, file, urls) {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
wnd_listener.simple_combo('up',
|
|
|
|
wnd_listener.register_combo(
|
|
|
|
function() {
|
|
|
|
{
|
|
|
|
if (editingTd != null) return true;
|
|
|
|
keys: 'meta up',
|
|
|
|
|
|
|
|
on_keydown:
|
|
|
|
|
|
|
|
function() {
|
|
|
|
|
|
|
|
if (editingTd != null) return true;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
stepsBackward(1);
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
is_solitary: true
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
let prev = $(':focus').closest('tr').prev('tr')
|
|
|
|
wnd_listener.register_combo(
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
keys: 'up',
|
|
|
|
|
|
|
|
|
|
|
|
let pos = $(':focus').closest('tr').children('.editable').index($(':focus'))
|
|
|
|
on_keydown:
|
|
|
|
|
|
|
|
function() {
|
|
|
|
|
|
|
|
if (editingTd != null) return true;
|
|
|
|
|
|
|
|
|
|
|
|
if (prev.length==0) {
|
|
|
|
let prev = $(':focus').closest('tr').prev('tr')
|
|
|
|
stepsBackward(1);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
prev.children('.editable')[pos].focus();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
wnd_listener.simple_combo('down',
|
|
|
|
let pos = $(':focus').closest('tr').children('.editable').index($(':focus'))
|
|
|
|
function() {
|
|
|
|
|
|
|
|
if (editingTd != null) return true;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
let next = $(':focus').closest('tr').next('tr')
|
|
|
|
if (prev.length==0) {
|
|
|
|
|
|
|
|
stepsBackward(1);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
prev.children('.editable')[pos].focus();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
is_solitary : true
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
let pos = $(':focus').closest('tr').children('.editable').index($(':focus'))
|
|
|
|
wnd_listener.register_combo(
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
keys: 'meta down',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
on_keydown: function() {
|
|
|
|
|
|
|
|
if (editingTd != null) return true;
|
|
|
|
|
|
|
|
|
|
|
|
if (next.length==0) {
|
|
|
|
|
|
|
|
stepsForward(1);
|
|
|
|
stepsForward(1);
|
|
|
|
}
|
|
|
|
},
|
|
|
|
else {
|
|
|
|
is_solitary: true
|
|
|
|
next.children('.editable')[pos].focus();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
);
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
wnd_listener.register_combo(
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
keys : 'down',
|
|
|
|
|
|
|
|
on_keydown:
|
|
|
|
|
|
|
|
function() {
|
|
|
|
|
|
|
|
if (editingTd != null) return true;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
let next = $(':focus').closest('tr').next('tr')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
let pos = $(':focus').closest('tr').children('.editable').index($(':focus'))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (next.length==0) {
|
|
|
|
|
|
|
|
stepsForward(1);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
next.children('.editable')[pos].focus();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
is_solitary: true,
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
wnd_listener.sequence_combo('l a',
|
|
|
|
wnd_listener.sequence_combo('l a',
|
|
|
|
function() {
|
|
|
|
function() {
|
|
|
|