mirror of
https://shylinux.com/x/volcanos
synced 2025-04-26 01:04:06 +08:00
opt git.status
This commit is contained in:
parent
54af1c8698
commit
2496b5864b
48
frame.js
48
frame.js
@ -1,4 +1,4 @@
|
|||||||
var _can_name = "/frame.js"
|
var _can_name = "/frame.js"
|
||||||
Volcanos("onengine", {help: "解析引擎", list: [], _init: function(can, meta, list, cb, target) {
|
Volcanos("onengine", {help: "解析引擎", list: [], _init: function(can, meta, list, cb, target) {
|
||||||
can.core.Next(list, function(item, next) { item.type = "panel"
|
can.core.Next(list, function(item, next) { item.type = "panel"
|
||||||
can.onappend._init(can, item, item.list, function(panel) {
|
can.onappend._init(can, item, item.list, function(panel) {
|
||||||
@ -20,7 +20,7 @@ Volcanos("onengine", {help: "解析引擎", list: [], _init: function(can, meta,
|
|||||||
fun && (sub = mod, mod = fun, fun = mod[value], key = value)
|
fun && (sub = mod, mod = fun, fun = mod[value], key = value)
|
||||||
}); if (!sub || !mod || !fun) {
|
}); if (!sub || !mod || !fun) {
|
||||||
can.base.Warn("not found", cmds[1])
|
can.base.Warn("not found", cmds[1])
|
||||||
cb(msg.Echo("warn: ", "not found: ", cmds[1]))
|
can.base.isFunc(cb) && cb(msg.Echo("warn: ", "not found: ", cmds[1]))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -264,7 +264,8 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
|
|||||||
function add(item, next) { item._input != "button" && item.type != "button" && index++
|
function add(item, next) { item._input != "button" && item.type != "button" && index++
|
||||||
Volcanos(item.name, {_follow: can._follow+"."+item.name,
|
Volcanos(item.name, {_follow: can._follow+"."+item.name,
|
||||||
_option: can._option, _action: can._action, _output: can._output, _status: can._status,
|
_option: can._option, _action: can._action, _output: can._output, _status: can._status,
|
||||||
_target: can.onappend.input(can, item, args[index]||meta.option[item.name], option),
|
// _target: can.onappend.input(can, item, args[index]||meta.option[item.name], option),
|
||||||
|
_target: can.onappend.input(can, item, args[index], option),
|
||||||
Option: can.Option, Action: can.Action, Status: can.Status,
|
Option: can.Option, Action: can.Action, Status: can.Status,
|
||||||
CloneInput: function() { add(item)._target.focus() },
|
CloneInput: function() { add(item)._target.focus() },
|
||||||
CloneField: function() { can.Clone() },
|
CloneField: function() { can.Clone() },
|
||||||
@ -339,6 +340,7 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
|
|||||||
}
|
}
|
||||||
|
|
||||||
return can.run(event, cmds, function(msg) { var sub = can.core.Value(can, "_outputs.-1")
|
return can.run(event, cmds, function(msg) { var sub = can.core.Value(can, "_outputs.-1")
|
||||||
|
can._msg = msg
|
||||||
if (can.core.CallFunc([sub, "onimport._process"], [sub, msg, cmds, cb])) { return }
|
if (can.core.CallFunc([sub, "onimport._process"], [sub, msg, cmds, cb])) { return }
|
||||||
if (can.core.CallFunc([can, "onimport._process"], [can, msg, cmds, cb])) { return }
|
if (can.core.CallFunc([can, "onimport._process"], [can, msg, cmds, cb])) { return }
|
||||||
if (can.base.isFunc(cb) && cb(msg)) { return }
|
if (can.base.isFunc(cb) && cb(msg)) { return }
|
||||||
@ -536,43 +538,7 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
|
|||||||
|
|
||||||
can.onappend._init(can, meta, ["/plugin/state.js"], function(sub) {
|
can.onappend._init(can, meta, ["/plugin/state.js"], function(sub) {
|
||||||
meta.type == "story" && sub.page.Remove(sub, sub._legend)
|
meta.type == "story" && sub.page.Remove(sub, sub._legend)
|
||||||
can.base.isFunc(cb) && cb(sub, meta)
|
sub.base.isFunc(cb) && cb(sub, meta)
|
||||||
can.page.Modify(sub, sub._legend, {
|
|
||||||
onmouseenter: function(event) {
|
|
||||||
Volcanos.meta.data.menu && can.page.Remove(can, Volcanos.meta.data.menu.first)
|
|
||||||
Volcanos.meta.data.menu = can.user.carte(event, can, {
|
|
||||||
"保存参数": function(event) {
|
|
||||||
var msg = can.request(event, {river: can.Conf("river"), storm: can.Conf("storm"), id: meta.id})
|
|
||||||
can.run(event, ["action", "modify", "arg", JSON.stringify(sub.Pack([], true))], function(msg) {
|
|
||||||
can.user.toast(can, "保存成功")
|
|
||||||
})
|
|
||||||
},
|
|
||||||
"清空参数": function(event) {
|
|
||||||
can.page.Select(can, sub._option, '.args', function(item) { return item.value = "" })
|
|
||||||
},
|
|
||||||
"共享工具": function(event) {
|
|
||||||
can.user.input(event, can, ["name"], function(event, button, data, list, args) {
|
|
||||||
can.user.share(can, can.request(event), ["action", "share", "type", "field",
|
|
||||||
"name", list[0], "text", JSON.stringify(sub.Pack([], true)),
|
|
||||||
"river", meta.ctx||meta.key||"", "storm", meta.index||meta.cmd||meta.name])
|
|
||||||
})
|
|
||||||
},
|
|
||||||
"刷新结果": function(event) {
|
|
||||||
sub.onappend._output(sub, meta, {}, sub.Pack([], true))
|
|
||||||
},
|
|
||||||
"清空结果": function(event) {
|
|
||||||
sub.onmotion.clear(sub, sub._output)
|
|
||||||
},
|
|
||||||
}, ["保存参数", "清空参数", "共享工具", "刷新结果", "清空结果"])
|
|
||||||
|
|
||||||
can.page.Modify(can, Volcanos.meta.data.menu.first, {style: {
|
|
||||||
left: event.target.offsetLeft+can.run(event, ["search", "River.onexport.width"]),
|
|
||||||
top: event.target.offsetTop-can._output.scrollTop+event.target.offsetHeight+can.run(event, ["search", "Header.onexport.height"]),
|
|
||||||
}})
|
|
||||||
},
|
|
||||||
})
|
|
||||||
sub._legend.onclick = function(event) {
|
|
||||||
}
|
|
||||||
}, target||can._output)
|
}, target||can._output)
|
||||||
},
|
},
|
||||||
plugin: function(can, meta, cb, target) { meta = meta || {}
|
plugin: function(can, meta, cb, target) { meta = meta || {}
|
||||||
@ -638,7 +604,7 @@ Volcanos("onlayout", {help: "页面布局", list: [], _init: function(can) {
|
|||||||
top = window.innerHeight - p.offsetHeight
|
top = window.innerHeight - p.offsetHeight
|
||||||
} if (top < 32) { top = 32 }
|
} if (top < 32) { top = 32 }
|
||||||
|
|
||||||
can.page.Modify(can, p, {style: {left: left, top: top}})
|
can.page.Modify(can, p, {style: {left: can.user.isMobile? 30: left, top: top+30}})
|
||||||
},
|
},
|
||||||
resize: function(can, name, cb) {
|
resize: function(can, name, cb) {
|
||||||
var list = []; can.onengine.listen(can, name, function(width, height) {
|
var list = []; can.onengine.listen(can, name, function(width, height) {
|
||||||
|
@ -71,6 +71,7 @@ Volcanos("core", {help: "数据结构",
|
|||||||
return typeof cb == "function" && cb(timer, interval.interval||interval[i], i, interval)?
|
return typeof cb == "function" && cb(timer, interval.interval||interval[i], i, interval)?
|
||||||
typeof cbs == "function" && cbs(timer, interval): setTimeout(function() { loop(timer, i+1) }, interval.interval||interval[i+1])
|
typeof cbs == "function" && cbs(timer, interval): setTimeout(function() { loop(timer, i+1) }, interval.interval||interval[i+1])
|
||||||
}
|
}
|
||||||
|
if (interval.interval == 0) { cb(); return timer }
|
||||||
setTimeout(function() { loop(timer, 0) }, interval.interval||interval[0])
|
setTimeout(function() { loop(timer, 0) }, interval.interval||interval[0])
|
||||||
return timer
|
return timer
|
||||||
}),
|
}),
|
||||||
|
@ -125,8 +125,11 @@ Volcanos("misc", {help: "工具模块", Message: function(event, can) { var msg
|
|||||||
msg[item] && (form[item] = msg[item])
|
msg[item] && (form[item] = msg[item])
|
||||||
})
|
})
|
||||||
|
|
||||||
var path = (can.Conf("iceberg")||"/chat/")+dataset.names.toLowerCase()
|
can.misc.POST(can, msg, can.base.MergeURL(
|
||||||
can.misc.POST(can, msg, can.base.MergeURL(path, "", (msg._can.sup||msg._can)._name, "_daemon", dataset.daemon), form, function(msg) {
|
(can.Conf("iceberg")||"/chat/")+dataset.names.toLowerCase(),
|
||||||
|
"_", (msg._can.sup||msg._can)._name,
|
||||||
|
"_daemon", dataset.daemon,
|
||||||
|
), form, function(msg) {
|
||||||
typeof cb == "function" && cb(msg)
|
typeof cb == "function" && cb(msg)
|
||||||
})
|
})
|
||||||
}),
|
}),
|
||||||
|
@ -38,7 +38,11 @@ Volcanos("page", {help: "网页模块",
|
|||||||
"left": true, "right": true, "top": true, "bottom": true,
|
"left": true, "right": true, "top": true, "bottom": true,
|
||||||
"margin-top": true, "margin-left": true,
|
"margin-top": true, "margin-left": true,
|
||||||
}
|
}
|
||||||
if (size[sub] && value && (typeof value == "number" || value.indexOf("px") == -1)) {
|
if (parseInt(value) < 0 && sub == "height") {
|
||||||
|
target[key] && (target[key][sub] = "")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (size[sub] && value && (typeof value == "number" || value.indexOf && value.indexOf("px") == -1)) {
|
||||||
value += "px"
|
value += "px"
|
||||||
}
|
}
|
||||||
target[key] && (target[key][sub] = value)
|
target[key] && (target[key][sub] = value)
|
||||||
|
10
lib/user.js
10
lib/user.js
@ -67,7 +67,7 @@ Volcanos("user", {help: "用户模块", agent: {
|
|||||||
var width = meta.width||400, height = meta.height||100; if (width < 0) { width = window.innerWidth + width }
|
var width = meta.width||400, height = meta.height||100; if (width < 0) { width = window.innerWidth + width }
|
||||||
|
|
||||||
var ui = can.page.Append(can, document.body, [{view: "toast", style: {
|
var ui = can.page.Append(can, document.body, [{view: "toast", style: {
|
||||||
width: width, bottom: 100, left: window.innerWidth/2-width/2,
|
width: width, bottom: 100, left: (window.innerWidth-width)/2,
|
||||||
}, list: [
|
}, list: [
|
||||||
{text: [meta.title||"", "div", "title"]},
|
{text: [meta.title||"", "div", "title"]},
|
||||||
typeof meta.content == "object"? meta.content: {text: [meta.content||"执行成功", "div", "content"]},
|
typeof meta.content == "object"? meta.content: {text: [meta.content||"执行成功", "div", "content"]},
|
||||||
@ -79,7 +79,7 @@ Volcanos("user", {help: "用户模块", agent: {
|
|||||||
|
|
||||||
ui.Close = function() { can.page.Remove(can, ui.first), timer.stop = true }
|
ui.Close = function() { can.page.Remove(can, ui.first), timer.stop = true }
|
||||||
var timer = can.core.Timer({interval: 100, length: (parseInt(meta.duration||1000))/100}, function(event, interval, index) {
|
var timer = can.core.Timer({interval: 100, length: (parseInt(meta.duration||1000))/100}, function(event, interval, index) {
|
||||||
if (index > 20) { ui.duration.innerHTML = parseInt(index/10)+"."+(index%10)+"s..." }
|
if (index > 30) { ui.duration.innerHTML = parseInt(index/10)+"."+(index%10)+"s..." }
|
||||||
}, ui.Close)
|
}, ui.Close)
|
||||||
|
|
||||||
can.onappend._action(can, meta.button||[], ui.button, {
|
can.onappend._action(can, meta.button||[], ui.button, {
|
||||||
@ -172,7 +172,7 @@ Volcanos("user", {help: "用户模块", agent: {
|
|||||||
},
|
},
|
||||||
input: function(event, can, form, cb) { // form [ string, array, object, {_input: }, {button: []} ]
|
input: function(event, can, form, cb) { // form [ string, array, object, {_input: }, {button: []} ]
|
||||||
var msg = can.request(event, can.Option())
|
var msg = can.request(event, can.Option())
|
||||||
var x = event.clientX||200, y = event.clientY+10||48
|
var x = event.clientX||can.user.isMobile? 20: 200, y = event.clientY+10||48
|
||||||
|
|
||||||
var button; var ui = can.page.Append(can, document.body, [{view: ["input inputs", "fieldset"], style: {left: x, top: y}, list: [
|
var button; var ui = can.page.Append(can, document.body, [{view: ["input inputs", "fieldset"], style: {left: x, top: y}, list: [
|
||||||
{view: ["option", "table"], list: can.core.List(form, function(item) {
|
{view: ["option", "table"], list: can.core.List(form, function(item) {
|
||||||
@ -194,6 +194,7 @@ Volcanos("user", {help: "用户模块", agent: {
|
|||||||
|
|
||||||
item = typeof item == "string"? {_input: "text", name: item}:
|
item = typeof item == "string"? {_input: "text", name: item}:
|
||||||
item.length > 0? {_input: "select", name: item[0], values: item.slice(1)}: item
|
item.length > 0? {_input: "select", name: item[0], values: item.slice(1)}: item
|
||||||
|
item._input = item.type||item._input||"text"
|
||||||
|
|
||||||
return {type: "tr", list: [{type: "td", list: [{text: item.name||""}]}, {type: "td", list: [
|
return {type: "tr", list: [{type: "td", list: [{text: item.name||""}]}, {type: "td", list: [
|
||||||
item._input == "textarea"? /* textarea */ {type: "textarea", data: item, _init: _init}:
|
item._input == "textarea"? /* textarea */ {type: "textarea", data: item, _init: _init}:
|
||||||
@ -271,8 +272,7 @@ Volcanos("user", {help: "用户模块", agent: {
|
|||||||
},
|
},
|
||||||
download: function(can, path, name) {
|
download: function(can, path, name) {
|
||||||
var a = can.page.Append(can, document.body, [{type: "a", href: path, download: name||path.split("/").pop()}]).first
|
var a = can.page.Append(can, document.body, [{type: "a", href: path, download: name||path.split("/").pop()}]).first
|
||||||
a.click()
|
a.click(), can.page.Remove(can, a)
|
||||||
can.page.Remove(can, a)
|
|
||||||
},
|
},
|
||||||
logout: function(can) {
|
logout: function(can) {
|
||||||
if (can.user.confirm("logout?")) {
|
if (can.user.confirm("logout?")) {
|
||||||
|
@ -93,6 +93,12 @@ input[type=text] {
|
|||||||
input[type=text]:hover {
|
input[type=text]:hover {
|
||||||
background-color:white;
|
background-color:white;
|
||||||
}
|
}
|
||||||
|
td>input[type=button][name=remove] {
|
||||||
|
background-color:red;
|
||||||
|
}
|
||||||
|
td>input[type=button][name=create] {
|
||||||
|
background-color:blue;
|
||||||
|
}
|
||||||
input[type=button] {
|
input[type=button] {
|
||||||
background-color:black; color:cyan;
|
background-color:black; color:cyan;
|
||||||
letter-spacing:4px;
|
letter-spacing:4px;
|
||||||
@ -339,6 +345,9 @@ fieldset>div.output td.project {
|
|||||||
fieldset>div.output td.profile {
|
fieldset>div.output td.profile {
|
||||||
background-color:#71909c91;
|
background-color:#71909c91;
|
||||||
}
|
}
|
||||||
|
fieldset>div.output td.profile div.profile {
|
||||||
|
overflow:auto;
|
||||||
|
}
|
||||||
|
|
||||||
fieldset>div.output {
|
fieldset>div.output {
|
||||||
clear:both; overflow:auto;
|
clear:both; overflow:auto;
|
||||||
@ -348,7 +357,7 @@ fieldset>div.output div.code a {
|
|||||||
color:yellow;
|
color:yellow;
|
||||||
}
|
}
|
||||||
fieldset>div.output div.project {
|
fieldset>div.output div.project {
|
||||||
min-width:80px; max-width:240px;
|
min-width:88px; max-width:240px;
|
||||||
float:left; overflow:auto;
|
float:left; overflow:auto;
|
||||||
}
|
}
|
||||||
fieldset>div.output div.project div.item {
|
fieldset>div.output div.project div.item {
|
||||||
@ -400,6 +409,12 @@ body.white {
|
|||||||
background-color:#052238bf;
|
background-color:#052238bf;
|
||||||
color:white;
|
color:white;
|
||||||
}
|
}
|
||||||
|
body.white td>input[type=button][name=remove] {
|
||||||
|
background-color:red;
|
||||||
|
}
|
||||||
|
body.white td>input[type=button][name=create] {
|
||||||
|
background-color:blue;
|
||||||
|
}
|
||||||
body.white input[type=button] {
|
body.white input[type=button] {
|
||||||
background-color:#FF9900; color:white;
|
background-color:#FF9900; color:white;
|
||||||
border-radius:10px 10px 10px 10px;
|
border-radius:10px 10px 10px 10px;
|
||||||
@ -470,6 +485,18 @@ body.print {
|
|||||||
background-color:white;
|
background-color:white;
|
||||||
color:black;
|
color:black;
|
||||||
}
|
}
|
||||||
|
body.print fieldset.Header {
|
||||||
|
background-color:white;
|
||||||
|
color:black;
|
||||||
|
}
|
||||||
|
body.print fieldset.River {
|
||||||
|
background-color:white;
|
||||||
|
color:black;
|
||||||
|
}
|
||||||
|
body.print fieldset.Footer {
|
||||||
|
background-color:white;
|
||||||
|
color:black;
|
||||||
|
}
|
||||||
body.print legend {
|
body.print legend {
|
||||||
box-shadow:0px 0px 0px 0px #626bd0;
|
box-shadow:0px 0px 0px 0px #626bd0;
|
||||||
}
|
}
|
||||||
|
@ -43,6 +43,7 @@ fieldset.Action div.output.grid fieldset.plugin>div.output {
|
|||||||
}
|
}
|
||||||
fieldset.Action div.output.tabs fieldset.plugin {
|
fieldset.Action div.output.tabs fieldset.plugin {
|
||||||
display:none;
|
display:none;
|
||||||
|
float:left;
|
||||||
}
|
}
|
||||||
fieldset.Action div.output.tabs fieldset.plugin.select {
|
fieldset.Action div.output.tabs fieldset.plugin.select {
|
||||||
display:block;
|
display:block;
|
||||||
|
@ -34,6 +34,18 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg)
|
|||||||
can.onmotion.select(can, can._output, "fieldset.plugin", sub._target)
|
can.onmotion.select(can, can._output, "fieldset.plugin", sub._target)
|
||||||
can.onmotion.select(can, can._action, "div.item", event.target)
|
can.onmotion.select(can, can._action, "div.item", event.target)
|
||||||
}}])
|
}}])
|
||||||
|
|
||||||
|
sub.page.Modify(sub, sub._legend, {
|
||||||
|
onmouseenter: function(event) {
|
||||||
|
Volcanos.meta.data.menu && sub.page.Remove(sub, Volcanos.meta.data.menu.first)
|
||||||
|
Volcanos.meta.data.menu = sub.user.carte(event, sub, sub.onaction, sub.onaction.list)
|
||||||
|
|
||||||
|
sub.page.Modify(sub, Volcanos.meta.data.menu.first, {style: {
|
||||||
|
left: event.target.offsetLeft+can.run(event, ["search", "River.onexport.width"]),
|
||||||
|
top: event.target.offsetTop-can._output.scrollTop+event.target.offsetHeight+can.run(event, ["search", "Header.onexport.height"]),
|
||||||
|
}})
|
||||||
|
},
|
||||||
|
})
|
||||||
},
|
},
|
||||||
_share: function(can, msg, share) {
|
_share: function(can, msg, share) {
|
||||||
can.Conf(can._WIDTH, window.innerWidth)
|
can.Conf(can._WIDTH, window.innerWidth)
|
||||||
@ -42,12 +54,22 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg)
|
|||||||
can.user.title(can.user.Search(can, can._TITLE)||msg.Option(can._TITLE))
|
can.user.title(can.user.Search(can, can._TITLE)||msg.Option(can._TITLE))
|
||||||
can.Conf(can._RIVER, "_share"), can.Conf(can._STORM, share)
|
can.Conf(can._RIVER, "_share"), can.Conf(can._STORM, share)
|
||||||
can.onimport._init(can, msg)
|
can.onimport._init(can, msg)
|
||||||
|
can.onaction._layout(can, "flow")
|
||||||
},
|
},
|
||||||
_menu: function(can) {
|
_menu: function(can) {
|
||||||
!can.user.isMobile && can.run({}, [can._SEARCH, "Header.onimport.menu", can._ACTION,
|
!can.user.isMobile && can.run({}, [can._SEARCH, "Header.onimport.menu", can._ACTION,
|
||||||
["布局", "默认布局", "流动布局", "网格布局", "标签布局", "自由布局"],
|
["布局", "默认布局", "流动布局", "网格布局", "标签布局", "自由布局"],
|
||||||
], function(event, key) { can.onaction._layout(can, key) })
|
], function(event, key) { can.onaction._layout(can, key) })
|
||||||
},
|
},
|
||||||
|
|
||||||
|
height: function(can, height) {
|
||||||
|
can.page.Modify(can, can._target, {style: {
|
||||||
|
height: can.Conf(can._HEIGHT, height),
|
||||||
|
}})
|
||||||
|
can.page.Modify(can, can._output, {style: {
|
||||||
|
height: can.Conf(can._HEIGHT, height-(can.Conf(can._LAYOUT)=="tabs"? 28: 10)),
|
||||||
|
}})
|
||||||
|
},
|
||||||
})
|
})
|
||||||
Volcanos("onengine", {help: "解析引擎", list: [],
|
Volcanos("onengine", {help: "解析引擎", list: [],
|
||||||
engine: function(event, page, msg, can, cmds, cb) {
|
engine: function(event, page, msg, can, cmds, cb) {
|
||||||
@ -74,7 +96,7 @@ Volcanos("onaction", {help: "交互操作", list: [], _init: function(can, msg,
|
|||||||
can.const(
|
can.const(
|
||||||
"output", "fields",
|
"output", "fields",
|
||||||
"search", "action", "share", "river", "storm",
|
"search", "action", "share", "river", "storm",
|
||||||
"title", "topic", "layout", "width", "height",
|
"title", "topic", "layout", "width", "height", "top", "left",
|
||||||
"plugin",
|
"plugin",
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -124,6 +146,11 @@ Volcanos("onaction", {help: "交互操作", list: [], _init: function(can, msg,
|
|||||||
can.onmotion.select(can, can._output, "fieldset.plugin", 0)
|
can.onmotion.select(can, can._output, "fieldset.plugin", 0)
|
||||||
can.onmotion.select(can, can._action, "div.item", 0)
|
can.onmotion.select(can, can._action, "div.item", 0)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var header = can.get("Header", "height")
|
||||||
|
var footer = can.get("Footer", "height")
|
||||||
|
can.set("Action", "height", window.innerHeight-header-footer)
|
||||||
},
|
},
|
||||||
_select: function(can, msg, river, storm) {
|
_select: function(can, msg, river, storm) {
|
||||||
function key(name) { return can.Conf(can._RIVER)+"."+can.Conf(can._STORM)+"."+name}
|
function key(name) { return can.Conf(can._RIVER)+"."+can.Conf(can._STORM)+"."+name}
|
||||||
@ -153,8 +180,8 @@ Volcanos("onexport", {help: "导出数据", list: [],
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
size: function(can, msg) {
|
size: function(can, msg) {
|
||||||
msg.Option("top", can._target.offsetTop)
|
msg.Option(can._TOP, can._target.offsetTop)
|
||||||
msg.Option("left", can._target.offsetLeft)
|
msg.Option(can._LEFT, can._target.offsetLeft)
|
||||||
msg.Option(can._WIDTH, can._target.offsetWidth)
|
msg.Option(can._WIDTH, can._target.offsetWidth)
|
||||||
msg.Option(can._HEIGHT, can._target.offsetHeight)
|
msg.Option(can._HEIGHT, can._target.offsetHeight)
|
||||||
},
|
},
|
||||||
|
@ -224,9 +224,28 @@ Volcanos("onaction", {help: "交互数据", list: [], _init: function(can, msg,
|
|||||||
return can.menu
|
return can.menu
|
||||||
},
|
},
|
||||||
river: function(event, can) { can.onaction.River(can) },
|
river: function(event, can) { can.onaction.River(can) },
|
||||||
black: function(event, can, button) { can.onlayout.topic(can, button) },
|
black: function(event, can, button) {
|
||||||
white: function(event, can, button) { can.onlayout.topic(can, button) },
|
can.onlayout.topic(can, button)
|
||||||
print: function(event, can, button) { can.onlayout.topic(can, "white print") },
|
|
||||||
|
var header = can.get("Header", "height")
|
||||||
|
var footer = can.get("Footer", "height")
|
||||||
|
can.set("River", "height", window.innerHeight-header-footer)
|
||||||
|
can.set("Action", "height", window.innerHeight-header-footer)
|
||||||
|
},
|
||||||
|
white: function(event, can, button) {
|
||||||
|
can.onlayout.topic(can, button)
|
||||||
|
|
||||||
|
var header = can.get("Header", "height")
|
||||||
|
var footer = can.get("Footer", "height")
|
||||||
|
can.set("River", "height", window.innerHeight-header-footer)
|
||||||
|
can.set("Action", "height", window.innerHeight-header-footer)
|
||||||
|
},
|
||||||
|
print: function(event, can, button) {
|
||||||
|
can.onlayout.topic(can, "white print")
|
||||||
|
|
||||||
|
can.set("River", "height", -1)
|
||||||
|
can.set("Action", "height", -1)
|
||||||
|
},
|
||||||
pack: function(event, can) {
|
pack: function(event, can) {
|
||||||
can.user.input(event, can, [
|
can.user.input(event, can, [
|
||||||
{_input: "text", name: "name", value: "demo"},
|
{_input: "text", name: "name", value: "demo"},
|
||||||
@ -254,6 +273,9 @@ Volcanos("onaction", {help: "交互数据", list: [], _init: function(can, msg,
|
|||||||
shareuser: function(event, can) {
|
shareuser: function(event, can) {
|
||||||
can.user.share(can, can.request(event), [can._ACTION, can._SHARE, "type", "login"])
|
can.user.share(can, can.request(event), [can._ACTION, can._SHARE, "type", "login"])
|
||||||
},
|
},
|
||||||
|
share: function(event, can, arg) {
|
||||||
|
can.user.share(can, can.request(event), [can._ACTION, can._SHARE].concat(arg))
|
||||||
|
},
|
||||||
usernick: function(event, can) {
|
usernick: function(event, can) {
|
||||||
can.user.input(event, can, [{_input: "text", name: "usernick", value: can.Conf(can._USERNAME)}], function(ev, button, data, list, args) {
|
can.user.input(event, can, [{_input: "text", name: "usernick", value: can.Conf(can._USERNAME)}], function(ev, button, data, list, args) {
|
||||||
can.run(event, ["usernick", list[0]], function(msg) {
|
can.run(event, ["usernick", list[0]], function(msg) {
|
||||||
|
@ -53,6 +53,15 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg,
|
|||||||
}})
|
}})
|
||||||
return item
|
return item
|
||||||
},
|
},
|
||||||
|
|
||||||
|
height: function(can, height) {
|
||||||
|
can.page.Modify(can, can._target, {style: {
|
||||||
|
height: can.Conf(can._HEIGHT, height),
|
||||||
|
}})
|
||||||
|
can.page.Modify(can, can._output, {style: {
|
||||||
|
height: can.Conf(can._HEIGHT, height-10),
|
||||||
|
}})
|
||||||
|
},
|
||||||
})
|
})
|
||||||
Volcanos("onengine", {help: "解析引擎", list: [], engine: function(event, can, msg, panel, cmds, cb) {
|
Volcanos("onengine", {help: "解析引擎", list: [], engine: function(event, can, msg, panel, cmds, cb) {
|
||||||
cmds.length == 0 && can.core.Item(can.onengine.river, function(key, value) {
|
cmds.length == 0 && can.core.Item(can.onengine.river, function(key, value) {
|
||||||
|
@ -4,7 +4,11 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg,
|
|||||||
if (event.key == "Escape") { can.onmotion.hide(can) }
|
if (event.key == "Escape") { can.onmotion.hide(can) }
|
||||||
|
|
||||||
if (event.key == "Enter") { event.stopPropagation(), event.preventDefault()
|
if (event.key == "Enter") { event.stopPropagation(), event.preventDefault()
|
||||||
if (event.ctrlKey && can.onaction.select(event, can, 0)) { return }
|
if (event.ctrlKey) {
|
||||||
|
can.type == "*"? can.onimport._plugin(can, can.list[0]): can.onaction.select(event, can, 0)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (event.shiftKey) { return can.onaction["完成"](event, can) }
|
||||||
can.input(event, event.target.value)
|
can.input(event, event.target.value)
|
||||||
}
|
}
|
||||||
}]},
|
}]},
|
||||||
@ -12,37 +16,32 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg,
|
|||||||
]), can.base.isFunc(cb) && cb(msg)
|
]), can.base.isFunc(cb) && cb(msg)
|
||||||
can.page.ClassList.add(can, can.ui.display, "content")
|
can.page.ClassList.add(can, can.ui.display, "content")
|
||||||
},
|
},
|
||||||
|
_plugin: function(can, line) {
|
||||||
|
can.onappend.plugin(can, {index: line.ctx&&line.cmd!="command"? line.ctx+"."+line.cmd: line.text+"."+line.name||msg.Option("index"), option: line}, function(sub, meta) {
|
||||||
|
sub.run = function(event, cmds, cb) { var msg = can.request(event, line)
|
||||||
|
can.run(event, ["action", "command", "run", meta.index].concat(cmds), function(msg) {
|
||||||
|
can.base.isFunc(cb) && cb(msg)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}, can.ui.preview)
|
||||||
|
},
|
||||||
_table: function(can, msg, fields) { can.onmotion.clear(can, can.ui.content)
|
_table: function(can, msg, fields) { can.onmotion.clear(can, can.ui.content)
|
||||||
var table = can.onappend.table(can, msg, function(value, key, index, line) { can.Status("count", index+1)
|
var table = can.onappend.table(can, msg, function(value, key, index, line) { can.Status("count", index+1)
|
||||||
return {text: [key == "text" && can.base.isFunc(line.text) && line.text.help || value, "td"], onclick: function(event) {
|
return {text: [key == "text" && can.base.isFunc(line.text) && line.text.help || value, "td"], onclick: function(event) {
|
||||||
if (event.shiftKey) { event.stopPropagation(), event.preventDefault()
|
can.type == "*" || event.shiftKey? can.onimport._plugin(can, line): can.onaction.select(event, can, index)
|
||||||
return can.onappend.plugin(can, {index: line.ctx? line.ctx+"."+line.cmd: msg.Option("index"), option: line}, function(sub, meta) {
|
event.stopPropagation(), event.preventDefault()
|
||||||
sub.run = function(event, cmds, cb) { var msg = can.request(event, line)
|
|
||||||
can.run(event, ["action", "command", "run", meta.index].concat(cmds), function(msg) {
|
|
||||||
can.base.isFunc(cb) && cb(msg)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}, can.ui.preview)
|
|
||||||
}
|
|
||||||
|
|
||||||
if (line.ctx == "web.chat" && line.cmd == "/search") {
|
|
||||||
return can.onimport.select(can, msg, [line.type, line.name, line.text], can.cb)
|
|
||||||
}
|
|
||||||
if (can.onaction.select(event, can, index)) { return }
|
|
||||||
}}
|
}}
|
||||||
}, can.ui.content, can.core.List((msg.Option("sort")||"ctx,cmd,type,name,text").split(","), function(item) {
|
}, can.ui.content, can.core.List((msg.Option("sort")||"ctx,cmd,type,name,text").split(","), function(item) {
|
||||||
return fields.indexOf(item)
|
return fields.indexOf(item)
|
||||||
}))
|
})); table && can.page.Modify(can, can.ui.display, {style: {width: table.offsetWidth}})
|
||||||
table && can.page.Modify(can, can.ui.display, {style: {width: table.offsetWidth}})
|
|
||||||
},
|
},
|
||||||
_word: function(can, msg, cmds, fields) {
|
_word: function(can, msg, cmds, fields) { can.type = cmds[0]
|
||||||
msg = can.request({}, {word: cmds, fields: fields.join(","), sort: msg.Option("sort"), index: msg.Option("index")})
|
msg.Option({word: cmds, fields: fields.join(","), sort: msg.Option("sort"), index: msg.Option("index")})
|
||||||
can.onengine.signal(can, "search", msg)
|
can.onengine.signal(can, "search", msg)
|
||||||
|
|
||||||
can.run(msg._event, cmds, function(msg) { can.list = msg.Table()
|
can.run(msg._event, cmds, function(msg) { can.list = msg.Table()
|
||||||
can.onimport._table(can, msg, fields)
|
can.onimport._table(can, msg, fields)
|
||||||
})
|
}), can.ui.word.setSelectionRange(0, -1)
|
||||||
can.ui.word.setSelectionRange(0, -1)
|
|
||||||
},
|
},
|
||||||
|
|
||||||
select: function(can, msg, cmds, cb) { can.ui.word.value = cmds[1]
|
select: function(can, msg, cmds, cb) { can.ui.word.value = cmds[1]
|
||||||
@ -51,14 +50,13 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg,
|
|||||||
can.base.isFunc(cb) && cb(can.onexport.select(can)), can.onmotion.hide(can)
|
can.base.isFunc(cb) && cb(can.onexport.select(can)), can.onmotion.hide(can)
|
||||||
}
|
}
|
||||||
|
|
||||||
can.input = function(event, word) { cmds[1] = word
|
can.input = function(event, word) { cmds[1] = word||cmds[1]
|
||||||
can.onimport._word(can, msg, cmds, fields)
|
can.onimport._word(can, msg, cmds, fields)
|
||||||
}
|
}, can.onimport._word(can, msg, cmds, fields)
|
||||||
|
|
||||||
can.onmotion.show(can), can.ui.input.focus()
|
can.onmotion.show(can), can.ui.input.focus()
|
||||||
can.onimport._word(can, msg, cmds, fields)
|
|
||||||
|
|
||||||
can.run({}, ["search", "Action.onexport.size"], function(msg, top, left, width, height) {
|
can.search(["Action.onexport.size"], function(msg, top, left, width, height) {
|
||||||
can.page.Modify(can, can._output, {style: {"max-width": width, "max-height": height-75}})
|
can.page.Modify(can, can._output, {style: {"max-width": width, "max-height": height-75}})
|
||||||
can.page.Modify(can, can._target, {style: {top: top, left: left}})
|
can.page.Modify(can, can._target, {style: {top: top, left: left}})
|
||||||
} )
|
} )
|
||||||
@ -72,6 +70,11 @@ Volcanos("onaction", {help: "交互操作", list: ["关闭", "清空", "完成"]
|
|||||||
"完成": function(event, can) { can.base.isFunc(can.cb) && can.cb() },
|
"完成": function(event, can) { can.base.isFunc(can.cb) && can.cb() },
|
||||||
|
|
||||||
select: function(event, can, index) {
|
select: function(event, can, index) {
|
||||||
|
|
||||||
|
if (line.ctx == "web.chat" && line.cmd == "/search") {
|
||||||
|
return can.onimport.select(can, msg, [line.type, line.name, line.text], can.cb)
|
||||||
|
}
|
||||||
|
|
||||||
if (can.list && can.list[index]) {
|
if (can.list && can.list[index]) {
|
||||||
var text = can.list[index].text || ""
|
var text = can.list[index].text || ""
|
||||||
if (can.base.isFunc(text)) {
|
if (can.base.isFunc(text)) {
|
||||||
|
@ -17,7 +17,7 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, list, cb,
|
|||||||
var height = can.Conf("height")-320; height < 240 && (height = 240)
|
var height = can.Conf("height")-320; height < 240 && (height = 240)
|
||||||
can.page.Modify(can, can.ui.project, {style: {"max-height": height}})
|
can.page.Modify(can, can.ui.project, {style: {"max-height": height}})
|
||||||
can.page.Modify(can, can.ui.content, {style: {"max-height": height}})
|
can.page.Modify(can, can.ui.content, {style: {"max-height": height}})
|
||||||
can.page.Modify(can, can.ui.content, {style: {"min-width": can.Conf("width")-170}})
|
// can.page.Modify(can, can.ui.content, {style: {"min-width": can.Conf("width")-170}})
|
||||||
can.page.Modify(can, can.ui.display, {style: {display: "none"}})
|
can.page.Modify(can, can.ui.display, {style: {display: "none"}})
|
||||||
},
|
},
|
||||||
_output: function(can, target) {
|
_output: function(can, target) {
|
||||||
@ -172,7 +172,7 @@ Volcanos("onaction", {help: "控件交互", list: ["项目", "收藏", "搜索",
|
|||||||
},
|
},
|
||||||
"项目": function(event, can) {
|
"项目": function(event, can) {
|
||||||
var width = can.Conf("width")-(can.onmotion.toggle(can, can.ui.project)? 170: 0)
|
var width = can.Conf("width")-(can.onmotion.toggle(can, can.ui.project)? 170: 0)
|
||||||
can.page.Modify(can, can.ui.content, {style: {"min-width": width}})
|
// can.page.Modify(can, can.ui.content, {style: {"min-width": width}})
|
||||||
},
|
},
|
||||||
"收藏": 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) },
|
||||||
|
@ -5,6 +5,8 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg,
|
|||||||
can.onmotion.hidden(can, can._action)
|
can.onmotion.hidden(can, can._action)
|
||||||
can.onimport[can.Option("scale")||"week"](can, msg)
|
can.onimport[can.Option("scale")||"week"](can, msg)
|
||||||
can.page.Modify(can, can.ui.profile, {style: {display: "block"}})
|
can.page.Modify(can, can.ui.profile, {style: {display: "block"}})
|
||||||
|
can.page.Modify(can, can.ui.project, {style: {"max-height": can.ui.content.offsetHeight}})
|
||||||
|
can.page.Modify(can, can.ui.profile, {style: {"max-height": can.ui.content.offsetHeight}})
|
||||||
},
|
},
|
||||||
_content: function(can, msg, head, list, key, get, set) {
|
_content: function(can, msg, head, list, key, get, set) {
|
||||||
var hash = {}; msg.Table(function(value, index) {
|
var hash = {}; msg.Table(function(value, index) {
|
||||||
|
@ -3,6 +3,13 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, conf,
|
|||||||
_process: function(can, msg, cmds, cb, silent) {
|
_process: function(can, msg, cmds, cb, silent) {
|
||||||
return can.core.CallFunc([can.onimport, msg.Option("_process")], [can, msg, cmds, cb, silent])
|
return can.core.CallFunc([can.onimport, msg.Option("_process")], [can, msg, cmds, cb, silent])
|
||||||
},
|
},
|
||||||
|
_refresh: function(can, msg) {
|
||||||
|
can.core.Timer(parseInt(msg.Option("_delay")||"500"), function() {
|
||||||
|
var sub = can.request({}, {_count: parseInt(msg.Option("_count"))-1})
|
||||||
|
can.onappend._output(can, can.Conf(), sub._event, can.Pack())
|
||||||
|
})
|
||||||
|
return true
|
||||||
|
},
|
||||||
_hold: function(can, msg) {
|
_hold: function(can, msg) {
|
||||||
return true
|
return true
|
||||||
},
|
},
|
||||||
@ -39,13 +46,6 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, conf,
|
|||||||
})
|
})
|
||||||
return true
|
return true
|
||||||
},
|
},
|
||||||
_refresh: function(can, msg) {
|
|
||||||
can.core.Timer(parseInt(msg.Option("_delay")||"500"), function() {
|
|
||||||
var sub = can.request({}, {_count: parseInt(msg.Option("_count"))-1})
|
|
||||||
can.onappend._output(can, can.Conf(), sub._event, can.Pack())
|
|
||||||
})
|
|
||||||
return true
|
|
||||||
},
|
|
||||||
_field: function(can, msg) {
|
_field: function(can, msg) {
|
||||||
msg.Table(function(item) { can.onappend._plugin(can, item, {}, function(sub, meta) {
|
msg.Table(function(item) { can.onappend._plugin(can, item, {}, function(sub, meta) {
|
||||||
sub.run = function(event, cmds, cb, silent) {
|
sub.run = function(event, cmds, cb, silent) {
|
||||||
@ -62,12 +62,54 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, conf,
|
|||||||
return true
|
return true
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
Volcanos("onaction", {help: "交互操作", list: [], _init: function(can, msg, list, cb, target) {
|
Volcanos("onaction", {help: "交互操作", list: ["保存参数", "清空参数", "共享工具", "刷新数据", "复制数据", "下载数据", "清空数据"], _init: function(can, msg, list, cb, target) {
|
||||||
},
|
},
|
||||||
|
"保存参数": function(event, can) { var meta = can.Conf()
|
||||||
|
var msg = can.request(event, {river: can.Conf("river"), storm: can.Conf("storm"), id: meta.id})
|
||||||
|
can.run(event, ["action", "modify", "arg", JSON.stringify(can.Pack([], true))], function(msg) {
|
||||||
|
can.user.toast(can, "保存成功")
|
||||||
|
})
|
||||||
|
},
|
||||||
|
"清空参数": function(event, can) {
|
||||||
|
can.page.Select(can, can._option, '.args', function(item) { return item.value = "" })
|
||||||
|
},
|
||||||
|
"共享工具": function(event, can) { var meta = can.Conf()
|
||||||
|
can.user.input(event, can, [{name: "name", value: meta.name}], function(event, button, data, list, args) {
|
||||||
|
var msg = can.request(event, {arg: [
|
||||||
|
"type", "field",
|
||||||
|
"name", list[0], "text", JSON.stringify(can.Pack([], true)),
|
||||||
|
"river", meta.ctx||meta.key||"", "storm", meta.index||meta.cmd||meta.name,
|
||||||
|
]})
|
||||||
|
can.run(event, ["search", "Header.onaction.share"])
|
||||||
|
})
|
||||||
|
},
|
||||||
|
"刷新数据": function(event, can) { var meta = can.Conf()
|
||||||
|
can.onappend._output(can, meta, {}, can.Pack([], true))
|
||||||
|
},
|
||||||
|
"复制数据": function(event, can) { var meta = can.Conf(), msg = can._msg
|
||||||
|
var res = [msg.append && msg.append.join(",")]; msg.Table(function(line, index, array) {
|
||||||
|
res.push(can.core.Item(line, function(key, value) { return value }).join(","))
|
||||||
|
})
|
||||||
|
|
||||||
|
res.length > 1 && can.user.copy(event, can, res.join("\n"))
|
||||||
|
msg.result && can.user.copy(event, can, msg.Result())
|
||||||
|
},
|
||||||
|
"下载数据": function(event, can) { var meta = can.Conf(), msg = can._msg
|
||||||
|
var res = [msg.append && msg.append.join(",")]; msg.Table(function(line, index, array) {
|
||||||
|
res.push(can.core.Item(line, function(key, value) { return value }).join(","))
|
||||||
|
})
|
||||||
|
|
||||||
|
res.length > 1 && can.user.download(can, URL.createObjectURL(new Blob([res.join("\n")])), meta.name+".csv")
|
||||||
|
msg.result && can.user.download(can, URL.createObjectURL(new Blob([msg.Result()])), meta.name+".txt")
|
||||||
|
},
|
||||||
|
"清空数据": function(event, can) {
|
||||||
|
can.onmotion.clear(can, can._output)
|
||||||
|
},
|
||||||
|
|
||||||
change: function(event, can, name, value, cb) {
|
change: function(event, can, name, value, cb) {
|
||||||
return can.page.Select(can, can._option, "input.args", function(input) {
|
return can.page.Select(can, can._option, "input.args", function(input) {
|
||||||
if (input.name == name && value != input.value) { input.value = value
|
if (input.name == name && value != input.value) { input.value = value
|
||||||
var data = input.dataset || {}; data.action == "auto" && can.run(event, can.Pack(), cb)
|
var data = input.dataset || {}; data.action == "auto" && can.onappend._output(can, can.Conf(), event, can.Pack(), cb)
|
||||||
return input
|
return input
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
@ -1,15 +1,11 @@
|
|||||||
Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, list, cb, target) {
|
Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, list, cb, target) {
|
||||||
if (can.sup.onimport._process(can.sup, msg)) { return can.base.isFunc(cb) && cb(can, msg) }
|
|
||||||
if (can.onimport._process(can, msg)) { return can.base.isFunc(cb) && cb(can, msg) }
|
|
||||||
|
|
||||||
can.onmotion.clear(can)
|
can.onmotion.clear(can)
|
||||||
can.base.isFunc(cb) && cb(msg)
|
|
||||||
|
|
||||||
can.page.Append(can, target, [can.onimport._control(can, msg)])
|
can.page.Append(can, target, [can.onimport._control(can, msg)])
|
||||||
can.onappend.table(can, msg, function(value, key, index, line, array) {
|
can.onappend.table(can, msg, function(value, key, index, line, array) {
|
||||||
return can.onimport._table(can, value, key, index, line, array, cb)
|
return can.onimport._table(can, value, key, index, line, array, cb)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
can.base.isFunc(cb) && cb(msg)
|
||||||
can.onappend.board(can, msg.Result())
|
can.onappend.board(can, msg.Result())
|
||||||
can.onmotion.story(can, can._output)
|
can.onmotion.story(can, can._output)
|
||||||
},
|
},
|
||||||
@ -20,7 +16,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg,
|
|||||||
return can.run(event, ["action", target.name], function(msg) { can.run() }, true)
|
return can.run(event, ["action", target.name], function(msg) { can.run() }, true)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (can.sup.onaction.change(event, can.sup, key, value, function(msg) { can.onimport._init(can, msg, [], cb) }).length > 0) { return }
|
if (can.sup.onaction.change(event, can.sup, key, value, function(msg) {}).length > 0) { return }
|
||||||
|
|
||||||
}, ondblclick: function(event) {
|
}, ondblclick: function(event) {
|
||||||
can.onmotion.modify(can, event.target, function(event, value, old) {
|
can.onmotion.modify(can, event.target, function(event, value, old) {
|
||||||
|
11
proto.js
11
proto.js
@ -72,6 +72,17 @@ var Volcanos = shy("火山架", {args: {}, data: {}, pack: {}, libs: [], cache:
|
|||||||
can["_"+v.toUpperCase()] = v
|
can["_"+v.toUpperCase()] = v
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
set: function(target, field, value) { var event = {}
|
||||||
|
var msg = can.request(event, {}); msg.Option(field, value)
|
||||||
|
return can.run(event, ["search", target+".onimport."+field])
|
||||||
|
},
|
||||||
|
cmd: function(target, field) {
|
||||||
|
return can.run({}, ["search", target+".onaction."+field])
|
||||||
|
},
|
||||||
|
get: function(target, field) {
|
||||||
|
return can.run({}, ["search", target+".onexport."+field])
|
||||||
|
},
|
||||||
|
search: function(cmds, cb) { can.run({}, ["search"].concat(cmds), cb) },
|
||||||
Conf: function(key, value) { return can.core.Value(can._conf, key, value) }, _conf: {},
|
Conf: function(key, value) { return can.core.Value(can._conf, key, value) }, _conf: {},
|
||||||
}; can = can || {}; for (var k in proto) { can.hasOwnProperty(k) || (can[k] = proto[k]) }
|
}; can = can || {}; for (var k in proto) { can.hasOwnProperty(k) || (can[k] = proto[k]) }
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user