What I'd like to be able to do is this:
Code: Select all
Declare DLC()
Structure One
a1.i
b1.i
etc.i
EndStructure
Define.One Dim Two(14,12,3)
Define.One Dim Three(7,22,9)
Structure Four
pxxxr.i
q4.i
r4.i
EndStructure
Define Five.Four
; and in the course of the run
Five\pxxxr = @Two() ;or, with different results, it might be @Three()
; and at some point, with gadget 44
SetGadgetData(44, *Five) ;so DLC can access Five\q4, Five\r4 and Five\pxxxr
BindGadgetEvent(44, @DLC()) ;with an eventtype
;and here it comes
Procedure DLC()
Protected.i *DLC_Six.Four
Protected.One DLC_Seven ;this can't be exactly right, I don't need a fresh array
*DLC_Six = GetGadgetData(EventGadget())
;so now *DLC_Six\pxxxr contains the address of the array Two
@DLC_Seven = *DLC_Six\pxxxr ;bad syntax
Debug ArraySize(DLC_DSeven(),2) ;would be nice to get the answer '12'
EndProcedure