You create and manage nested dialog boxes by calling new_dialog and start_dialog from within an action expression or callback function.
For example, by including the following statement, a function can display the “Hello, world” box when the user chooses the button called button_1:
(action_tile "button_1" "(c:hello)")
The user must exit the nested dialog box before using the previous dialog box again. A limit of no more than eight nested dialog boxes, but to avoid confusion it is recommended you nest dialog boxes no deeper than four levels.
The term_dialog function terminates all current dialog boxes as if the user had canceled each of them. You can use this function if you need to cancel a series of nested dialog boxes.