Adapt skin editor to the new skin module and fix some bugs.

Fix internal blocks being detached from literal blocks after sorting.
Fix internal blocks not auto-sized.
Fix sorting pointer offset.
Code cleanup.
This commit is contained in:
2022-10-13 12:40:08 +08:00
parent cb51bb109b
commit 4003b309f5
3 changed files with 426 additions and 420 deletions

View File

@@ -6,9 +6,31 @@ messages["en_US"] = {
"input.comp.polysec": "polygon sectional mesh",
"input.comp.rect": "colored rectangle",
"input.comp.scale3": "scale3 sprite",
"input.comp.text": "text",
"input.ident.default": "variable",
"input.flag.default": "flag",
"input.prop.default": "property",
"input.prop.image.fit": "image sprite: scale mode",
"input.prop.image.frame": "image sprite: image name",
"input.prop.image.transparent": "image sprite: transparent mode",
"input.prop.polysec.body": "polygon sectional mesh: body image name",
"input.prop.polysec.head": "polygon sectional mesh: head image name",
"input.prop.polysec.shape": "polygon sectional mesh: section shape",
"input.prop.polysec.tail": "polygon sectional mesh: tail image name",
"input.prop.pos": "position",
"input.prop.rect.color": "colored rectangle: color",
"input.prop.rot": "rotation",
"input.prop.scale": "scale",
"input.prop.scale3.border": "scale3 sprite: unstretched area ratios",
"input.prop.sprite.bound": "sprite: secondary anchor position",
"input.prop.sprite.opacity": "sprite: opacity",
"input.prop.sprite.pivot": "sprite: anchor",
"input.prop.sprite.scale": "sprite: scale",
"input.prop.sprite.ui": "sprite: ui mode",
"input.prop.sprite.zindex": "sprite: layer order",
"input.prop.text.frames": "text: image mapping",
"input.prop.text.size": "text: font size",
"input.prop.text.spacing": "text: character spacing",
"input.prop.text.value": "text: content",
"input.type.chart": "chart",
"input.type.default": "element",
"input.type.group": "track group",
@@ -17,46 +39,28 @@ messages["en_US"] = {
"list.statement.comp": "Attach a component",
"list.statement.define": "Define a variable",
"list.statement.filter": "Filter element",
"list.statement.filter.flag": "Filter flag",
"list.statement.filter.flag.n": "Filter flag (negative)",
"list.statement.filter.prop": "Filter property",
"list.statement.filter.prop.n": "Filter property (negative)",
"list.statement.filter.exp": "Filter expression",
"list.statement.filter.type": "Filter element type",
"list.statement.obj": "Create a container",
"list.statement.prop": "Set property",
"list.statement.select": "Select elements",
"list.statement.select.flag": "Filter flag",
"list.statement.select.flag.n": "Filter flag (negative)",
"list.statement.select.prop": "Filter property",
"list.statement.select.prop.n": "Filter property (negative)",
"list.statement.select.exp": "Filter expression",
"list.statement.select.type": "Filter element type",
"literal.block.filter": "If {statement.filter.flag} {statement.filter.flag.n} {statement.filter.type} {statement.filter.prop} {statement.filter.prop.n}",
"literal.block.select": "For each {statement.select.flag} {statement.select.flag.n} {statement.select.type?element} {statement.select.prop} {statement.select.prop.n}",
"literal.statement.filter.flag": "it is {0}",
"literal.statement.filter.flag.n": "it is not {0}",
"literal.statement.filter.prop": "its {0} is {1}",
"literal.statement.filter.prop.n": "its {0} is not {1}",
"literal.block.filter": "If {statement.filter.exp} {statement.filter.type}",
"literal.block.select": "For each {statement.select.type?element} {statement.select.exp}",
"literal.statement.filter.exp": "{0}",
"literal.statement.filter.type": "it is a {0}",
"literal.statement.select.flag": "{0}",
"literal.statement.select.flag.n": "non-{0}",
"literal.statement.select.prop": "whose {0} is {1}",
"literal.statement.select.prop.n": "whose {0} is not {1}",
"literal.statement.select.exp": "that {0}",
"literal.statement.select.type": "{0}",
"statement.comp": "with a {0}",
"statement.define": "Define {0} = {1}",
"statement.filter": "{0} {1}",
"statement.filter.flag": "it is {0}",
"statement.filter.flag.n": "it is not {0}",
"statement.filter.prop": "its {0} is {1}",
"statement.filter.prop.n": "its {0} is not {1}",
"statement.filter.exp": "it matches the expression {0}",
"statement.filter.type": "it is a {0}",
"statement.obj": "Create a container {0}",
"statement.prop": "Set its {0} to {1}",
"statement.select": "{0} {1}",
"statement.select.flag": "that is {0}",
"statement.select.flag.n": "that is not {0}",
"statement.select.prop": "whose {0} is {1}",
"statement.select.prop.n": "whose {0} is not {1}",
"statement.select.exp": "it matches the expression {0}",
"statement.select.type": "{0}",
"tool.debug": "Debug",
"tool.hideadd": "Hide Add",

View File

@@ -1,65 +1,69 @@
messages["zh_CN"] = {
"block.filter": "如果 {}",
"block.select": "选择 {}",
"input.comp.default": "组件",
"input.comp.image": "图片元件",
"input.comp.polysec": "多边形截面网格",
"input.comp.rect": "纯色矩形",
"input.comp.scale3": "三段拉伸元件",
"input.ident.default": "变量",
"input.flag.default": "标记",
"input.prop.default": "属性",
"input.type.chart": "谱面",
"input.type.default": "元素",
"input.type.group": "轨道组",
"input.type.note": "音符",
"input.type.track": "轨道",
"list.statement.comp": "附加组件",
"list.statement.define": "定义变量",
"list.statement.filter": "筛选元素",
"list.statement.filter.flag": "筛选标记",
"list.statement.filter.flag.n": "筛选标记(否定)",
"list.statement.filter.prop": "筛选属性",
"list.statement.filter.prop.n": "筛选属性(否定)",
"list.statement.filter.type": "筛选元素类型",
"list.statement.obj": "创建容器",
"list.statement.prop": "设置属性",
"list.statement.select": "选择元素",
"list.statement.select.flag": "筛选标记",
"list.statement.select.flag.n": "筛选标记(否定)",
"list.statement.select.prop": "筛选属性",
"list.statement.select.prop.n": "筛选属性(否定)",
"list.statement.select.type": "筛选元素类型",
"literal.block.filter": "如果 {statement.filter.flag} {statement.filter.flag.n} {statement.filter.type} {statement.filter.prop} {statement.filter.prop.n}",
"literal.block.select": "对于每个 {statement.select.prop} {statement.select.prop.n} {statement.select.flag} {statement.select.flag.n} {statement.select.type?元素}",
"literal.statement.filter.flag": "元素带有标记 {0}",
"literal.statement.filter.flag.n": "该元素不带有标记 {0}",
"literal.statement.filter.prop": "该元素的 {0} {1}",
"literal.statement.filter.prop.n": "该元素的 {0} 不 {1}",
"literal.statement.filter.type": "该元素是 {0}",
"literal.statement.select.flag": "{0}",
"literal.statement.select.flag.n": "非{0}",
"literal.statement.select.prop": "{0} {1} 的",
"literal.statement.select.prop.n": "{0} 不 {1} 的",
"literal.statement.select.type": "{0}",
"statement.comp": "创建一个 {0} 组件",
"statement.define": "定义变量 {0} = {1}",
"statement.filter": "{0} {1}",
"statement.filter.flag": "该元素带有标记 {0}",
"statement.filter.flag.n": "该元素不带有标记 {0}",
"statement.filter.prop": "该元素的 {0} {1}",
"statement.filter.prop.n": "该元素的 {0} 不 {1}",
"statement.filter.type": "元素 {0}",
"statement.obj": "创建一个容器 {0}",
"statement.prop": "设置属性 {0} 为 {1}",
"statement.select": "{0} {1}",
"statement.select.flag": "{0}",
"statement.select.flag.n": "{0}",
"statement.select.prop": "{0} {1} 的",
"statement.select.prop.n": "{0} 不 {1} 的",
"statement.select.type": "{0}",
"tool.debug": "调试",
"tool.hideadd": "隐藏添加按钮",
"tool.hidedelete": "隐藏删除按钮",
"tool.sort": "排序",
"block.filter": "如果 {}",
"block.select": "选择 {}",
"input.comp.default": "组件",
"input.comp.image": "图片",
"input.comp.polysec": "多边形截面网格",
"input.comp.rect": "纯色矩形",
"input.comp.scale3": "三段拉伸图片",
"input.comp.text": "文字",
"input.ident.default": "变量",
"input.prop.default": "属性",
"input.prop.image.fit": "图片:缩放模式",
"input.prop.image.frame": "图片:图片名",
"input.prop.image.transparent": "图片:透明模式",
"input.prop.polysec.body": "多边形截面网格:中部图片名",
"input.prop.polysec.head": "多边形截面网格:头部图片名",
"input.prop.polysec.shape": "多边形截面网格:截面形状",
"input.prop.polysec.tail": "多边形截面网格:尾部图片名",
"input.prop.pos": "位置",
"input.prop.rect.color": "纯色矩形:颜色",
"input.prop.rot": "旋转",
"input.prop.scale": "缩放",
"input.prop.scale3.border": "三段拉伸图片:非拉伸区域占比",
"input.prop.sprite.bound": "图像:副锚点位置",
"input.prop.sprite.opacity": "图像:不透明度",
"input.prop.sprite.pivot": "图像:锚点",
"input.prop.sprite.scale": "图像:缩放",
"input.prop.sprite.ui": "图像:界面模式",
"input.prop.sprite.zindex": "图像:叠加次序",
"input.prop.text.frames": "文字:图片映射",
"input.prop.text.size": "文字:字体大小",
"input.prop.text.spacing": "文字:字符间距",
"input.prop.text.value": "文字:内容",
"input.type.chart": "谱面",
"input.type.default": "元素",
"input.type.group": "轨道组",
"input.type.note": "按键",
"input.type.track": "轨道",
"list.statement.comp": "附加组件",
"list.statement.define": "定义变量",
"list.statement.filter": "条件分歧",
"list.statement.filter.exp": "判断表达式",
"list.statement.filter.type": "判断元素类型",
"list.statement.obj": "创建容器",
"list.statement.prop": "设置属性",
"list.statement.select": "选择元素",
"list.statement.select.exp": "筛选表达式",
"list.statement.select.type": "筛选元素类型",
"literal.block.filter": "如果 {statement.filter.exp} {statement.filter.type}",
"literal.block.select": "对于每个 {statement.select.exp} {statement.select.type?元素}",
"literal.statement.filter.exp": "{0}",
"literal.statement.filter.type": "元素的类型为 {0}",
"literal.statement.select.exp": "{0}",
"literal.statement.select.type": "{0}",
"statement.comp": "创建一个 {0} 组件",
"statement.define": "定义变量 {0} = {1}",
"statement.filter": "{0} {1}",
"statement.filter.exp": "元素符合表达式 {0}",
"statement.filter.type": "元素的类型为 {0}",
"statement.obj": "创建一个容器 {0}",
"statement.prop": "设置属性 {0} 为 {1}",
"statement.select": "{0} {1}",
"statement.select.exp": "元素符合表达式 {0}",
"statement.select.type": "元素的类型为 {0}",
"tool.debug": "调试",
"tool.hideadd": "隐藏添加按钮",
"tool.hidedelete": "隐藏删除按钮",
"tool.sort": "排序",
};