mirror of
https://shylinux.com/x/volcanos
synced 2025-04-25 16:58:06 +08:00
opt inner.js
This commit is contained in:
parent
2fb7172f21
commit
93594ff636
22
lib/core.js
22
lib/core.js
@ -125,24 +125,16 @@ Volcanos("core", {help: "数据结构",
|
|||||||
return list
|
return list
|
||||||
}),
|
}),
|
||||||
Next: shy("迭代器", function(list, cb, cbs) {
|
Next: shy("迭代器", function(list, cb, cbs) {
|
||||||
function next(i) {
|
|
||||||
i < list.length? cb(list[i], function() {
|
|
||||||
next(i+1)
|
|
||||||
}, i, list): typeof cbs == lang.FUNCTION && cbs(list)
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (typeof list) {
|
switch (typeof list) {
|
||||||
case undefined: list = []; break
|
case lang.OBJECT: if (list == null) { list = []; break }
|
||||||
case lang.OBJECT:
|
if (list.length == undefined) { var ls = []; for (var k in list) { ls.push(k) } list = ls } break
|
||||||
if (list.length == undefined) {
|
default: if (list == undefined) { list = []; break }
|
||||||
var ls = []; for (var k in list) { ls.push(k) }
|
list = [list]
|
||||||
list = ls
|
|
||||||
}
|
|
||||||
break
|
|
||||||
default: list = [list]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
list && list.length > 0 && typeof cb == lang.FUNCTION? next(0): typeof cbs == lang.FUNCTION && cbs(list)
|
function next(i) { i < list.length? typeof cb == lang.FUNCTION && cb(list[i], function() { next(i+1) }, i, list):
|
||||||
|
typeof cbs == lang.FUNCTION && cbs(list) }
|
||||||
|
return next(0), list
|
||||||
}),
|
}),
|
||||||
Items: shy("迭代器", function(obj, cb) { var list = []
|
Items: shy("迭代器", function(obj, cb) { var list = []
|
||||||
for (var k in obj) {
|
for (var k in obj) {
|
||||||
|
@ -92,7 +92,7 @@ fieldset.inner>div.output div.profile>div.action>div.item {
|
|||||||
float:left;
|
float:left;
|
||||||
}
|
}
|
||||||
fieldset.inner>div.output div.profile>div.output {
|
fieldset.inner>div.output div.profile>div.output {
|
||||||
clear:both;
|
clear:both; overflow:auto;
|
||||||
}
|
}
|
||||||
fieldset.inner>div.output div.display>div.output {
|
fieldset.inner>div.output div.display>div.output {
|
||||||
clear:both;
|
clear:both;
|
||||||
|
@ -10,50 +10,8 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, cb, target
|
|||||||
|
|
||||||
can.onimport.tabview(can, can.Option(nfs.PATH), can.Option(nfs.FILE), can.Option(nfs.LINE))
|
can.onimport.tabview(can, can.Option(nfs.PATH), can.Option(nfs.FILE), can.Option(nfs.LINE))
|
||||||
can.onimport.project(can, can.Option(nfs.PATH), function() {
|
can.onimport.project(can, can.Option(nfs.PATH), function() {
|
||||||
can.onimport._toolkit(can, can.ui.toolkit), can.core.Timer(100, function() {
|
can.onimport._toolkit(can, can.ui.toolkit), can.onimport._session(can, msg)
|
||||||
can.onimport.sess(can)
|
can.onimport._keydown(can)
|
||||||
can.core.Next(can.core.Split(msg.OptionOrSearch("tool")), function(item, next) {
|
|
||||||
can.onimport.toolkit(can, {index: item}, next)
|
|
||||||
}, function() {
|
|
||||||
can.core.Next(["inner/search.js", "inner/favor.js", "inner/sess.js"].reverse(), function(item, next) {
|
|
||||||
can.require([item], function() {}, function(can, name, sub) { sub._init(can, next) })
|
|
||||||
}, function() {
|
|
||||||
can.core.List(can.core.Split(msg.OptionOrSearch("tabs")), function(item) {
|
|
||||||
can.onimport.tabview(can, can.Option(nfs.PATH), item)
|
|
||||||
})
|
|
||||||
})
|
|
||||||
})
|
|
||||||
})
|
|
||||||
})
|
|
||||||
var run = can.run; can.run = function(event, cmds, cb, silent) { var msg = can.request(event)
|
|
||||||
if (can.misc.runAction(can, msg, cmds, cb, kit.Dict(
|
|
||||||
ctx.INPUTS, function(cmds) {
|
|
||||||
if (cmds[0] == nfs.FILE) {
|
|
||||||
switch (msg.Option(mdb.TYPE)) {
|
|
||||||
case ctx.INDEX:
|
|
||||||
run(event, [ctx.ACTION, ctx.INPUTS, ctx.INDEX].concat(cmds.slice(1)), cb, silent)
|
|
||||||
break
|
|
||||||
default:
|
|
||||||
can.core.List(can._file, function(item) {
|
|
||||||
if (!cmds[1] || item.path.indexOf(cmds[1])) {
|
|
||||||
msg.Push(nfs.FILE, item.path)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
can.base.isFunc(cb) && cb(msg)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
run(event, [ctx.ACTION, ctx.INPUTS].concat(cmds), cb, silent)
|
|
||||||
},
|
|
||||||
))) { return }
|
|
||||||
run(event, cmds, cb, silent)
|
|
||||||
}
|
|
||||||
can.user.mod.isCmd && can.onengine.listen(can, chat.ONKEYDOWN, function(event) {
|
|
||||||
var cb = can.onaction[kit.Dict(
|
|
||||||
"r", "执行", "v", "展示", "s", "保存",
|
|
||||||
"t", "添加", "f", "打开", "p", "插件", lang.ESCAPE, "清屏",
|
|
||||||
)[event.key]]
|
|
||||||
can.base.isFunc(cb) && cb(event, can)
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
_project: function(can, target) {
|
_project: function(can, target) {
|
||||||
@ -67,11 +25,7 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, cb, target
|
|||||||
cli.CLOSE, function(event) { can.onmotion.hidden(can, target), can.onimport.layout(can) },
|
cli.CLOSE, function(event) { can.onmotion.hidden(can, target), can.onimport.layout(can) },
|
||||||
mdb.PLUGIN, function(event) {
|
mdb.PLUGIN, function(event) {
|
||||||
can.user.input(event, can, [ctx.INDEX], function(event, button, data, list, args) {
|
can.user.input(event, can, [ctx.INDEX], function(event, button, data, list, args) {
|
||||||
can.onappend.plugin(can, data, function(sub) {
|
can.onimport.plugin(can, data, ui.output)
|
||||||
sub.run = function(event, cmds, cb) {
|
|
||||||
can.run(event, [ctx.ACTION, ice.RUN, data.index].concat(cmds), cb, true)
|
|
||||||
}
|
|
||||||
}, ui.output)
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
))
|
))
|
||||||
@ -85,11 +39,7 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, cb, target
|
|||||||
cli.CLOSE, function(event) { can.onmotion.hidden(can, target), can.onimport.layout(can) },
|
cli.CLOSE, function(event) { can.onmotion.hidden(can, target), can.onimport.layout(can) },
|
||||||
mdb.PLUGIN, function(event) {
|
mdb.PLUGIN, function(event) {
|
||||||
can.user.input(event, can, [ctx.INDEX], function(event, button, data, list, args) {
|
can.user.input(event, can, [ctx.INDEX], function(event, button, data, list, args) {
|
||||||
can.onappend.plugin(can, data, function(sub) {
|
can.onimport.plugin(can, data, ui.output)
|
||||||
sub.run = function(event, cmds, cb) {
|
|
||||||
can.run(event, [ctx.ACTION, ice.RUN, data.index].concat(cmds), cb, true)
|
|
||||||
}
|
|
||||||
}, ui.output)
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
))
|
))
|
||||||
@ -98,15 +48,19 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, cb, target
|
|||||||
_toolkit: function(can, target) {
|
_toolkit: function(can, target) {
|
||||||
can.ui.toolkit = can.onappend.field(can, "toolkit", {}, can._output)
|
can.ui.toolkit = can.onappend.field(can, "toolkit", {}, can._output)
|
||||||
can.ui.docker = can.page.Append(can, can._fields, [{view: "docker"}]).first
|
can.ui.docker = can.page.Append(can, can._fields, [{view: "docker"}]).first
|
||||||
var repos = can.base.trimSuffix(can.base.trimPrefix(can.Option(nfs.PATH), "usr/"), ice.PS)
|
},
|
||||||
|
_session: function(can, msg) { can.onimport.sess(can, "", function() { can.onimport.sess(can, {
|
||||||
can.run({}, [ctx.ACTION, ctx.COMMAND].concat([
|
tool: can.core.Split(msg.OptionOrSearch("tool")).reverse(),
|
||||||
"web.code.git.spide", "web.code.git.trend", "web.code.git.total",
|
plug: can.core.Split(msg.OptionOrSearch("plug")).reverse(),
|
||||||
].reverse()), function(msg) {
|
tabs: can.core.Split(msg.OptionOrSearch("tabs")),
|
||||||
can.core.Next(msg.Table(), function(item, next) {
|
}) }) },
|
||||||
item.args = can.base.getValid(item.args, [repos]), can.onimport.toolkit(can, item, next)
|
_keydown: function(can) {
|
||||||
})
|
can.user.mod.isCmd && can.onengine.listen(can, chat.ONKEYDOWN, function(event) {
|
||||||
}, true)
|
var cb = can.onaction[kit.Dict(
|
||||||
|
"r", "执行", "v", "展示", "s", "保存",
|
||||||
|
"t", "添加", "f", "打开", "p", "插件", lang.ESCAPE, "清屏",
|
||||||
|
)[event.key]]; can.base.isFunc(cb) && cb(event, can)
|
||||||
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
project: function(can, path, cb) { can.Option({path: path})
|
project: function(can, path, cb) { can.Option({path: path})
|
||||||
@ -125,15 +79,13 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, cb, target
|
|||||||
return can._msg.Option(can.Option()), can.onsyntax._init(can, can._msg, cb)
|
return can._msg.Option(can.Option()), can.onsyntax._init(can, can._msg, cb)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (line == ctx.INDEX) { var msg = can.request({}, {index: file, line: line})
|
if (line == ctx.INDEX) { var msg = can.request({}, {index: file, line: line}); can.tabview[key] = msg
|
||||||
can.tabview[key] = msg
|
|
||||||
msg._tab = can.onappend.tabs(can, [{name: file.split(ice.PS).pop(), text: file}], function(event, meta) {
|
msg._tab = can.onappend.tabs(can, [{name: file.split(ice.PS).pop(), text: file}], function(event, meta) {
|
||||||
can.onimport.tabview(can, path, file, "", cb), cb = null
|
can.onimport.tabview(can, path, file, "", cb), cb = null
|
||||||
}, function(item) { delete(can.tabview[key]) })
|
}, function(item) { delete(can.tabview[key]) })
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
can.Option({path: path, file: file, line: line||1})
|
can.Option({path: path, file: file, line: line||1})
|
||||||
can.run({}, [path, file], function(msg) { can.tabview[key] = msg
|
can.run({}, [path, file], function(msg) { can.tabview[key] = msg
|
||||||
msg._tab = can.onappend.tabs(can, [{name: file.split(ice.PS).pop(), text: file}], function(event, meta) {
|
msg._tab = can.onappend.tabs(can, [{name: file.split(ice.PS).pop(), text: file}], function(event, meta) {
|
||||||
@ -158,11 +110,8 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, cb, target
|
|||||||
can.onmotion.hidden(can, can.ui.display, true), can.onimport.layout(can)
|
can.onmotion.hidden(can, can.ui.display, true), can.onimport.layout(can)
|
||||||
},
|
},
|
||||||
toolkit: function(can, meta, cb) {
|
toolkit: function(can, meta, cb) {
|
||||||
can.onappend.plugin(can, meta, function(sub) {
|
meta.opts = meta.opts||{repos: can.base.trimSuffix(can.base.trimPrefix(can.Option(nfs.PATH), "usr/"), ice.PS) }
|
||||||
sub.run = function(event, cmds, cb, silent) {
|
can.onimport.plugin(can, meta, can.ui.toolkit.output, function(sub) {
|
||||||
can.run(event, can.misc.concat(can, [ctx.ACTION, ice.RUN, meta.index], cmds), cb, true)
|
|
||||||
}
|
|
||||||
|
|
||||||
sub.Conf(html.HEIGHT, can.Conf(html.HEIGHT)-4*html.ACTION_HEIGHT, html.WIDTH, can.Conf(html.WIDTH))
|
sub.Conf(html.HEIGHT, can.Conf(html.HEIGHT)-4*html.ACTION_HEIGHT, html.WIDTH, can.Conf(html.WIDTH))
|
||||||
sub.page.style(sub, sub._output, html.MAX_HEIGHT, sub.Conf(html.HEIGHT))
|
sub.page.style(sub, sub._output, html.MAX_HEIGHT, sub.Conf(html.HEIGHT))
|
||||||
sub.page.style(sub, sub._output, html.MAX_WIDTH, sub.Conf(html.WIDTH))
|
sub.page.style(sub, sub._output, html.MAX_WIDTH, sub.Conf(html.WIDTH))
|
||||||
@ -178,7 +127,15 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, cb, target
|
|||||||
can.page.Select(can, sub._option, html.OPTION_ARGS)[0].focus()
|
can.page.Select(can, sub._option, html.OPTION_ARGS)[0].focus()
|
||||||
}
|
}
|
||||||
can.base.isFunc(cb) && cb(sub)
|
can.base.isFunc(cb) && cb(sub)
|
||||||
}, can.ui.toolkit.output)
|
})
|
||||||
|
},
|
||||||
|
plugin: function(can, meta, target, cb) {
|
||||||
|
can.onappend.plugin(can, meta, function(sub) {
|
||||||
|
sub.run = function(event, cmds, cb) {
|
||||||
|
can.run(event, [ctx.ACTION, ice.RUN, meta.index].concat(cmds), cb, true)
|
||||||
|
}
|
||||||
|
can.base.isFunc(cb) && cb(sub)
|
||||||
|
}, target)
|
||||||
},
|
},
|
||||||
layout: function(can) { var height = can.Conf(html.HEIGHT), width = can.Conf(html.WIDTH)
|
layout: function(can) { var height = can.Conf(html.HEIGHT), width = can.Conf(html.WIDTH)
|
||||||
can.page.style(can, can.ui.content, can.user.mod.isCmd? html.HEIGHT: html.MAX_HEIGHT, height)
|
can.page.style(can, can.ui.content, can.user.mod.isCmd? html.HEIGHT: html.MAX_HEIGHT, height)
|
||||||
@ -191,12 +148,17 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, cb, target
|
|||||||
can.page.style(can, can.ui.content, html.WIDTH, width-can.ui.project.offsetWidth-can.ui.profile.offsetWidth-25)
|
can.page.style(can, can.ui.content, html.WIDTH, width-can.ui.project.offsetWidth-can.ui.profile.offsetWidth-25)
|
||||||
can.page.style(can, can.ui.profile_output, html.HEIGHT, can.ui.content.offsetHeight-html.ACTION_HEIGHT)
|
can.page.style(can, can.ui.profile_output, html.HEIGHT, can.ui.content.offsetHeight-html.ACTION_HEIGHT)
|
||||||
},
|
},
|
||||||
sess: function(can, sess) { sess = sess||can.base.Obj(localStorage.getItem("web.code.inner.sess"), {})
|
sess: function(can, sess, cb) { sess = sess||can.base.Obj(localStorage.getItem("web.code.inner.sess"), {})
|
||||||
can.core.Next(sess.tabs, function(item, next) { var ls = item.split(":")
|
|
||||||
can.onimport.tabview(can, ls[0], ls[1], ls[2], next)
|
|
||||||
})
|
|
||||||
can.core.Next(sess.tool, function(item, next) {
|
can.core.Next(sess.tool, function(item, next) {
|
||||||
can.onimport.toolkit(can, {index: item}, function(sub) { can.toolkit[item] = sub, next() })
|
can.onimport.toolkit(can, {index: item}, function(sub) { can.toolkit[item] = sub, next() })
|
||||||
|
}, function() {
|
||||||
|
can.core.Next(sess.plug, function(item, next) {
|
||||||
|
can.require([item], function() {}, function(can, name, sub) { sub._init(can, can.base.ParseURL(sub._path), next) })
|
||||||
|
}, function() {
|
||||||
|
can.core.Next(sess.tabs, function(item, next) { var ls = item.split(":")
|
||||||
|
can.onimport.tabview(can, ls[0], ls[1], ls[2], next)
|
||||||
|
}, cb)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
}, [""])
|
}, [""])
|
||||||
@ -216,16 +178,14 @@ Volcanos("onsyntax", {help: "语法高亮", list: ["keyword", "prefix", "line"],
|
|||||||
}, can.ui.content, can.ui.profile_output, can.ui.display_output)) {
|
}, can.ui.content, can.ui.profile_output, can.ui.display_output)) {
|
||||||
return can.onaction.selectLine(can, msg.Option(nfs.LINE)), can.base.isFunc(cb) && cb()
|
return can.onaction.selectLine(can, msg.Option(nfs.LINE)), can.base.isFunc(cb) && cb()
|
||||||
}
|
}
|
||||||
|
|
||||||
if (msg.Option(ctx.INDEX)) {
|
if (msg.Option(ctx.INDEX)) {
|
||||||
can.onappend.plugin(can, {index: msg.Option(ctx.INDEX)}, function(sub) {
|
can.onimport.plugin(can, {index: msg.Option(ctx.INDEX)}, can.ui.content, function(sub) {
|
||||||
sub.run = function(event, cmds, cb) {
|
|
||||||
can.run(event, [ctx.ACTION, ice.RUN, msg.Option(ctx.INDEX)].concat(cmds), cb, true)
|
|
||||||
}
|
|
||||||
can.core.Timer(100, function() {
|
can.core.Timer(100, function() {
|
||||||
var input = can.page.Select(can, can.ui.content, html.OPTION_ARGS)[0]; input && input.focus()
|
var input = can.page.Select(can, can.ui.content, html.OPTION_ARGS)[0]; input && input.focus()
|
||||||
})
|
})
|
||||||
can.base.isFunc(cb) && cb()
|
can.base.isFunc(cb) && cb()
|
||||||
}, can.ui.content)
|
})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -267,7 +227,6 @@ Volcanos("onsyntax", {help: "语法高亮", list: ["keyword", "prefix", "line"],
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
Volcanos("onaction", {help: "控件交互", list: ["打开", "插件", "添加", "保存"],
|
Volcanos("onaction", {help: "控件交互", list: ["打开", "插件", "添加", "保存"],
|
||||||
"保存": function(event, can) { can.onexport.sess(can), can.user.toastSuccess(can) },
|
|
||||||
"打开": function(event, can) {
|
"打开": function(event, can) {
|
||||||
can.user.input(event, can, [nfs.FILE], function(event, button, data, list, args) {
|
can.user.input(event, can, [nfs.FILE], function(event, button, data, list, args) {
|
||||||
can.onimport.tabview(can, can.Option(nfs.PATH), data.file)
|
can.onimport.tabview(can, can.Option(nfs.PATH), data.file)
|
||||||
@ -286,12 +245,19 @@ Volcanos("onaction", {help: "控件交互", list: ["打开", "插件", "添加",
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
"保存": function(event, can) { can.onexport.sess(can), can.user.toastSuccess(can) },
|
||||||
"项目": function(event, can) { can.onmotion.toggle(can, can.ui.project), can.onimport.layout(can) },
|
"项目": function(event, can) { can.onmotion.toggle(can, can.ui.project), can.onimport.layout(can) },
|
||||||
|
"工具": function(event, can) { can.onmotion.toggle(can, can.ui.toolkit.fieldset) },
|
||||||
"展示": function(event, can) { can.onimport.profile(can)
|
"展示": function(event, can) { can.onimport.profile(can)
|
||||||
can.run(event, [ctx.ACTION, mdb.ENGINE, can.parse, can.Option(nfs.FILE), can.Option(nfs.PATH)], function(msg) {
|
can.run(event, [ctx.ACTION, mdb.ENGINE, can.parse, can.Option(nfs.FILE), can.Option(nfs.PATH)], function(msg) {
|
||||||
can.onimport.profile(can, msg)
|
can.onimport.profile(can, msg)
|
||||||
}, true)
|
}, true)
|
||||||
},
|
},
|
||||||
|
"执行": function(event, can) { can.onimport.display(can)
|
||||||
|
can.run(event, [ctx.ACTION, mdb.ENGINE, can.parse, can.Option(nfs.FILE), can.Option(nfs.PATH)], function(msg) {
|
||||||
|
can.onimport.display(can, msg)
|
||||||
|
}, true)
|
||||||
|
},
|
||||||
"清屏": function(event, can) {
|
"清屏": function(event, can) {
|
||||||
if (can.page.Select(can, document.body, ".input.float", function(item) {
|
if (can.page.Select(can, document.body, ".input.float", function(item) {
|
||||||
return can.page.Remove(can, item)
|
return can.page.Remove(can, item)
|
||||||
@ -300,16 +266,11 @@ Volcanos("onaction", {help: "控件交互", list: ["打开", "插件", "添加",
|
|||||||
if (can.page.Select(can, can.ui.toolkit.status, "div.select", function(item) {
|
if (can.page.Select(can, can.ui.toolkit.status, "div.select", function(item) {
|
||||||
return item.click(), item
|
return item.click(), item
|
||||||
}).length > 0) { return }
|
}).length > 0) { return }
|
||||||
|
|
||||||
can.onmotion.hidden(can, can.ui.profile)
|
can.onmotion.hidden(can, can.ui.profile)
|
||||||
can.onmotion.hidden(can, can.ui.display)
|
can.onmotion.hidden(can, can.ui.display)
|
||||||
can.onimport.layout(can)
|
can.onimport.layout(can)
|
||||||
},
|
},
|
||||||
"执行": function(event, can) { can.onimport.display(can)
|
|
||||||
can.run(event, [ctx.ACTION, mdb.ENGINE, can.parse, can.Option(nfs.FILE), can.Option(nfs.PATH)], function(msg) {
|
|
||||||
can.onimport.display(can, msg)
|
|
||||||
}, true)
|
|
||||||
},
|
|
||||||
"工具": function(event, can) { can.onmotion.toggle(can, can.ui.toolkit.fieldset) },
|
|
||||||
back: function(event, can) { can.history.pop(); var last = can.history.pop()
|
back: function(event, can) { can.history.pop(); var last = can.history.pop()
|
||||||
last && can.onimport.tabview(can, last.path, last.file, last.line)
|
last && can.onimport.tabview(can, last.path, last.file, last.line)
|
||||||
can.Status("跳转数", can.history.length)
|
can.Status("跳转数", can.history.length)
|
||||||
@ -389,21 +350,19 @@ Volcanos("onaction", {help: "控件交互", list: ["打开", "插件", "添加",
|
|||||||
})
|
})
|
||||||
Volcanos("onexport", {help: "导出数据", list: ["文件数", "解析器", "文件名", "当前行", "跳转数", "标签数"],
|
Volcanos("onexport", {help: "导出数据", list: ["文件数", "解析器", "文件名", "当前行", "跳转数", "标签数"],
|
||||||
sess: function(can) {
|
sess: function(can) {
|
||||||
localStorage.setItem("web.code.inner.sess", JSON.stringify(
|
localStorage.setItem("web.code.inner.sess", JSON.stringify({
|
||||||
{
|
"tool": can.onexport.tool(can),
|
||||||
"tabs": can.onexport.tabs(can),
|
"tabs": can.onexport.tabs(can),
|
||||||
"tool": can.onexport.tool(can),
|
}))
|
||||||
}
|
},
|
||||||
))
|
tool: function(can) {
|
||||||
|
return can.core.Item(can.toolkit)
|
||||||
},
|
},
|
||||||
tabs: function(can) {
|
tabs: function(can) {
|
||||||
return can.core.Item(can.tabview, function(key, msg) {
|
return can.core.Item(can.tabview, function(key, msg) {
|
||||||
return key+":"+msg.Option(nfs.LINE)
|
return key+":"+msg.Option(nfs.LINE)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
tool: function(can) {
|
|
||||||
return can.core.Item(can.toolkit)
|
|
||||||
},
|
|
||||||
position: function(can, index, total) { total = total||can.max
|
position: function(can, index, total) { total = total||can.max
|
||||||
return (parseInt(index))+ice.PS+parseInt(total)+" = "+parseInt((index)*100/total)+"%"
|
return (parseInt(index))+ice.PS+parseInt(total)+" = "+parseInt((index)*100/total)+"%"
|
||||||
},
|
},
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
Volcanos("onimport", {help: "导入数据", _init: function(can, cb) {
|
Volcanos("onimport", {help: "导入数据", _init: function(can, args, cb) {
|
||||||
can.onimport.toolkit(can, {index: "web.code.favor"}, function(sub) {
|
can.onimport.toolkit(can, {index: "web.code.favor"}, function(sub) {
|
||||||
sub.run = function(event, cmds, cb) { var msg = can.request(event)
|
sub.run = function(event, cmds, cb) { var msg = can.request(event)
|
||||||
if (can.misc.runAction(can, msg, cmds, cb, kit.Dict(
|
if (can.misc.runAction(can, msg, cmds, cb, kit.Dict(
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
Volcanos("onimport", {help: "导入数据", _init: function(can, cb) { var history = []
|
Volcanos("onimport", {help: "导入数据", _init: function(can, args, cb) { var history = []
|
||||||
function show(msg, word) { if (!msg) { return } history.push(msg); var sub = msg._can; sub.Option("word", word||msg._word)
|
function show(msg, word) { if (!msg) { return } history.push(msg); var sub = msg._can; sub.Option("word", word||msg._word)
|
||||||
sub.onmotion.clear(sub), sub.onappend.table(sub, msg, function(value, key, index, line) {
|
sub.onmotion.clear(sub), sub.onappend.table(sub, msg, function(value, key, index, line) {
|
||||||
return {text: ["", html.TD], list: [{text: [can.page.replace(can, value, ice.PWD, ""), html.DIV]}], onclick: function(event) {
|
return {text: ["", html.TD], list: [{text: [can.page.replace(can, value, ice.PWD, ""), html.DIV]}], onclick: function(event) {
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
Volcanos("onimport", {help: "导入数据", _init: function(can, cb) {
|
Volcanos("onimport", {help: "导入数据", _init: function(can, args, cb) {
|
||||||
can.onimport.toolkit(can, {index: "web.code.sess"}, function(sub) {
|
can.onimport.toolkit(can, {index: "web.code.sess"}, function(sub) {
|
||||||
sub.run = function(event, cmds, cb) { var msg = can.request(event)
|
sub.run = function(event, cmds, cb) { var msg = can.request(event)
|
||||||
if (can.misc.runAction(can, msg, cmds, cb, kit.Dict(
|
if (can.misc.runAction(can, msg, cmds, cb, kit.Dict(
|
||||||
|
13
proto.js
13
proto.js
@ -316,23 +316,20 @@ var Volcanos = shy("火山架", {iceberg: "/chat/", volcano: "/frame.js", args:
|
|||||||
}); return msg
|
}); return msg
|
||||||
},
|
},
|
||||||
|
|
||||||
setHeaderMenu: function(list, cb) { can._menu && can.page.Remove(can, can._menu)
|
get: function(name, key, cb) {
|
||||||
var msg = can.request({}, {trans: can.onaction._trans})
|
return can.search({}, [can.core.Keys(name, "onexport", key)], cb)
|
||||||
return can._menu = can.search(msg._event, ["Header.onimport.menu", can._name].concat(list), cb)
|
|
||||||
},
|
},
|
||||||
set: function(name, key, value) { var msg = can.request({}); msg.Option(key, value)
|
set: function(name, key, value) { var msg = can.request({}); msg.Option(key, value)
|
||||||
return can.search(msg._event, [can.core.Keys(name, "onimport", key)])
|
return can.search(msg._event, [can.core.Keys(name, "onimport", key)])
|
||||||
},
|
},
|
||||||
get: function(name, key, cb) {
|
setHeaderMenu: function(list, cb) { can._menu && can.page.Remove(can, can._menu)
|
||||||
return can.search({}, [can.core.Keys(name, "onexport", key)], cb)
|
var msg = can.request({}, {trans: can.onaction._trans})
|
||||||
|
return can._menu = can.search(msg._event, ["Header.onimport.menu", can._name].concat(list), cb)
|
||||||
},
|
},
|
||||||
setHeader: function(key, value) { return can.set("Header", key, value) },
|
setHeader: function(key, value) { return can.set("Header", key, value) },
|
||||||
getHeader: function(key, cb) { return can.get("Header", key, cb) },
|
getHeader: function(key, cb) { return can.get("Header", key, cb) },
|
||||||
getAction: function(key, cb) { return can.get("Action", key, cb) },
|
getAction: function(key, cb) { return can.get("Action", key, cb) },
|
||||||
getActionSize: function(cb) { return can.get("Action", "size", cb) },
|
getActionSize: function(cb) { return can.get("Action", "size", cb) },
|
||||||
openSearch: function(cmds, cb) {
|
|
||||||
return can.search({}, [can.core.Keys("Search", "onimport", "select")].concat(cmds||[]), cb)
|
|
||||||
},
|
|
||||||
search: function(event, cmds, cb) { return can.run && can.run(event, ["_search"].concat(cmds), cb, true) },
|
search: function(event, cmds, cb) { return can.run && can.run(event, ["_search"].concat(cmds), cb, true) },
|
||||||
|
|
||||||
Conf: function(key, value) { var res = can._conf
|
Conf: function(key, value) { var res = can._conf
|
||||||
|
Loading…
x
Reference in New Issue
Block a user