1
0
mirror of https://shylinux.com/x/volcanos synced 2025-04-26 01:04:06 +08:00
This commit is contained in:
shaoying 2021-07-27 23:28:53 +08:00
parent 254ed07ce0
commit c788c1aadf
15 changed files with 45 additions and 40 deletions

View File

@ -149,7 +149,7 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
if (!cmds[i]) { cmds.pop() } else { break } if (!cmds[i]) { cmds.pop() } else { break }
} }
var last = sub._history[sub._history.length-1]; !sub.base.Eq(last, cmds) && cmds[0] != "action" && !silent && sub._history.push(cmds) var last = sub._history[sub._history.length-1]; !sub.base.Eq(last, cmds) && cmds[0] != ctx.ACTION && !silent && sub._history.push(cmds)
return cmds return cmds
}, },
}, list.concat(Volcanos.meta.volcano, Volcanos.meta.libs), function(sub) { sub.Conf(meta) }, list.concat(Volcanos.meta.volcano, Volcanos.meta.libs), function(sub) { sub.Conf(meta)
@ -175,12 +175,12 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
CloneInput: function() { add(item)._target.focus() }, CloneField: function() { can.Clone() }, CloneInput: function() { add(item)._target.focus() }, CloneField: function() { can.Clone() },
}, [item.display||"/plugin/input.js"].concat(Volcanos.meta.volcano, Volcanos.meta.libs), function(input) { }, [item.display||"/plugin/input.js"].concat(Volcanos.meta.volcano, Volcanos.meta.libs), function(input) {
input.Conf(item), input.sup = can, input.run = function(event, cmds, cb, silent) { var msg = can.request(event) input.Conf(item), input.sup = can, input.run = function(event, cmds, cb, silent) { var msg = can.request(event)
if (msg.Option("_handle") != "true" && cmds && cmds[0] == "action" && input.onaction[cmds[1]]) { if (msg.Option("_handle") != "true" && cmds && cmds[0] == ctx.ACTION && input.onaction[cmds[1]]) {
return msg.Option("_handle", "true"), can.core.CallFunc(input.onaction[cmds[1]], {event: event, can: input, msg: msg}) return msg.Option("_handle", "true"), can.core.CallFunc(input.onaction[cmds[1]], {event: event, can: input, msg: msg})
} }
var table = can.core.Value(can, "_outputs.-1") var table = can.core.Value(can, "_outputs.-1")
if (msg.Option("_handle") != "true" && cmds && cmds[0] == "action" && table.onaction[cmds[1]]) { if (msg.Option("_handle") != "true" && cmds && cmds[0] == ctx.ACTION && table.onaction[cmds[1]]) {
return msg.Option("_handle", "true"), can.core.CallFunc(table.onaction[cmds[1]], {event: event, can: table, msg: msg}) return msg.Option("_handle", "true"), can.core.CallFunc(table.onaction[cmds[1]], {event: event, can: table, msg: msg})
} }
@ -201,7 +201,7 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
can.core.List(list, function(item) { can.onappend.input(can, item == ""? /*空白*/ {type: "space"}: can.core.List(list, function(item) { can.onappend.input(can, item == ""? /*空白*/ {type: "space"}:
typeof item == "string"? /*按键*/ {type: "button", value: item, onclick: function(event) { typeof item == "string"? /*按键*/ {type: "button", value: item, onclick: function(event) {
var cb = meta[item]||meta["_engine"] var cb = meta[item]||meta["_engine"]
cb? can.core.CallFunc(cb, [event, can, item]): can.run(event, ["action",item].concat(can.sup.Pack())) cb? can.core.CallFunc(cb, [event, can, item]): can.run(event, [ctx.ACTION,item].concat(can.sup.Pack()))
}}: item.length > 0? /*列表*/ {type: "select", name: item[0], values: item.slice(1), onchange: function(event) { }}: item.length > 0? /*列表*/ {type: "select", name: item[0], values: item.slice(1), onchange: function(event) {
var which = item[event.target.selectedIndex+1] var which = item[event.target.selectedIndex+1]
@ -217,12 +217,12 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
item.name && item.value && msg.Option(item.name, item.value) item.name && item.value && msg.Option(item.name, item.value)
}) })
if (msg.Option("_handle") != "true" && cmds && cmds[0] == "action" && can.onaction[cmds[1]]) { if (msg.Option("_handle") != "true" && cmds && cmds[0] == ctx.ACTION && can.onaction[cmds[1]]) {
return msg.Option("_handle", "true"), can.core.CallFunc(can.onaction[cmds[1]], {event: event, can: can, msg: msg, cmd: cmds[1]}) return msg.Option("_handle", "true"), can.core.CallFunc(can.onaction[cmds[1]], {event: event, can: can, msg: msg, cmd: cmds[1]})
} }
var feature = can.Conf("feature") var feature = can.Conf("feature")
var input = msg.Option("_handle") != "true" && cmds && cmds[0] == "action" && feature && feature[cmds[1]]; if (input) { var input = msg.Option("_handle") != "true" && cmds && cmds[0] == ctx.ACTION && feature && feature[cmds[1]]; if (input) {
can.user.input(event, can, input, function(ev, button, data, list, args) { can.user.input(event, can, input, function(ev, button, data, list, args) {
var msg = can.request(event, {_handle: "true"}, can.Option()) var msg = can.request(event, {_handle: "true"}, can.Option())
can.onappend._output(can, meta, event, cmds.slice(0, 2).concat(args), function(msg) { can.onappend._output(can, meta, event, cmds.slice(0, 2).concat(args), function(msg) {
@ -248,7 +248,7 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
Option: can.Option, Action: can.Action, Status: can.Status, Option: can.Option, Action: can.Action, Status: can.Status,
}, [display].concat(Volcanos.meta.volcano, Volcanos.meta.libs), function(table) { }, [display].concat(Volcanos.meta.volcano, Volcanos.meta.libs), function(table) {
table.Conf(can.Conf()), table.sup = can, table.run = function(event, cmds, cb, silent) { var msg = can.request(event) table.Conf(can.Conf()), table.sup = can, table.run = function(event, cmds, cb, silent) { var msg = can.request(event)
if (msg.Option("_handle") != "true" && cmds && cmds[0] == "action" && table.onaction[cmds[1]]) { if (msg.Option("_handle") != "true" && cmds && cmds[0] == ctx.ACTION && table.onaction[cmds[1]]) {
return msg.Option("_handle", "true"), can.core.CallFunc(table.onaction[cmds[1]], {event: event, can: table, msg: msg}) return msg.Option("_handle", "true"), can.core.CallFunc(table.onaction[cmds[1]], {event: event, can: table, msg: msg})
} }
@ -345,8 +345,10 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
can.core.List(array, function(item, index) { line[item.key||line.name] = item.value }) can.core.List(array, function(item, index) { line[item.key||line.name] = item.value })
if (key == "extra.cmd") { if (key == "extra.cmd") {
can.onappend.plugin(can, {ctx: line["extra.ctx"], cmd: line["extra.cmd"], arg: line["extra.arg"]}, function(sub) { can.onappend.plugin(can, {ctx: line["extra.ctx"], cmd: line["extra.cmd"], arg: line["extra.arg"]}, function(sub) {
sub.run = function(event, cmds, cb) { sub.run = function(event, cmds, cb) { var msg = can.request(event, can.Option(), line)
can.run(event, [ctx.ACTION, cli.RUN].concat(cmds), cb, true) can.run(event, (cmds[0] == "_search"? []: [ctx.ACTION, cli.RUN]).concat(cmds), function(msg) {
cb(msg)
}, true)
} }
}, target) }, target)
} }
@ -382,7 +384,7 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
can.page.Select(can, code, "input[type=button]", function(target) { can.page.Select(can, code, "input[type=button]", function(target) {
target.onclick = function(event) { target.onclick = function(event) {
var msg = can.sup.request(event, can.Option()) var msg = can.sup.request(event, can.Option())
return can.run(event, ["action", target.name], function(msg) { can.run() }, true) return can.run(event, [ctx.ACTION, target.name], function(msg) { can.run() }, true)
} }
}) })
code && code.scrollBy(0, 10000) code && code.scrollBy(0, 10000)
@ -432,7 +434,7 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
}, },
plugin: function(can, meta, cb, target) { meta = meta || {} plugin: function(can, meta, cb, target) { meta = meta || {}
meta.inputs && meta.inputs.length > 0? can.onappend._plugin(can, {meta: meta.meta, list: meta.list}, meta, cb, target): meta.inputs && meta.inputs.length > 0? can.onappend._plugin(can, {meta: meta.meta, list: meta.list}, meta, cb, target):
can.run({}, ["action", "command", meta.index||can.core.Keys(meta.ctx, meta.cmd)], function(msg) { msg.Table(function(value) { can.run({}, [ctx.ACTION, "command", meta.index||can.core.Keys(meta.ctx, meta.cmd)], function(msg) { msg.Table(function(value) {
can.onappend._plugin(can, value, meta, cb, target) can.onappend._plugin(can, value, meta, cb, target)
}) }, true) }) }, true)
}, },

View File

@ -84,7 +84,7 @@ Volcanos("user", {help: "用户操作", agent: {
return action return action
}, },
share: function(can, msg, cmd) { share: function(can, msg, cmd) {
can.run(msg._event, cmd||["action", "share"], function(msg) { can.run(msg._event, cmd||[ctx.ACTION, "share"], function(msg) {
can.user.toast(can, {height: 300, width: 500, can.user.toast(can, {height: 300, width: 500,
title: msg.Append("name"), duration: -1, title: msg.Append("name"), duration: -1,
content: msg.Append("text"), action: ["close"], content: msg.Append("text"), action: ["close"],
@ -96,7 +96,7 @@ Volcanos("user", {help: "用户操作", agent: {
{username: "username"}, {password: "password"}, {username: "username"}, {password: "password"},
], function(event, button, data, list) { return { ], function(event, button, data, list) { return {
"登录": function() { "登录": function() {
can.run({}, ["action", "login", data["username"], data["password"]], function(msg) { can.run({}, [ctx.ACTION, "login", data["username"], data["password"]], function(msg) {
if (msg.Option("user.name")) { if (msg.Option("user.name")) {
can.page.Remove(can, ui._target), can.base.isFunc(cb) && cb() can.page.Remove(can, ui._target), can.base.isFunc(cb) && cb()
} else { } else {
@ -126,7 +126,7 @@ Volcanos("user", {help: "用户操作", agent: {
can.page.Modify(can, ui._target, {className: "input login", style: {left: (window.innerWidth-ui._target.offsetWidth)/2, top: window.innerHeight/6}}) can.page.Modify(can, ui._target, {className: "input login", style: {left: (window.innerWidth-ui._target.offsetWidth)/2, top: window.innerHeight/6}})
}, },
logout: function(can, force) { if (force||can.user.confirm("logout?")) { logout: function(can, force) { if (force||can.user.confirm("logout?")) {
can.run({}, ["action", "logout"], function(msg) { can.user.Cookie(can, "sessid", "") can.run({}, [ctx.ACTION, "logout"], function(msg) { can.user.Cookie(can, "sessid", "")
can.user.Search(can, "share")? can.user.Search(can, "share", ""): can.user.reload(true) can.user.Search(can, "share")? can.user.Search(can, "share", ""): can.user.reload(true)
}) })
} }, } },
@ -246,7 +246,7 @@ Volcanos("user", {help: "用户操作", agent: {
var msg = can.request(event, can.Option(), {_handle: "true"}) var msg = can.request(event, can.Option(), {_handle: "true"})
msg._upload = upload[0].files[0], msg._progress = action.show msg._upload = upload[0].files[0], msg._progress = action.show
can.run(event, ["action", "upload"], function(msg) { can.run(event, [ctx.ACTION, "upload"], function(msg) {
can.user.toast(can, "上传成功"), can.Update() can.user.toast(can, "上传成功"), can.Update()
action.close() action.close()
}, true) }, true)

View File

@ -21,7 +21,7 @@
{type: "button", name: "执行"}, {type: "button", name: "执行"},
]}, function(sub, meta) { ]}, function(sub, meta) {
sub.run = function(event, cmds, cb) { sub.run = function(event, cmds, cb) {
can.run(event, ["action", "run", "cli.system"].concat(cmds), cb) can.run(event, [ctx.ACTION, "run", "cli.system"].concat(cmds), cb)
} }
}, document.body) }, document.body)
}, },

View File

@ -87,6 +87,12 @@ fieldset.plugin {
background-color:#061c3c9e; background-color:#061c3c9e;
margin:10px; padding:10px; margin:10px; padding:10px;
} }
fieldset.plugin>div.status {
border-top:1px solid darkcyan;
}
fieldset.story>div.status {
border-top:1px solid darkcyan;
}
fieldset.float { fieldset.float {
position:absolute; position:absolute;
background-color:#023531cf; background-color:#023531cf;
@ -358,9 +364,6 @@ fieldset>form.option {
fieldset>div.action { fieldset>div.action {
float:left; float:left;
} }
fieldset>div.status {
border-top:1px solid darkcyan;
}
fieldset>form.option>div.item { fieldset>form.option>div.item {
float:left; margin-right:3px; float:left; margin-right:3px;
min-height:25px; vertical-align:middle; min-height:25px; vertical-align:middle;

View File

@ -6,7 +6,7 @@ Volcanos("onaction", {help: "交互操作", list: [], _init: function(can, msg,
onmain: function(can, msg) { onmain: function(can, msg) {
var args = location.pathname.split("/").slice(1) var args = location.pathname.split("/").slice(1)
can.onappend.plugin(can, {index: args[2], args: args.slice(3), opts: can.user.Search(), width: window.innerWidth}, function(sub, meta) { can.onappend.plugin(can, {index: args[2], args: args.slice(3), opts: can.user.Search(), width: window.innerWidth}, function(sub, meta) {
sub.run = function(event, cmds, cb) { can.run(event, ["action", "run", args[2]].concat(cmds), cb) } sub.run = function(event, cmds, cb) { can.run(event, [ctx.ACTION, "run", args[2]].concat(cmds), cb) }
can.onmotion.hidden(can, sub._legend) can.onmotion.hidden(can, sub._legend)
can.user.title(meta.name) can.user.title(meta.name)
}) })

View File

@ -25,7 +25,7 @@ Volcanos("onaction", {help: "控件交互", list: [], _init: function(can, meta,
if (can.Conf("type") == "text") { event.target.setSelectionRange(0, -1) } if (can.Conf("type") == "text") { event.target.setSelectionRange(0, -1) }
}, },
onclick: function(event, can) { onclick: function(event, can) {
if (can.Conf("type") == "button") { can.run(event, ["action", can.Conf("name")].concat(can.sup.Pack())) } if (can.Conf("type") == "button") { can.run(event, [ctx.ACTION, can.Conf("name")].concat(can.sup.Pack())) }
}, },
onkeydown: function(event, can) { var target = event.target onkeydown: function(event, can) { var target = event.target

View File

@ -1,5 +1,5 @@
Volcanos("onfigure", {help: "控件详情", list: [], key: {onclick: function(event, can, meta, cb, target) { Volcanos("onfigure", {help: "控件详情", list: [], key: {onclick: function(event, can, meta, cb, target) {
can.run(event, ["action", "inputs", meta.name, target.value], function(msg) { can.run(event, [ctx.ACTION, "inputs", meta.name, target.value], function(msg) {
if (msg.Length() == 0) { return can.page.Remove(can, can._target) } if (msg.Length() == 0) { return can.page.Remove(can, can._target) }
can.onappend._action(can, ["关闭", "清空"], can._action, { can.onappend._action(can, ["关闭", "清空"], can._action, {

View File

@ -52,7 +52,7 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, list, cb,
case "inner": can.onimport.tabview(can, msg.Option("path"), msg.Option("file"), msg.Option("line")); return case "inner": can.onimport.tabview(can, msg.Option("path"), msg.Option("file"), msg.Option("line")); return
} } } }
can.run(event, ["action", "favor"].concat(cmds), function(msg) { can.run(event, [ctx.ACTION, "favor"].concat(cmds), function(msg) {
can.base.isFunc(cb) && cb(msg) can.base.isFunc(cb) && cb(msg)
can.core.Timer(10, function() { can.core.Timer(10, function() {
can.onappend._action(sub, ["关闭"], sub._action, { can.onappend._action(sub, ["关闭"], sub._action, {
@ -134,7 +134,7 @@ Volcanos("onsyntax", {help: "语法高亮", list: ["keyword", "prefix", "line"],
} }
// plugin // plugin
var p = can.onsyntax[can.parse]; !p? can.run({}, ["action", "plugin", can.parse, msg.Option("file"), msg.Option("path")], function(msg) { var p = can.onsyntax[can.parse]; !p? can.run({}, [ctx.ACTION, "plugin", can.parse, msg.Option("file"), msg.Option("path")], function(msg) {
init(p = can.onsyntax[can.parse] = can.base.Obj(msg.Result())) init(p = can.onsyntax[can.parse] = can.base.Obj(msg.Result()))
}, true): init(p) }, true): init(p)
}, },
@ -182,7 +182,7 @@ Volcanos("onaction", {help: "控件交互", list: ["项目", "收藏"],
"收藏": function(event, can) { can.onmotion.toggle(can, can.ui.favor._target) }, "收藏": function(event, can) { can.onmotion.toggle(can, can.ui.favor._target) },
"搜索": function(event, can) { can.onmotion.toggle(can, can.ui.search) }, "搜索": function(event, can) { can.onmotion.toggle(can, can.ui.search) },
"运行": function(event, can) { var msg = can.request(event, {_toast: "运行中..."}) "运行": function(event, can) { var msg = can.request(event, {_toast: "运行中..."})
can.run(event, ["action", "engine", can.parse, can.Option("file"), can.Option("path")], function(msg) { can.run(event, [ctx.ACTION, "engine", can.parse, can.Option("file"), can.Option("path")], function(msg) {
can.onappend.table(can, msg, null, can.ui.output||can.ui.display) can.onappend.table(can, msg, null, can.ui.output||can.ui.display)
can.onappend.board(can, msg.Result(), can.ui.output||can.ui.display) can.onappend.board(can, msg.Result(), can.ui.output||can.ui.display)
can.page.Modify(can, can.ui.display, {style: {display: "block"}}) can.page.Modify(can, can.ui.display, {style: {display: "block"}})
@ -270,7 +270,7 @@ Volcanos("onaction", {help: "控件交互", list: ["项目", "收藏"],
value = can.ui.word.value = value || can.ui.word.value || "main" value = can.ui.word.value = value || can.ui.word.value || "main"
can.request(event, {_toast: "搜索中..."}) can.request(event, {_toast: "搜索中..."})
can.run(event, ["action", "search", can.parse, value, can.Option("path")], function(msg) { can.run(event, [ctx.ACTION, "search", can.parse, value, can.Option("path")], function(msg) {
can.onmotion.clear(can, can.ui.tags) can.onmotion.clear(can, can.ui.tags)
can.onappend.table(can, msg, function(value, key, index, line) { can.onappend.table(can, msg, function(value, key, index, line) {
@ -312,8 +312,8 @@ Volcanos("onaction", {help: "控件交互", list: ["项目", "收藏"],
{name: "zone", value: "@key=some"}, {name: "zone", value: "@key=some"},
{name: "name", value: "@key=some"}, {name: "name", value: "@key=some"},
], function(event, button, meta, list) { ], function(event, button, meta, list) {
can.run(event, ["action", "favor", can.run(event, [ctx.ACTION, "favor",
"action", "insert", "zone", meta.zone||"some", ctx.ACTION, "insert", "zone", meta.zone||"some",
"type", can.parse, "name", meta.name||"some", "text", (value||"").trimRight(), "type", can.parse, "name", meta.name||"some", "text", (value||"").trimRight(),
"path", can.Option("path"), "file", can.Option("file"), "line", can.Option("line"), "path", can.Option("path"), "file", can.Option("file"), "line", can.Option("line"),
], function(msg) { ], function(msg) {

View File

@ -141,7 +141,7 @@ Volcanos("onkeymap", {help: "键盘交互", list: ["command", "normal", "insert"
can.onkeymap._normal(can) can.onkeymap._normal(can)
cb(event, can, line, ls) cb(event, can, line, ls)
} else { } else {
can.onkeymap._remote(event, can, line, ["action", "engine"].concat(ls)) can.onkeymap._remote(event, can, line, [ctx.ACTION, "engine"].concat(ls))
} }
}, },
jk: function(event, can) { can.keylist = can.keylist.slice(0, -1) jk: function(event, can) { can.keylist = can.keylist.slice(0, -1)
@ -299,7 +299,7 @@ Volcanos("onkeymap", {help: "键盘交互", list: ["command", "normal", "insert"
}) })
Volcanos("onaction", {help: "控件交互", list: ["项目"], Volcanos("onaction", {help: "控件交互", list: ["项目"],
save: function(event, can) { var msg = can.request(event, {content: can.onexport.content(can)}) save: function(event, can) { var msg = can.request(event, {content: can.onexport.content(can)})
can.run(event, ["action", "save", can.parse, can.Option("file"), can.Option("path")], function(msg) { can.run(event, [ctx.ACTION, "save", can.parse, can.Option("file"), can.Option("path")], function(msg) {
can.user.toast(can, "保存成功") can.user.toast(can, "保存成功")
}, true) }, true)
}, },

View File

@ -78,7 +78,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg,
}, },
onclick: function(event) { if (event.target.type == "button") { onclick: function(event) { if (event.target.type == "button") {
var msg = can.request(event, can.task) var msg = can.request(event, can.task)
can.run(event, ["action", event.target.name], function(msg) { can.run(event, [ctx.ACTION, event.target.name], function(msg) {
can.run() can.run()
}, true) }, true)
} }, } },
@ -89,7 +89,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg,
}, function(sub, meta) { }, function(sub, meta) {
sub.run = function(event, cmds, cb) { sub.run = function(event, cmds, cb) {
var msg = can.request(event, {"task.zone": task.zone, "task.id": task.id}) var msg = can.request(event, {"task.zone": task.zone, "task.id": task.id})
can.run(event, ["action", "command", "run", meta.index].concat(cmds), function(msg) { can.run(event, [ctx.ACTION, "command", "run", meta.index].concat(cmds), function(msg) {
can.base.isFunc(cb) && cb(msg) can.base.isFunc(cb) && cb(msg)
}, true) }, true)
} }
@ -170,7 +170,7 @@ Volcanos("onaction", {help: "组件交互", list: [
], ],
insertTask: function(event, can, time) { var msg = can.sup.request(event, {begin_time: time}) insertTask: function(event, can, time) { var msg = can.sup.request(event, {begin_time: time})
can.user.input(event, can, can.Conf("feature.insert"), function(event, button, data, list) { can.user.input(event, can, can.Conf("feature.insert"), function(event, button, data, list) {
var args = ["action", "insert"]; can.core.Item(data, function(key, value) { var args = [ctx.ACTION, "insert"]; can.core.Item(data, function(key, value) {
if (key == "begin_time") { value = value || time } if (key == "begin_time") { value = value || time }
if (key == "close_time") { value = value || time } if (key == "close_time") { value = value || time }
key && value && args.push(key, value) key && value && args.push(key, value)
@ -179,7 +179,7 @@ Volcanos("onaction", {help: "组件交互", list: [
}, },
modifyTask: function(event, can, task, key, value) { modifyTask: function(event, can, task, key, value) {
var msg = can.request(event, task) var msg = can.request(event, task)
can.run(event, ["action", "modify", key, value, task[key]], function(msg) { can.run(event, [ctx.ACTION, "modify", key, value, task[key]], function(msg) {
task[key] = value, can.onimport._profile(can, task) task[key] = value, can.onimport._profile(can, task)
can.user.toast(can, "修改成功") can.user.toast(can, "修改成功")
}, true) }, true)

View File

@ -54,7 +54,7 @@ Volcanos("onaction", {help: "组件菜单", list: ["保存", ["mode", "全选",
}, },
"保存": function(event, can, cmd) { "保存": function(event, can, cmd) {
can.run(event, ["action", cmd, can.Option("path"), can.onexport.file(can)], function(msg) { can.run(event, [ctx.ACTION, cmd, can.Option("path"), can.onexport.file(can)], function(msg) {
can.user.toast(can, "保存成功") can.user.toast(can, "保存成功")
}, true) }, true)
}, },

View File

@ -323,7 +323,7 @@ Volcanos("onaction", {help: "组件菜单", list: [
"编辑": function(event, can, key) { can.Action("go", "auto") }, "编辑": function(event, can, key) { can.Action("go", "auto") },
"save": function(event, can, key) { "save": function(event, can, key) {
var msg = can.request(event, {content: can.onexport.content(can, can.svg)}) var msg = can.request(event, {content: can.onexport.content(can, can.svg)})
can.run(event, ["action", "save", can.Option("path"), can.Option("file")], function(msg) { can.run(event, [ctx.ACTION, "save", can.Option("path"), can.Option("file")], function(msg) {
can.user.toast(can, "保存成功") can.user.toast(can, "保存成功")
}, true) }, true)
}, },
@ -433,7 +433,7 @@ Volcanos("onaction", {help: "组件菜单", list: [
}) })
}, },
run: function(event, can) { var target = event.target run: function(event, can) { var target = event.target
event.type == "click" && target.Value("type") && can.run(event, ["action", "run", target.Value("zone"), target.Value("type"), target.Value("name"), target.Value("text")], function(msg) { event.type == "click" && target.Value("type") && can.run(event, [ctx.ACTION, "run", target.Value("zone"), target.Value("type"), target.Value("name"), target.Value("text")], function(msg) {
can.onappend.table(can, msg, function() {}, can.ui.display) can.onappend.table(can, msg, function() {}, can.ui.display)
can.onappend.board(can, msg.Result(), can.ui.display) can.onappend.board(can, msg.Result(), can.ui.display)
}, true) }, true)

View File

@ -45,7 +45,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg,
item.type = "story" item.type = "story"
can.onappend._init(can, item, ["/plugin/state.js"], function(sub) { can.onappend._init(can, item, ["/plugin/state.js"], function(sub) {
sub.run = function(event, cmds, cb, silent) { sub.run = function(event, cmds, cb, silent) {
can.run(event, (cmds && can.onengine[cmds[0]]? []: ["action", "story", data.type, data.name, data.text]).concat(cmds), cb, true) can.run(event, (cmds && can.onengine[cmds[0]]? []: [ctx.ACTION, "story", data.type, data.name, data.text]).concat(cmds), cb, true)
} }
can.page.Modify(can, sub._output, {style: {"max-width": item.width}}) can.page.Modify(can, sub._output, {style: {"max-width": item.width}})

View File

@ -94,7 +94,7 @@ Volcanos("onaction", {help: "交互操作", list: [
can.onlayout.figure(event, can, ui._target, true) can.onlayout.figure(event, can, ui._target, true)
}, },
"生成链接": function(event, can) { var meta = can.Conf() "生成链接": function(event, can) { var meta = can.Conf()
var args = can.Option(); args._path = "/chat/cmd/"+meta.index var args = can.Option(); args._path = "/chat/cmd/"+(meta.index||can.core.Keys(meta.ctx, meta.cmd))
var msg = can.request(event, {link: can.user.MergeURL(can, args)}) var msg = can.request(event, {link: can.user.MergeURL(can, args)})
can.search(event, ["Header.onaction.share"]) can.search(event, ["Header.onaction.share"])
}, },

View File

@ -142,7 +142,7 @@ Volcanos("ondetail", {help: "用户交互", list: [],
plugin: function(event, can, args) { plugin: function(event, can, args) {
can.onappend.plugin(can, {type: "float", index: "web.code.inner", args: args, _action: ["关闭"]}, function(sub) { can.onappend.plugin(can, {type: "float", index: "web.code.inner", args: args, _action: ["关闭"]}, function(sub) {
sub.run = function(event, cmds, cb) { sub.run = function(event, cmds, cb) {
can.run(event, ["action", "inner"].concat(cmds), function(msg) { can.run(event, [ctx.ACTION, "inner"].concat(cmds), function(msg) {
can.search(event, ["Action.onexport.size"], function(msg, left, top, width, height) { left = left||0 can.search(event, ["Action.onexport.size"], function(msg, left, top, width, height) { left = left||0
var top = 120, margin = 20; if (can.user.isMobile) { margin = 0 var top = 120, margin = 20; if (can.user.isMobile) { margin = 0
if (can.user.isLandscape) { if (can.user.isLandscape) {