shortcut.js 4.4 KB
Newer Older
NoSubject's avatar
NoSubject 已提交
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
MWF.clipboard = {"data": null};

MWF.shortcut = {
    copy: function(e){
        var app = layout.desktop.currentApp;
        if (app) app.fireEvent("copy", [e]);
    },
    cut: function(e){
        var app = layout.desktop.currentApp;
        if (app) app.fireEvent("cut", [e]);
    },
    paste: function(e){
        var app = layout.desktop.currentApp;
        if (app) app.fireEvent("paste", [e]);
    },
    save: function(e){
        var app = layout.desktop.currentApp;
        if (app) app.fireEvent("keySave", [e]);
    },
    keyDelete: function(e){
        var app = layout.desktop.currentApp;
        if (app) app.fireEvent("keyDelete", [e]);
    },
    openApplication: function(app){
        layout.desktop.openApplication(null, app);
    },
    clearDesktop: function(){
        var keys = Array.clone(Object.keys(layout.desktop.apps));
        keys.each(function(key){
            layout.desktop.apps[key].close();
        });
        keys = null;
NoSubject's avatar
NoSubject 已提交
33 34 35 36
    },
    minDesktop: function(){
        var keys = Object.keys(layout.desktop.apps);
        keys.each(function(key){
NoSubject's avatar
NoSubject 已提交
37
            if (layout.desktop.apps[key].minSize) layout.desktop.apps[key].minSize();
NoSubject's avatar
NoSubject 已提交
38 39 40 41 42
        });
    },
    maxDesktop: function(){
        var keys = Object.keys(layout.desktop.apps);
        keys.each(function(key){
NoSubject's avatar
NoSubject 已提交
43
            if (layout.desktop.apps[key].maxSize) layout.desktop.apps[key].maxSize();
NoSubject's avatar
NoSubject 已提交
44
        });
NoSubject's avatar
NoSubject 已提交
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
    }
};

MWF.shortcut.keyboard = new Keyboard({
    defaultEventType: 'keydown',
    events: {
        "ctrl+c": function(e){MWF.shortcut.copy(e);},
        "ctrl+x": function(e){MWF.shortcut.cut(e);},
        "ctrl+v": function(e){MWF.shortcut.paste(e);},
        "ctrl+s": function(e){MWF.shortcut.save(e);},

        "meta+c": function(e){MWF.shortcut.copy(e);},
        "meta+x": function(e){MWF.shortcut.cut(e);},
        "meta+v": function(e){MWF.shortcut.paste(e);},
        "meta+s": function(e){MWF.shortcut.save(e);},

R
roo00 已提交
61 62 63
        "ctrl+alt+o": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("Org"); e.stopPropagation();},
        "ctrl+alt+s": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("Setting"); e.stopPropagation();},
        "ctrl+alt+b": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("BAM");},
NoSubject's avatar
NoSubject 已提交
64

R
roo00 已提交
65 66 67 68 69
        "ctrl+alt+f": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("process.ApplicationExplorer"); e.stopPropagation();},
        "ctrl+alt+p": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("portal.PortalExplorer"); e.stopPropagation();},
        "ctrl+alt+c": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("cms.Column"); e.stopPropagation();},
        "ctrl+alt+q": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("query.QueryExplorer"); e.stopPropagation();},
        "ctrl+alt+v": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("service.ServiceManager"); e.stopPropagation();},
NoSubject's avatar
NoSubject 已提交
70
//"shift+s": function(e){MWF.shortcut.openApplication("service.ServiceManager");},
NoSubject's avatar
NoSubject 已提交
71

R
roo00 已提交
72 73 74 75 76 77 78 79
        "ctrl+alt+t": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("process.TaskCenter"); e.stopPropagation();},
        "ctrl+alt+i": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("cms.Index"); e.stopPropagation();},
        "ctrl+alt+a": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("File"); e.stopPropagation();},
        "ctrl+alt+r": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("Calendar"); e.stopPropagation();},
        "ctrl+alt+n": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("Note"); e.stopPropagation();},
        "ctrl+alt+m": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("Meeting"); e.stopPropagation();},
        "ctrl+alt+l": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("Forum"); e.stopPropagation();},
        "ctrl+alt+k": (layout.inBrowser) ? null : function(e){MWF.shortcut.openApplication("Attendance"); e.stopPropagation();},
NoSubject's avatar
NoSubject 已提交
80

R
roo00 已提交
81 82 83
        "ctrl+alt+d": (layout.inBrowser) ? null : function(e){MWF.shortcut.clearDesktop(); e.stopPropagation();},
        "ctrl+alt+-": (layout.inBrowser) ? null : function(e){MWF.shortcut.minDesktop(); e.stopPropagation();},
        "ctrl+alt+=": (layout.inBrowser) ? null : function(e){MWF.shortcut.maxDesktop(); e.stopPropagation();},
NoSubject's avatar
NoSubject 已提交
84 85 86 87 88

        "delete": function(e){MWF.shortcut.keyDelete(e);}
    }
});
MWF.shortcut.keyboard.activate();