1
0
mirror of https://shylinux.com/x/volcanos synced 2025-04-25 16:58:06 +08:00
This commit is contained in:
shaoying 2020-08-11 08:32:27 +08:00
parent 4fd058f1bb
commit 9e6fe0a8c9
7 changed files with 24 additions and 26 deletions

View File

@ -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) {
},

View File

@ -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) }

View File

@ -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) {

View File

@ -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;

View File

@ -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)
},

View File

@ -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")
})

View File

@ -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) {