mirror of
https://shylinux.com/x/icebergs
synced 2025-04-25 17:18:05 +08:00
add some
This commit is contained in:
parent
f6a009c7fa
commit
e02517a57e
@ -153,7 +153,7 @@ func RenderMain(m *ice.Message) *ice.Message {
|
|||||||
}
|
}
|
||||||
m.Options(nfs.SCRIPT, ice.SRC_MAIN_JS, nfs.VERSION, RenderVersion(m))
|
m.Options(nfs.SCRIPT, ice.SRC_MAIN_JS, nfs.VERSION, RenderVersion(m))
|
||||||
m.OptionDefault(mdb.ICONS, strings.Split(m.Resource(ice.Info.NodeIcon), "?")[0]+m.Option(nfs.VERSION))
|
m.OptionDefault(mdb.ICONS, strings.Split(m.Resource(ice.Info.NodeIcon), "?")[0]+m.Option(nfs.VERSION))
|
||||||
m.OptionDefault(TITLE, kit.Select("localhost:9020", UserWeb(m).Host, m.Option(ice.MSG_USERPOD), kit.Select("", ice.Info.Titles, ice.Info.Titles != "ContextOS")))
|
m.OptionDefault(TITLE, kit.Select("localhost:9020", UserWeb(m).Host, kit.Select("", ice.Info.Titles, m.Option(ice.MSG_USERPOD) != "")))
|
||||||
return m.RenderResult(kit.Renders(m.Cmdx(nfs.CAT, ice.SRC_MAIN_HTML), m))
|
return m.RenderResult(kit.Renders(m.Cmdx(nfs.CAT, ice.SRC_MAIN_HTML), m))
|
||||||
}
|
}
|
||||||
func RenderCmds(m *ice.Message, cmds ...ice.Any) {
|
func RenderCmds(m *ice.Message, cmds ...ice.Any) {
|
||||||
@ -163,14 +163,13 @@ func RenderPodCmd(m *ice.Message, pod, cmd string, arg ...ice.Any) {
|
|||||||
if msg := m.Cmd(Space(m, pod), ctx.COMMAND, kit.Select(m.ShortKey(), cmd)); msg.Length() == 0 {
|
if msg := m.Cmd(Space(m, pod), ctx.COMMAND, kit.Select(m.ShortKey(), cmd)); msg.Length() == 0 {
|
||||||
RenderResult(m, kit.Format("not found command %s", cmd))
|
RenderResult(m, kit.Format("not found command %s", cmd))
|
||||||
} else {
|
} else {
|
||||||
if msg.Append(ctx.INDEX) == "web.code.vimer" {
|
if kit.IsIn(msg.Append(ctx.INDEX), "word", "vimer", "web.wiki.word", "web.code.vimer") {
|
||||||
m.Option(mdb.ICONS, msg.Option(ice.MSG_NODEICON))
|
m.Option(mdb.ICONS, msg.Option(ice.MSG_NODEICON))
|
||||||
}
|
}
|
||||||
m.OptionDefault(mdb.ICONS, m.Resource(kit.Select(ice.Info.NodeIcon, msg.Option(ice.MSG_NODEICON), msg.Append(mdb.ICONS))))
|
m.OptionDefault(mdb.ICONS, m.Resource(kit.Select(ice.Info.NodeIcon, msg.Option(ice.MSG_NODEICON), msg.Append(mdb.ICONS))))
|
||||||
if !kit.IsIn(cmd, PORTAL, DESKTOP, ADMIN) {
|
serve := kit.Select("localhost:9020", UserWeb(m).Host)
|
||||||
pod = kit.Select(pod, msg.Option(ice.MSG_NODENAME))
|
pod = kit.Select(pod, msg.Option(ice.MSG_NODENAME), m.Option(ice.MSG_USERPOD) != "")
|
||||||
m.OptionDefault(TITLE, kit.Select(cmd, msg.Append(mdb.HELP)+kit.Select("", " "+pod, pod != ""), !m.IsEnglish()))
|
m.OptionDefault(TITLE, kit.Select(cmd, msg.Append(mdb.HELP), !m.IsEnglish())+" "+kit.Select(serve, pod))
|
||||||
}
|
|
||||||
RenderCmds(m, kit.Dict(msg.AppendSimple(), ctx.ARGS, kit.Simple(arg), ctx.DISPLAY, m.Option(ice.MSG_DISPLAY)))
|
RenderCmds(m, kit.Dict(msg.AppendSimple(), ctx.ARGS, kit.Simple(arg), ctx.DISPLAY, m.Option(ice.MSG_DISPLAY)))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4,9 +4,9 @@ Volcanos(chat.ONIMPORT, {
|
|||||||
can.onlayout.background(can, can.user.info.background||"/p/usr/icons/background.jpg", can._fields)
|
can.onlayout.background(can, can.user.info.background||"/p/usr/icons/background.jpg", can._fields)
|
||||||
can.onimport._menu(can), can.onimport._notifications(can), can.onimport._searchs(can), can.onimport._dock(can)
|
can.onimport._menu(can), can.onimport._notifications(can), can.onimport._searchs(can), can.onimport._dock(can)
|
||||||
can.sup.onexport.link = function() { return can.misc.MergeURL(can, {pod: can.ConfSpace()||can.misc.Search(can, ice.POD), cmd: web.DESKTOP}) }
|
can.sup.onexport.link = function() { return can.misc.MergeURL(can, {pod: can.ConfSpace()||can.misc.Search(can, ice.POD), cmd: web.DESKTOP}) }
|
||||||
|
can.onexport.title(can, can.ConfHelp(), can.user.titles)
|
||||||
},
|
},
|
||||||
_menu: function(can) { can.onappend.plugin(can, {index: "web.chat.macos.menu", style: html.OUTPUT}, function(sub) { can.ui.menu = sub
|
_menu: function(can) { can.onappend.plugin(can, {index: "web.chat.macos.menu", style: html.OUTPUT}, function(sub) { can.ui.menu = sub, sub._desktop = can
|
||||||
sub._desktop = can
|
|
||||||
var tabs = can.misc.sessionStorage(can, [can.ConfIndex(), html.TABS])
|
var tabs = can.misc.sessionStorage(can, [can.ConfIndex(), html.TABS])
|
||||||
sub.onexport.output = function() { can.onimport._desktop(can, can._msg)
|
sub.onexport.output = function() { can.onimport._desktop(can, can._msg)
|
||||||
var sess = can.misc.SearchHash(can)[0]||can.Conf("session")
|
var sess = can.misc.SearchHash(can)[0]||can.Conf("session")
|
||||||
@ -21,10 +21,7 @@ Volcanos(chat.ONIMPORT, {
|
|||||||
case "reload": can.Update(); break
|
case "reload": can.Update(); break
|
||||||
case cli.QRCODE: can.sup.onaction["生成链接"]({}, can.sup); break
|
case cli.QRCODE: can.sup.onaction["生成链接"]({}, can.sup); break
|
||||||
case mdb.CREATE: can.onaction.create(event, can); break
|
case mdb.CREATE: can.onaction.create(event, can); break
|
||||||
case html.DESKTOP:
|
case html.DESKTOP: var carte = can.user.carte(event, can, {}, can.core.Item(can.onfigure), function(event, button, meta, carte) { can.onfigure[button](event, can, carte); return true }); break
|
||||||
var carte = can.user.carte(event, can, {}, can.core.Item(can.onfigure), function(event, button, meta, carte) {
|
|
||||||
can.onfigure[button](event, can, carte); return true
|
|
||||||
}); break
|
|
||||||
default: can.onimport._window(can, value)
|
default: can.onimport._window(can, value)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -82,8 +79,7 @@ Volcanos(chat.ONIMPORT, {
|
|||||||
item.height = can.base.Max(html.DESKTOP_HEIGHT, can.ConfHeight()-125), item.width = can.base.Max(html.DESKTOP_WIDTH, can.ConfWidth())
|
item.height = can.base.Max(html.DESKTOP_HEIGHT, can.ConfHeight()-125), item.width = can.base.Max(html.DESKTOP_WIDTH, can.ConfWidth())
|
||||||
item.left = (can.ConfWidth()-item.width)/2, item.top = (can.ConfHeight()-item.height-125)/4+25
|
item.left = (can.ConfWidth()-item.width)/2, item.top = (can.ConfHeight()-item.height-125)/4+25
|
||||||
item.type = html.PLUGIN, item.style = {left: item.left, top: item.top, height: item.height, width: item.width}
|
item.type = html.PLUGIN, item.style = {left: item.left, top: item.top, height: item.height, width: item.width}
|
||||||
can.onappend.plugin(can, item, function(sub) { can.onappend.style(can, html.FLOAT, sub._target), can.ondetail.select(can, sub._target)
|
can.onappend.plugin(can, item, function(sub) {
|
||||||
can.page.style(can, sub._target, html.HEIGHT, item.height, html.WIDTH, item.width)
|
|
||||||
var index = 0; can.core.Item({
|
var index = 0; can.core.Item({
|
||||||
close: {color: "#f95f57", inner: "x", onclick: function(event) { sub.onaction._close(event, sub) }},
|
close: {color: "#f95f57", inner: "x", onclick: function(event) { sub.onaction._close(event, sub) }},
|
||||||
small: {color: "#fcbc2f", inner: "-", onclick: function(event) { var dock = can.page.Append(can, can.ui.dock._output, [{view: html.ITEM, list: [{view: html.ICON, list: [{img: can.misc.PathJoin(item.icon)}]}], onclick: function() {
|
small: {color: "#fcbc2f", inner: "-", onclick: function(event) { var dock = can.page.Append(can, can.ui.dock._output, [{view: html.ITEM, list: [{view: html.ICON, list: [{img: can.misc.PathJoin(item.icon)}]}], onclick: function() {
|
||||||
@ -93,25 +89,28 @@ Volcanos(chat.ONIMPORT, {
|
|||||||
}, function(name, item) {
|
}, function(name, item) {
|
||||||
can.page.insertBefore(can, [{view: [[html.ITEM, html.BUTTON, "window", name], ""], title: name, list: [{text: item.inner}], style: {"background-color": item.color, right: 10+25*index++}, onclick: item.onclick}], sub._output)
|
can.page.insertBefore(can, [{view: [[html.ITEM, html.BUTTON, "window", name], ""], title: name, list: [{text: item.inner}], style: {"background-color": item.color, right: 10+25*index++}, onclick: item.onclick}], sub._output)
|
||||||
})
|
})
|
||||||
|
sub.onimport._open = function(sub, msg, arg) { can.onimport._window(can, {title: msg.Option(html.TITLE), index: web.CHAT_IFRAME, args: [arg]}) }
|
||||||
|
sub.onimport._field = function(sub, msg) { msg.Table(function(item) { can.onimport._window(can, item) }) }
|
||||||
|
sub.onaction._close = function() { can.page.Remove(can, sub._target), can.onexport.tabs(can) }
|
||||||
|
sub.onappend.dock = function(item) { can.ui.dock.runAction(can.request(event, item), mdb.CREATE, [], function() { can.ui.dock.Update() }) }
|
||||||
|
sub.onappend.desktop = function(item) { can.onimport._item(can, item) }
|
||||||
|
sub.onexport.record = function(sub, value, key, item) { can.onimport._window(can, item) }
|
||||||
sub.onexport.marginTop = function() { return 25 }, sub.onexport.marginBottom = function() { return 100 }
|
sub.onexport.marginTop = function() { return 25 }, sub.onexport.marginBottom = function() { return 100 }
|
||||||
sub.onexport.actionHeight = function(sub) { return can.page.ClassList.has(can, sub._target, html.OUTPUT)? 0: html.ACTION_HEIGHT+20 }
|
sub.onexport.actionHeight = function(sub) { return can.page.ClassList.has(can, sub._target, html.OUTPUT)? 0: html.ACTION_HEIGHT+20 }
|
||||||
sub.onexport.output = function() { sub.onimport.size(sub, item.height, can.base.Min(sub._target.offsetWidth, item.width), false)
|
sub.onexport.output = function() { sub.onimport.size(sub, item.height, can.base.Min(sub._target.offsetWidth, item.width), false)
|
||||||
sub._target._meta.args = can.base.trim(can.page.SelectArgs(can, sub._option, "", function(target) { return target.value })), can.onexport.tabs(can)
|
sub._target._meta.args = can.base.trim(can.page.SelectArgs(can, sub._option, "", function(target) { return target.value })), can.onexport.tabs(can)
|
||||||
}, sub.onimport.size(sub, item.height, can.base.Min(sub._target.offsetWidth, item.width), false)
|
}
|
||||||
sub.onexport.record = function(sub, value, key, item) { can.onimport._window(can, item) }
|
can.onappend.style(can, html.FLOAT, sub._target), can.ondetail.select(can, sub._target, sub)
|
||||||
sub.onimport._open = function(sub, msg, arg) { can.onimport._window(can, {title: msg.Option(html.TITLE), index: web.CHAT_IFRAME, args: [arg]}) }
|
sub.onimport.size(sub, item.height, can.base.Min(sub._target.offsetWidth, item.width), false)
|
||||||
sub.onimport._field = function(sub, msg) { msg.Table(function(item) { can.onimport._window(can, item) }) }
|
can.page.style(can, sub._target, html.HEIGHT, item.height, html.WIDTH, item.width)
|
||||||
sub.onappend.dock = function(item) { can.ui.dock.runAction(can.request(event, item), mdb.CREATE, [], function() { can.ui.dock.Update() }) }
|
|
||||||
sub.onaction._close = function() { can.page.Remove(can, sub._target), can.onexport.tabs(can) }
|
|
||||||
sub.onappend.desktop = function(item) { can.onimport._item(can, item) }
|
|
||||||
can.onmotion.move(can, sub._target, {top: item.top, left: item.left})
|
can.onmotion.move(can, sub._target, {top: item.top, left: item.left})
|
||||||
sub.Conf("style.left", ""), sub.Conf("style.top", "")
|
sub.Conf("style.left", ""), sub.Conf("style.top", "")
|
||||||
sub.onmotion.resize(can, sub._target, function(height, width) {
|
sub.onmotion.resize(can, sub._target, function(height, width) {
|
||||||
can.page.style(sub, sub._target, html.HEIGHT, height, html.WIDTH, width)
|
|
||||||
sub.onimport.size(sub, item.height = height, item.width = width, false)
|
sub.onimport.size(sub, item.height = height, item.width = width, false)
|
||||||
|
can.page.style(sub, sub._target, html.HEIGHT, height, html.WIDTH, width)
|
||||||
sub._target._meta.height = height, sub._target._meta.width = width, can.onexport.tabs(can)
|
sub._target._meta.height = height, sub._target._meta.width = width, can.onexport.tabs(can)
|
||||||
}, 25, 0, can.ui.desktop)
|
}, 25, 0, can.ui.desktop)
|
||||||
sub._target.onclick = function(event) { can.ondetail.select(can, sub._target) }
|
sub._target.onclick = function(event) { can.ondetail.select(can, sub._target, sub) }
|
||||||
sub._target._meta = {index: sub.ConfIndex(), args: sub.Conf(ctx.ARGS)}, can.onexport.tabs(can)
|
sub._target._meta = {index: sub.ConfIndex(), args: sub.Conf(ctx.ARGS)}, can.onexport.tabs(can)
|
||||||
cb && cb(sub)
|
cb && cb(sub)
|
||||||
}, can.ui.desktop)
|
}, can.ui.desktop)
|
||||||
@ -142,16 +141,11 @@ Volcanos(chat.ONACTION, {
|
|||||||
} },
|
} },
|
||||||
create: function(event, can) { can.onimport._desktop(can) },
|
create: function(event, can) { can.onimport._desktop(can) },
|
||||||
})
|
})
|
||||||
Volcanos(chat.ONKEYMAP, {
|
|
||||||
escape: function(event, can) { can.onmotion.hidden(can, can.ui.searchs._target) },
|
|
||||||
space: function(event, can) { can.onaction._search(can), can.onkeymap.prevent(event) },
|
|
||||||
enter: function(event, can) { can.page.Select(can, can.ui.desktop, "fieldset.select", function(target) { target._can.Update(event) }) },
|
|
||||||
ctrln: function(event, can) { can.onkeymap.selectCtrlN(event, can, can.ui.menu._output, html.DIV_TABS) },
|
|
||||||
tabx: function(event, can) { can.page.Select(can, can.ui.menu._output, html.DIV_TABS_SELECT, function(target) { target._close() }) },
|
|
||||||
tabs: function(event, can) { can.onaction.create(event, can) },
|
|
||||||
})
|
|
||||||
Volcanos(chat.ONDETAIL, {
|
Volcanos(chat.ONDETAIL, {
|
||||||
select: function(can, target) { can.onmotion.select(can, can.ui.desktop, html.FIELDSET, target) },
|
select: function(can, target, sub) {
|
||||||
|
can.onmotion.select(can, can.ui.desktop, html.FIELDSET, target)
|
||||||
|
can.onexport.title(can, sub.ConfHelp())
|
||||||
|
},
|
||||||
})
|
})
|
||||||
Volcanos(chat.ONEXPORT, {
|
Volcanos(chat.ONEXPORT, {
|
||||||
tabs: function(can) {
|
tabs: function(can) {
|
||||||
@ -162,6 +156,14 @@ Volcanos(chat.ONEXPORT, {
|
|||||||
} }); can.misc.sessionStorage(can, [can.ConfIndex(), html.TABS], JSON.stringify(list))
|
} }); can.misc.sessionStorage(can, [can.ConfIndex(), html.TABS], JSON.stringify(list))
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
Volcanos(chat.ONKEYMAP, {
|
||||||
|
escape: function(event, can) { can.onmotion.hidden(can, can.ui.searchs._target) },
|
||||||
|
space: function(event, can) { can.onaction._search(can), can.onkeymap.prevent(event) },
|
||||||
|
enter: function(event, can) { can.page.Select(can, can.ui.desktop, "fieldset.select", function(target) { target._can.Update(event) }) },
|
||||||
|
ctrln: function(event, can) { can.onkeymap.selectCtrlN(event, can, can.ui.menu._output, html.DIV_TABS) },
|
||||||
|
tabx: function(event, can) { can.page.Select(can, can.ui.menu._output, html.DIV_TABS_SELECT, function(target) { target._close() }) },
|
||||||
|
tabs: function(event, can) { can.onaction.create(event, can) },
|
||||||
|
})
|
||||||
Volcanos(chat.ONFIGURE, {
|
Volcanos(chat.ONFIGURE, {
|
||||||
"session\t>": function(event, can, carte) { can.runActionCommand(event, "session", [], function(msg) {
|
"session\t>": function(event, can, carte) { can.runActionCommand(event, "session", [], function(msg) {
|
||||||
var hash = can.misc.SearchHash(can)
|
var hash = can.misc.SearchHash(can)
|
||||||
|
@ -7,7 +7,7 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg) { can.page.style(can, can._ou
|
|||||||
}), [
|
}), [
|
||||||
{view: [[html.MENU, html.TITLE]], list: [
|
{view: [[html.MENU, html.TITLE]], list: [
|
||||||
{img: can.misc.ResourceFavicon(can, msg.Option(html.FAVICON), can.ConfSpace())},
|
{img: can.misc.ResourceFavicon(can, msg.Option(html.FAVICON), can.ConfSpace())},
|
||||||
{text: decodeURIComponent(can.ConfSpace()||can.misc.Search(can, ice.POD)||location.host)},
|
{text: decodeURIComponent(can.user.info.titles||can.ConfSpace()||can.misc.Search(can, ice.POD)||location.host)},
|
||||||
], onclick: function(event) { can.sup.onexport.record(can, html.DESKTOP) }},
|
], onclick: function(event) { can.sup.onexport.record(can, html.DESKTOP) }},
|
||||||
{view: [[html.MENU, mdb.ICON, web.REFRESH], "", can.page.unicode.refresh], onclick: function(event) {
|
{view: [[html.MENU, mdb.ICON, web.REFRESH], "", can.page.unicode.refresh], onclick: function(event) {
|
||||||
can.sup.onexport.record(can, "reload")
|
can.sup.onexport.record(can, "reload")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user