If I understand your concern...
In order for this to work, one would have to take a "snapshot" of
the dialog when the user selects the OK button. No need to setq
any values during the run time of the dialog.
When gathering values, you want to catch all the enabled edit boxes
and not catch the disabled. Logically this makes no sense as the order/
item (and number) of values will be unique every time.
Go ahead and gather every tile and save as a list. from there, you can
access via position in the list and get the value immediately afterwards.
For example:
Dialog has three toggles next to 3 edit boxes.
Between the new_dialog and start_dialog set_tile to each of the
toggles. Value will be "0" or "1" but has to be declared regardless.
(foreach x (list "Tog1" "Tog2" "Tog3")
(set_tile x "0")
)
(action_tile "accept" "(MyProgram_GET)(done_dialog 1)")
Where:
(defun MyProgram_GET ()
(setq USER_MyProgram (list
(get_tile "Tog1")
(get_tile "Edi1")
(get_tile "Tog2")
(get_tile "Edi2")
(get_tile "Tog3")
(get_tile "Edi3")
))
)
Now:
Inside your main program code block, access the second toggle
and if the value is "1", access the edit box value.
(if (= (nth 2 USER_MyProgram) "1")
(setq a (nth 3 USER_MyProgram))
)
When dialogs get rather busy, I will screen shot the dialog, print
out, and hand write the key names onto the printout. I have also
been known to hand write the gremlin position (as n0, n1, etc.).
???
Scot-65
A gift of extraordinary Common Sense does not require an Acronym Suffix to be added to my given name.