46 lines
1.1 KiB
JavaScript
46 lines
1.1 KiB
JavaScript
|
// jamsh
|
||
|
var ui = UI.UI({
|
||
|
pages : 1,
|
||
|
styles : {},
|
||
|
terminal: '',
|
||
|
title : 'Test APP'
|
||
|
});
|
||
|
|
||
|
function exit2() {
|
||
|
process.exit();
|
||
|
}
|
||
|
|
||
|
print(ui)
|
||
|
ui.init();
|
||
|
|
||
|
|
||
|
ui.pages[1]={
|
||
|
quit : ui.button({left:1,top:1,content:'QUIT', action:exit2}),
|
||
|
label1 : ui.label({right:1,top:2, content:'Terminal Demo'}),
|
||
|
term1 : ui.terminal({left:1, top:6, width:40, height:10, prompt:'> ', label:'Terminal'}),
|
||
|
info1 : ui.info({right:1, top:6, width:34, height:14, multiline:true, wrap:true, scrollable:true, label:'Info'}),
|
||
|
}
|
||
|
_logs=[]
|
||
|
Log = function () {
|
||
|
var line = Array.prototype.slice.call(arguments).map(function (arg) {
|
||
|
return inspect(arg) }).join(' ');
|
||
|
_logs.push(_logs.length+':'+line);
|
||
|
ui.pages[1].info1.setValue(_logs.join('\n'));
|
||
|
ui.pages[1].info1.scrollBottom();
|
||
|
}
|
||
|
ui.pages[1].term1.on('eval',function (cmd) {
|
||
|
Log(cmd);
|
||
|
if (cmd!=null) ui.pages[1].term1.print(cmd);
|
||
|
ui.pages[1].term1.print('Ok.');
|
||
|
});
|
||
|
ui.pages[1].term1.on('clicked',function (ev) {
|
||
|
// Log(ev);
|
||
|
});
|
||
|
ui.pages[1].term1.on('keypress',function (ch,key) {
|
||
|
// Log(key);
|
||
|
});
|
||
|
|
||
|
ui.screen.key(['escape', 'q', 'C-c'], exit2);
|
||
|
|
||
|
ui.start();
|