1
0
forked from x/volcanos
This commit is contained in:
harveyshao 2022-02-20 22:31:46 +08:00
parent 23983001b2
commit c156f3ace6
3 changed files with 23 additions and 19 deletions

View File

@ -1,4 +1,3 @@
_can_name = "/frame.js"
Volcanos("onengine", {help: "搜索引擎", list: [], _init: function(can, meta, list, cb, target) {
can.run = function(event, cmds, cb) { var msg = can.request(event); cmds = cmds||[]
return (can.onengine[cmds[0]]||can.onengine._remote)(event, can, msg, can, cmds, cb)
@ -173,7 +172,7 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
function add(item, next) { item = can.base.isString(item)? {type: html.TEXT, name: item}: item, item.type != html.BUTTON && index++
return Volcanos(item.name, {_follow: can.core.Keys(can._follow, item.name),
_target: can.onappend.input(can, item, args[index]||opts[item.name], option||can._option),
_option: can._option, _action: can._action, _output: can._output, _status: can._status,
_option: option||can._option, _action: can._action, _output: can._output, _status: can._status,
Option: can.Option, Action: can.Action, Status: can.Status, CloneField: can.Clone,
CloneInput: function() { can.onmotion.focus(can, add(item)._target) },
}, [item.display, chat.PLUGIN_INPUT_JS], function(input) { input.Conf(item)
@ -350,7 +349,6 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
}
function run(cmds) { var msg = can.sup.request(event, line, can.Option())
return can.run(event, cmds, null, true)
return can.run(event, cmds, function(msg) { can.run() }, true)
}

View File

@ -82,11 +82,14 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, cb, target
_toolkit: function(can, target) {
can.ui.toolkit = can.onappend.field(can, "toolkit", {}, can._output)
},
_session: function(can, msg) { can.user.isMobile || can.onimport.sess(can, "", function() { can.onimport.sess(can, {
plug: can.core.Split(msg.OptionOrSearch("plug")).reverse(),
exts: can.core.Split(msg.OptionOrSearch("exts")).reverse(),
tabs: can.core.Split(msg.OptionOrSearch("tabs")),
}) }) },
_session: function(can, msg) {
if (can.user.isMobile || !can.page.ClassList.has(can, can._fields, chat.PLUGIN)) { return }
can.onimport.sess(can, "", function() { can.onimport.sess(can, {
plug: can.core.Split(msg.OptionOrSearch("plug")).reverse(),
exts: can.core.Split(msg.OptionOrSearch("exts")).reverse(),
tabs: can.core.Split(msg.OptionOrSearch("tabs")),
}) })
},
_keydown: function(can) { can.onkeymap._build(can)
can.user.mod.isCmd && can.onengine.listen(can, chat.ONKEYDOWN, function(event) {
can._key_list = can.onkeymap._parse(event, can, "plugin", can._key_list, can.ui.content)
@ -145,16 +148,15 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, cb, target
sub.page.style(sub, sub._output, html.MAX_HEIGHT, sub.ConfHeight())
sub.page.style(sub, sub._output, html.MAX_WIDTH, sub.ConfWidth())
sub.select = function() { return sub._legend.click(), sub }
sub.onappend._option(sub, [{type: html.BUTTON, name: "close"}])
// var status = can.user.mod.isCmd? can._status: can.ui.toolkit.status
var status = can._status
status.appendChild(sub._legend), sub._legend.onclick = function(event) {
if (can.page.Select(can, status, ice.PT+html.SELECT)[0] == event.target) {
can._status.appendChild(sub._legend), sub._legend.onclick = function(event) {
if (can.page.Select(can, can._status, ice.PT+html.SELECT)[0] == event.target) {
can.page.ClassList.del(can, event.target, html.SELECT)
can.page.ClassList.del(can, sub._target, html.SELECT)
return
}
can.onmotion.select(can, status, html.LEGEND, event.target)
can.onmotion.select(can, can._status, html.LEGEND, event.target)
can.onmotion.select(can, can.ui.toolkit.output, html.FIELDSET, sub._target)
can.onmotion.focus(can, can.page.Select(can, sub._option, html.OPTION_ARGS)[0])
}, can.base.isFunc(cb) && cb(sub)
@ -258,8 +260,10 @@ Volcanos("onsyntax", {help: "语法高亮", list: ["keyword", "prefix", "line"],
can.onaction.appendLine(can, item)
}), can.onaction.selectLine(null, can, msg.Option(nfs.LINE)), can.base.isFunc(cb) && cb()
msg.Option(nfs.FILE).indexOf("website/") == 0 && can.onaction["展示"]({}, can)
p && p.render && can.onaction["展示"]({}, can)
p && p.engine && can.onaction["执行"]({}, can)
if (can.page.ClassList.has(can, can._fields, chat.PLUGIN)) {
p && p.render && can.onaction["展示"]({}, can)
p && p.engine && can.onaction["执行"]({}, can)
}
}
var p = can.onsyntax[can.parse]; !p? can.run({}, [ctx.ACTION, mdb.PLUGIN, can.parse, msg.Option(nfs.FILE), msg.Option(nfs.PATH)], function(msg) {

View File

@ -407,10 +407,12 @@ try { if (global) {
global.svg = svg, global.html = html, global.lang = lang
global.shy = shy, global.Volcanos = Volcanos
Volcanos.meta._load = function(url, cb) { _can_name = url
switch (url.split("?")[0].split(ice.PT).pop().toLowerCase()) {
case nfs.JS: require(url), cb(Volcanos.meta.cache[_can_name]); break
}
Volcanos.meta._load = function(url, cb) {
setTimeout(function() { if (Volcanos.meta.cache[url]) { return cb(Volcanos.meta.cache[url]) }
switch (url.split("?")[0].split(ice.PT).pop().toLowerCase()) {
case nfs.JS: require(_can_name = url), cb(Volcanos.meta.cache[url]); break
}
}, 100)
}
Volcanos.meta._load(global.plugin, function(cache) {