diff --git a/frame.js b/frame.js
index 38dafcd3..e590fb0a 100644
--- a/frame.js
+++ b/frame.js
@@ -6,7 +6,7 @@ Volcanos("onaction", { _init: function(can, meta, list, cb, target) {
}, can[item.name] = pane, next();
}, can._target);
}, function() { can.onlayout._init(can, meta, list, function() {
- can.require(["publish/order.js"], function(can) {
+ can.require(["/publish/order.js"], function(can) {
function getAction() {}
function getStorm(storm) { can.core.Item(storm, function(key, value) {
value._link? can.require([value._link], function(can) {
@@ -64,6 +64,10 @@ Volcanos("onaction", { _init: function(can, meta, list, cb, target) {
can.core.List(storm.action, function(value) {
msg.Push("name", value.name||"");
msg.Push("help", value.help||"");
+ msg.Push("pod", value.pod||"");
+ msg.Push("group", value.group||"");
+ msg.Push("index", value.index||"");
+ msg.Push("args", value.args||"[]");
msg.Push("inputs", JSON.stringify(value.inputs||[]));
msg.Push("feature", JSON.stringify(value.feature||{}));
})
@@ -108,7 +112,7 @@ Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) {
_target: can.onappend.input(sub, option, item.type, item, args[index]),
_option: option, _action: action, _output: output,
_follow: can._follow+"."+meta.name+"."+item.name,
- }, Config.libs.concat([item.display||"plugin/input.js"]), function(input) {
+ }, Config.libs.concat([item.display||"/plugin/input.js"]), function(input) {
input.onimport._init(input, input.Conf(item), item.list||[], function() {}, input._target);
input.run = function(event, cmds, cb, silent) {
@@ -135,12 +139,12 @@ Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) {
// 添加组件
var display = (msg.Option("_display")||feature.display||"table.js")
- display.indexOf("/") == 0 || (display = "plugin/"+display)
+ display.indexOf("/") == 0 || (display = "/plugin/"+display)
sub[display] = Volcanos(display, { _target: output,
_option: option, _action: action, _output: output,
_follow: can._follow+"."+meta.name+"."+display,
- }, Config.libs.concat(["frame.js", display]), function(table) { table.Conf(sub.Conf())
+ }, Config.libs.concat(["/frame.js", display]), function(table) { table.Conf(sub.Conf())
table.onimport._init(table, msg, msg.append||[], function() {}, output)
table.run = function(event, cmds, cb, silent) {
@@ -223,7 +227,7 @@ Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) {
item.value == "auto" && (item.value = "")
item.action == "auto" && (input.dataset.action = "auto")
var target = can.page.Append(can, option, [{view: ["item "+item.type], list: [item.position && {text: item.name+": "}, input]}]).last
- item.figure && item.figure.indexOf("@") == 0 && (item.figure = item.figure.slice(1)) && can.require(["plugin/input/"+item.figure], function() {
+ item.figure && item.figure.indexOf("@") == 0 && (item.figure = item.figure.slice(1)) && can.require(["/plugin/input/"+item.figure], function() {
target.type != "button" && (target.value = "")
})
diff --git a/index.html b/index.html
index fd8afa22..d1830245 100644
--- a/index.html
+++ b/index.html
@@ -4,11 +4,11 @@
volcanos
-
+
-
-
+
+
diff --git a/index.js b/index.js
index f1fa9372..b3c065b1 100644
--- a/index.js
+++ b/index.js
@@ -1,20 +1,20 @@
-var Config = {name: "demo", volcano: "frame.js", iceberg: "/chat/", intshell: "plug.sh",
- libs: ["lib/base", "lib/core", "lib/misc", "lib/page", "lib/user"], panes: [
- {type: "pane", name: "Header", help: "标题栏", pos: "head", list: ["pane/Header.js", "pane/Header.css"], state: [
+var Config = {name: "demo", volcano: "/frame.js", iceberg: "/chat/", intshell: "plug.sh",
+ libs: ["/lib/base", "/lib/core", "/lib/misc", "/lib/page", "/lib/user"], panes: [
+ {type: "pane", name: "Header", help: "标题栏", pos: "head", list: ["/pane/Header.js", "/pane/Header.css"], state: [
"time", "username",
]},
- {type: "pane", name: "River", help: "群聊组", pos: "left", list: ["pane/River.js", "pane/River.css"]},
- {type: "pane", name: "Storm", help: "应用流", pos: "right", list: ["pane/Storm.js", "pane/Storm.css"]},
- {type: "pane", name: "Action", help: "工作台", pos: "middle", list: ["pane/Action.js", "pane/Action.css"]},
- {type: "pane", name: "Footer", help: "状态条", pos: "foot", list: ["pane/Footer.js", "pane/Footer.css"], state: [
+ {type: "pane", name: "River", help: "群聊组", pos: "left", list: ["/pane/River.js", "/pane/River.css"]},
+ {type: "pane", name: "Storm", help: "应用流", pos: "right", list: ["/pane/Storm.js", "/pane/Storm.css"]},
+ {type: "pane", name: "Action", help: "工作台", pos: "middle", list: ["/pane/Action.js", "/pane/Action.css"]},
+ {type: "pane", name: "Footer", help: "状态条", pos: "foot", list: ["/pane/Footer.js", "/pane/Footer.css"], state: [
"ncmd",
]},
], main: {name: "Header", engine: "remote", list: []},
- list: ["plugin/state.js", "plugin/input.js", "plugin/table.js",
- "plugin/input/key",
- "plugin/input/date",
- "plugin/input/upload",
- "plugin/input/province",
+ list: ["/plugin/state.js", "/plugin/input.js", "/plugin/table.js",
+ "/plugin/input/key",
+ "/plugin/input/date",
+ "/plugin/input/upload",
+ "/plugin/input/province",
],
}
diff --git a/pane/Action.js b/pane/Action.js
index b5585ac9..21331f9d 100644
--- a/pane/Action.js
+++ b/pane/Action.js
@@ -6,6 +6,19 @@ Volcanos("onaction", {help: "交互操作", list: [],
can.onexport._init(can, msg, list, cb, target)
},
})
+Volcanos("ondetail", {help: "交互菜单", list: ["共享", "更名", "删除"],
+ "共享": function(event, can, value) {
+ var msg = can.request(event)
+ msg.Option("name", "storm")
+ msg.Option("node", value.pod)
+ msg.Option("group", value.group)
+ msg.Option("index", value.index)
+ msg.Option("args", value.args)
+ msg.Option("storm", can.Conf("storm"))
+ msg.Option("river", can.Conf("river"))
+ can.onappend.share(can, msg)
+ },
+})
Volcanos("onexport", {help: "导出数据", list: [],
_init: function(can, msg, list, cb, target) { var key = "action";
can.Cache(can.Conf("river")+"."+can.Conf("storm"), can._output, can._output.scrollTop+1);
@@ -16,7 +29,7 @@ Volcanos("onexport", {help: "导出数据", list: [],
msg.Clear("option"), can.run(msg._event, [river, storm], function(sup) { can._output.innerHTML = ""; sup.Table(function(value, index, array) {
value.inputs = can.base.Obj(value.inputs, [])
value.inputs.length == 0 && (value.inputs = [{type: "text"}, {type: "button", name: "查看"}])
- can.onappend._init(can, value, Config.libs.concat(["plugin/state.js"]), function(sub) {
+ can.onappend._init(can, value, Config.libs.concat(["/plugin/state.js"]), function(sub) {
sub.run = function(event, cmds, cb, silent) { var msg = can.request(event, {_msg: sup});
// 插件回调
can.run(event, [river, storm, index].concat(cmds), function(msg) {
@@ -25,6 +38,11 @@ Volcanos("onexport", {help: "导出数据", list: [],
typeof cb == "function" && cb(msg)
}, silent);
}
+ sub._target.oncontextmenu = function(event) {
+ can.onappend.carte(can, can.ondetail, can.ondetail.list, function(event, item, meta) {
+ meta[item] && meta[item](event, can, value)
+ })
+ }
}, can._output);
}) })
},
diff --git a/pane/Storm.js b/pane/Storm.js
index 78a05b3e..8753e652 100644
--- a/pane/Storm.js
+++ b/pane/Storm.js
@@ -7,9 +7,6 @@ Volcanos("onaction", {help: "交互操作", list: [],
},
})
Volcanos("ondetail", {help: "交互菜单", list: ["共享", "更名", "删除"],
- _init: function(can, msg, list, cb, target) {
- can.onexport._init(can, msg, list, cb, target)
- },
"共享": function(event, can, value) {
var msg = can.request(event)
msg.Option("name", "storm")
@@ -35,7 +32,6 @@ Volcanos("onexport", {help: "导出数据", list: [],
// 右键点击
can.onappend.carte(can, can.ondetail, can.ondetail.list, function(event, item, meta) {
meta[item] && meta[item](event, can, value)
- console.log(item)
})
});