Files
endorphin-tessera-gui/examples/native-subclasses.endor
codex-bot 6c42e5dde4
Verify Tessera GUI / verify (push) Successful in 9m53s
feat: construct native visual subclasses from Endor source
2026-10-21 02:06:25 +08:00

36 lines
1.0 KiB
Plaintext

class StatusText: TextBlock {
activeColor: String
function activate(self: StatusText, event: Event): Unit {
self.setText("继承的原生文本已更新")
self.setColor(self.activeColor)
}
}
class CustomStatus: StatusText {
message: String
function activate(self: CustomStatus, event: Event): Unit {
TextBlock.setText(self, self.message)
self.setColor(self.activeColor)
}
}
class ActionButton: Button {
target: Block
function activate(self: ActionButton, event: Event): Unit {
self.target.activate(event)
}
}
class CustomPage: Page {
caption: String
}
label = CustomStatus("点击按钮更新同一个自定义文本对象", 2, "#242422", "#237A45", "源码子类与原生载荷共同工作")
button = ActionButton("调用源码子类方法", label)
button.onClick(button.activate)
page = CustomPage("Endor 原生类型的源码继承")
page.render(Column(24, 16, TextBlock(page.caption, 2), label, label, button, ui.textOf(label, "message")))