diff --git a/panel/header.js b/panel/header.js index caf2f818..3f9679de 100644 --- a/panel/header.js +++ b/panel/header.js @@ -110,6 +110,19 @@ Volcanos(chat.ONPLUGIN, {help: "注册插件", "log": shy("日志", {}, ["text", "list", "back"], function(can, msg, cmds) { console.log(cmds[0]) }), + "location": shy("地址", { + copy: function(can, msg, cmds) { + can.user.copy(msg._event, can, location.href) + }, + }, ["link", "list", "back", "copy"], function(can, msg, cmds, cb) { + var _msg = can.request({}, mdb.LINK, location.href) + can.run(_msg._event, [web.SHARE], function(res) { + msg.Echo(res.Append(mdb.TEXT)) + msg.Echo("\n") + msg.Echo(can.page.Format(html.A, res.Append(mdb.NAME))) + can.base.isFunc(cb) && cb(msg) + }) + }), }) Volcanos(chat.ONACTION, {help: "交互数据", _menus: [["setting", chat.BLACK, chat.WHITE, chat.PRINT, code.WEBPACK, "toimage"]], diff --git a/plugin/input/key.js b/plugin/input/key.js index 64ac36af..37ffd96f 100644 --- a/plugin/input/key.js +++ b/plugin/input/key.js @@ -1,6 +1,11 @@ Volcanos(chat.ONFIGURE, {help: "控件详情", key: { _init: function(event, can, cbs, target, name, value) { can.runAction(event, mdb.INPUTS, [name, value||target.value], function(msg) { + if (name == ctx.INDEX) { + can.core.Item(can.onengine.plugin.meta, function(key, cb) { + msg.Push(ctx.INDEX, can.core.Keys("can", key)) + }) + } can.onfigure.key._show(can, msg, cbs, target, name) }) }, diff --git a/plugin/local/code/inner.js b/plugin/local/code/inner.js index bb3150cd..60163821 100644 --- a/plugin/local/code/inner.js +++ b/plugin/local/code/inner.js @@ -281,8 +281,15 @@ Volcanos(chat.ONACTION, {help: "控件交互", _trans: {link: "链接", width: " }, "打开": function(event, can) { can.user.input(can.request(event, {paths: can.sup.paths.join(ice.FS)}), can, [nfs.FILE], function(list) { - if (list[0].indexOf("line:") == 0) { return can.onaction.selectLine(can, parseInt(can.core.Split(list[0], ice.DF, ice.DF)[1])), can.current.scroll(can.current.scroll()-4) } - can.core.List(can.sup.paths, function(path) { if (list[0].indexOf(path) == 0) { can.onimport.tabview(can, path, list[0].slice(path.length)) } }) + var ls = can.core.Split(list[0], ice.DF, ice.DF); switch (ls[0]) { + case ctx.INDEX: + case web.DREAM: + return can.onimport.tabview(can, can.Option(nfs.PATH), ls[1], ls[0]) + case nfs.LINE: + return can.onaction.selectLine(can, parseInt(ls[1])), can.current.scroll(can.current.scroll()-4) + default: + can.core.List(can.sup.paths, function(path) { if (list[0].indexOf(path) == 0) { can.onimport.tabview(can, path, list[0].slice(path.length)) } }) + } }) }, show: function(event, can) { @@ -351,6 +358,7 @@ Volcanos(chat.ONIMPORT, {help: "导入数据", _init: function(can, msg, cb, tar msg.Option(nfs.LINE) && can.Option(nfs.LINE, msg.Option(nfs.LINE)) } + can.onengine.plugin(can, can.onplugin) var paths = can.core.Split(can.Option(nfs.PATH), ice.FS); can.Option(nfs.PATH, paths[0]) var files = can.core.Split(can.Option(nfs.FILE), ice.FS); can.Option(nfs.FILE, files[0]) can.core.List(paths.concat(msg.modules||[], can.sup.paths||[]), function(p) { if (paths.indexOf(p) == -1) { paths.push(p) } })