; *************************************************************************** ; copyright : (C) 2026 by Martin Preuss ; email : martin@libchipcard.de ; ; *************************************************************************** ; * This file is part of the project "AqHome". * ; * Please see toplevel file COPYING of that project for license details. * ; *************************************************************************** #ifndef AQH_AVR_GUI2_AQHOME_D_NODEVALUEID_ASM #define AQH_AVR_GUI2_AQHOME_D_NODEVALUEID_ASM ; *************************************************************************** ; defines ; widget .equ DLGNODEVALUEID_OFFS_BEGIN = CDIALOG_SIZE .equ DLGNODEVALUEID_SIZE = DLGNODEVALUEID_OFFS_BEGIN+0 ; selectors .equ DLGNODEVALUEID_SEL_NODEADDR = DIALOG_SEL_NEXTFREE+0 .equ DLGNODEVALUEID_SEL_VALUEID = DIALOG_SEL_NEXTFREE+1 .equ DLGNODEVALUEID_SEL_NEXTFREE = DIALOG_SEL_NEXTFREE+2 ; *************************************************************************** ; code .cseg ; --------------------------------------------------------------------------- ; @routine DlgNodeValueId_new @global ; ; @param Y pointer to GUIAPP ; @param r21:r20 ressource id for title ; @return CFLAG set of okay, cleared otherwise ; @return Y address of newly created object DlgNodeValueId_new: bigcall GuiApp_GetRootWindow ; r19:r18=root window (none) brcc DlgNodeValueId_new_ret mov xl, r18 ; use root window as parent for main window mov xh, r19 ldi r24, LOW(DLGNODEVALUEID_SIZE) ldi r25, HIGH(DLGNODEVALUEID_SIZE) push r20 push r21 bigcall Object_Alloc ; Y=space (!r16, !r17, !X) pop r21 pop r20 brcc DlgNodeValueId_new_ret rcall DlgNodeValueId_Init DlgNodeValueId_new_ret: ret ; @end ; --------------------------------------------------------------------------- ; @routine DlgNodeValueId_Init @global ; ; @param Y pointer to dialog ; @param X pointer to root window ; @param r21:r20 ressource id for title ; @return CFLAG set of okay, cleared otherwise ; @clobbers any, !Y DlgNodeValueId_Init: ldi r16, 0 ; OPTS ldi r17, (WIDGET_PACK_FILLED<