summaryrefslogtreecommitdiff
path: root/src/client/keyshortcuts.js
blob: 92f4182bb3817eb17f06aca363d21af278036a3f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
define(['jquery', 'view/selection'],
function($,             selection)
{
var rz_core; // circular dependency

function get_rz_core()
{
    if (rz_core === undefined) {
        rz_core = require('rz_core');
    }
    return rz_core;
}

function install() {
    document.body.onkeydown = function(e) {
        var key = ((e.key && String(e.key))
                   || (e.charCode && String.fromCharCode(e.charCode))
                   || (e.which && String.fromCharCode(e.which))).toLowerCase();

        if (e.altKey && e.ctrlKey && 'i' === key) {
            $('#textanalyser').focus();
        }
        if (e.altKey && e.ctrlKey && 'o' === key) {
            search.focus();
        }
        if (e.ctrlKey && 'a' === key && e.target === document.body) {
            selection.update(get_rz_core().main_graph.nodes(), false);
            e.preventDefault();
            e.stopPropagation();
        }
        if (e.ctrlKey && 'z' === key && e.target.nodeName !== 'INPUT') {
            // TODO: rz_core.main_graph.undo();
        }
    };
}
return {
        install: install
       };
}
);