gui: make CDialog a full object with signal map, implement "OnMkContent".

This commit is contained in:
Martin Preuss
2026-05-11 11:53:37 +02:00
parent b927bfdab6
commit d34062df39

View File

@@ -52,6 +52,12 @@ CDialog_Init:
; store config
std Y+CDIALOG_OFFS_CONFIG_LO, r22
std Y+CDIALOG_OFFS_CONFIG_HI, r23
; set default signal map
ldi r16, LOW(CDialog_DefaultSignalmap*2)
std Y+OBJECT_OFFS_SIGNALMAP_LO, r16
ldi r16, HIGH(CDialog_DefaultSignalmap*2)
std Y+OBJECT_OFFS_SIGNALMAP_HI, r16
CDialog_Init_ret:
ret
@@ -122,5 +128,32 @@ CDialog_GetChildBySelector_ret:
; ---------------------------------------------------------------------------
; @routine Dialog_OnCreate @global
;
; @param Y pointer to dialog
; @clobbers any, !Y
CDialog_OnMkContent:
rcall CDialog_CreateContent
sec
ret
; @end
CDialog_DefaultSignalmap:
; header
.dw Dialog_DefaultSignalmap*2 ; next table to use
; entries
.db 0, DIALOG_SIGNAL_MKCONTENT, LOW(CDialog_OnMkContent), HIGH(CDialog_OnMkContent)
; end of table
.db 0, 0, 0, 0
#endif