diff --git a/frame.js b/frame.js index 4c3da9b2..48ebc609 100644 --- a/frame.js +++ b/frame.js @@ -1,7 +1,7 @@ // volcanos: 前端 火山架 我看不行 // FMS: a fieldset manager system -Volcanos("onengine", { _init: function(can, meta, list, cb, target) { +Volcanos("onengine", {help: "解析引擎", list: [], _init: function(can, meta, list, cb, target) { can.core.Next(meta.panes, function(item, next) { can.onappend._init(can, item, meta.libs.concat(item.list), function(pane) { pane.Conf(item) pane.run = function(event, cmds, cb) { @@ -9,15 +9,15 @@ Volcanos("onengine", { _init: function(can, meta, list, cb, target) { }, can[item.name] = pane, next() }, target) }, function() { - can.onlayout._init(can, meta, list, function() { - can.require(Volcanos.meta.webpack? []: meta.main.list, function(can) { - can.onkeypop._init(can) - can.onengine._topic(can) - can.onengine._daemon(can, can.user.title()) - var pane = can[meta.main.name], msg = can.request({}) - pane.onaction && pane.onaction._init(pane, msg, msg.option||[], cb, target) - }) - }, target) + can.onlayout._init(can, meta, list, function() {}, target) + can.onengine._daemon(can, can.user.title()) + can.onengine._topic(can) + can.onkeypop._init(can) + + can.require(Volcanos.meta.webpack? []: meta.main.list, function(can) { + var pane = can[meta.main.name], msg = can.request({}) + pane.onaction && pane.onaction._init(pane, msg, msg.option||[], cb, target) + }) }) }, _merge: function(can, sub) { @@ -243,7 +243,7 @@ Volcanos("onengine", { _init: function(can, meta, list, cb, target) { }}, }, }) -Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) { meta.name = meta.name.split(" ")[0] +Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta, list, cb, target, field) { meta.name = meta.name.split(" ")[0] field = field || can.onappend.field(can, target, meta.type||"plugin", meta).first var legend = can.page.Select(can, field, "legend")[0] var option = can.page.Select(can, field, "form.option")[0] @@ -384,6 +384,7 @@ Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) { met var display = (msg.Option("_plugin")||msg.Option("_display")||meta.feature.plugin||meta.feature.display||"table.js") display.indexOf("/") == 0 || (display = "/plugin/"+display) + display.endsWith(".js") || (display += ".js") var table = Volcanos(display, { _help: display, _follow: can._follow+"."+display, _target: can._output, _option: can._option, _action: can._action, _output: can._output, _status: can._status, _fields: can._target, Option: can.Option, Action: can.Action, Status: can.Status, @@ -566,7 +567,7 @@ Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) { met msg.result && can.page.AppendBoard(can, target, can.page.Display(msg.Result())) }, }, [], function(can) {}) -Volcanos("onlayout", { _init: function(can, meta, list, cb, target) { +Volcanos("onlayout", {help: "页面布局", list: [], _init: function(can, meta, list, cb, target) { if (can.user.Search(can, "share")) { return typeof cb == "function" && cb() } var width = can._width, height = can._height @@ -630,10 +631,8 @@ Volcanos("onkeypop", {help: "键盘交互", list: [], _init: function(can) { event.preventDefault() } document.body.onkeyup = function(event) { - console.log(event) } -}, - action: null, +}, action: null, }) Volcanos("onmotion", {help: "动态交互", list: [], _init: function(can) { }, diff --git a/lib/user.js b/lib/user.js index 0e13a56e..71819ad4 100644 --- a/lib/user.js +++ b/lib/user.js @@ -25,7 +25,7 @@ var user = Volcanos("user", {help: "用户模块", }) }, toast: function(can, text, title, duration) { - var meta = typeof text == "object"? text: {text: text, title: title, duration: duration} + var meta = typeof text == "object"? text: {text: text, title: title||can._help, duration: duration} var width = meta.width||200, height = meta.height||100 var ui = can.page.Append(can, document.body, [{view: "toast", style: { @@ -38,7 +38,7 @@ var user = Volcanos("user", {help: "用户模块", ]}]) can.Timer({value: 100, length: (meta.duration||1000)/100}, function(event, interval, index) { - if (index > 20) { ui.duration.innerHTML = (index/10)+"s..." } + if (index > 20) { ui.duration.innerHTML = parseInt(index/10)+"."+(index%10)+"s..." } }, function() { can.page.Remove(can, ui.first) }) ui.Close = function() { can.page.Remove(can, ui.first) } diff --git a/pane/Header.js b/pane/Header.js index d745e9f2..e99e6e0d 100644 --- a/pane/Header.js +++ b/pane/Header.js @@ -32,9 +32,10 @@ Volcanos("onaction", {help: "交互数据", list: [], _init: function(can, msg, can.core.Item(Volcanos.meta.pack, function(key, msg) { delete(msg._event), delete(msg._can) }) + var toast = can.user.toast(can, "打包中...", "webpack", 1000000) msg.Option("content", JSON.stringify(Volcanos.meta.pack)) can.run(event, ["pack"], function(msg) { - can.user.toast(can, "保存成功") + toast.Close(), can.user.toast(can, "打包成功", "webpack") }) }, white: function(event, can, key) { diff --git a/plugin/local/wiki/feel.css b/plugin/local/wiki/feel.css index 0c485f40..92da2645 100644 --- a/plugin/local/wiki/feel.css +++ b/plugin/local/wiki/feel.css @@ -3,7 +3,7 @@ fieldset.feel div.action { } fieldset.feel div.output { - min-height:200px; + min-height:100px; } fieldset.feel div.output div.content { max-height:200px; diff --git a/plugin/local/wiki/feel.js b/plugin/local/wiki/feel.js index 47babfb0..00a056da 100644 --- a/plugin/local/wiki/feel.js +++ b/plugin/local/wiki/feel.js @@ -4,8 +4,8 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, can.begin = 0 can.Action("倍速", can.rate = 1) - can.Action("数量", can.limit = parseInt(msg.Option("limit"))||3) - can.Action("高度", can.height = parseInt(msg.Option("height"))||200) + can.Action("数量", can.limit = parseInt(msg.Option("limit"))||6) + can.Action("高度", can.height = parseInt(msg.Option("height"))||100) can.Option("path") != "最近/" && can.onimport.page(can, can._msg.Table(), can.begin, can.limit) }, page: function(can, list, begin, limit) { can._target.innerHTML = "" @@ -90,7 +90,7 @@ Volcanos("onaction", {help: "组件菜单", list: [ can.rate = parseInt(value), can.onimport.page(can, can._msg.Table(), can.begin, can.limit) }, }) -Volcanos("onexport", {help: "导出数据", list: ["begin", "limit", "total", "position", "文件"], +Volcanos("onexport", {help: "导出数据", list: ["total", "begin", "limit", "position", "文件"], position: function(can, index, total) { total = total || can.max return parseInt((index+1)*100/total)+"%"+" = "+(parseInt(index)+1)+"/"+parseInt(total) }, diff --git a/plugin/story/spide.js b/plugin/story/spide.js index 25c8b993..76cf6cb7 100644 --- a/plugin/story/spide.js +++ b/plugin/story/spide.js @@ -24,7 +24,7 @@ Volcanos("onimport", {help: "导入数据", list: [], can.Action("speed", "100") can.Action("scale", "1") can.Action("stroke-width", "1") - can.sub.svg.Value("transform", "scale("+can.Action("scale")+")") + can.sub.svg.Value("transform", "scale("+(can.Action("scale")||1)+")") can.onaction["横向"](event, can) sub.Action("go", "run") }) diff --git a/proto.js b/proto.js index 5dd6a01b..c01cbe1d 100644 --- a/proto.js +++ b/proto.js @@ -1,4 +1,3 @@ -var _can_name = "" function shy(help, meta, list, cb) { var index = -1, value = "", type = "string", args = arguments; function next(check) { if (++index >= args.length) {return false} @@ -12,6 +11,7 @@ function shy(help, meta, list, cb) { cb.list = next("object") || [] return cb } +var _can_name = "" var Volcanos = shy("火山架", {cache: {}, index: 1, order: 1, debug: { }, libs: [], pack: {}}, [], function(name, can, libs, cb) { var meta = arguments.callee.meta, list = arguments.callee.list if (typeof name == "object") { var Config = name @@ -176,13 +176,11 @@ var Volcanos = shy("火山架", {cache: {}, index: 1, order: 1, debug: { } cache[name] = {node: temp, data: data} - console.log(can._root, can._name, "save", name, cache[name]) return name } output.innerHTML = "" var list = cache[name]; if (!list) {return} - console.log(can._root, can._name, "load", name, cache[name]) // 读缓存 while (list.node.childNodes.length>0) {