Looking at your attached image, there need not be any action_tiles to any of the
tiles except for OK and Cancel. The accept structure is in the right direction, but
the syntax is a bit off...
(action_tile
"accept"
(strcat
(progn
"(done_dialog) (setq userclick T)"
(setq Po (get_tile "rb1"))
(setq La (get_tile "rb2"))
(setq B (get_tile "eb1"))
(setq L (get_tile "eb2"))
(setq H (get_tile "eb3"))
(setq K (get_tile "eb4"))
(setq OP (getpoint "\nInsertion point : "))
);progn
);strcat
);action_tile
(action_tile "accept" "(sub-function_call_here)(done_dialog 1)")
There can be nothing outside the second set of quotes inside the action_tile statement.
There can only be a total of 4 quotes inside action_tile. If more, they require escaping [\"].
You cannot use GETPOINT in this manner while inside action_tile. Take advantage of the
integer return from done_dialog to start dialog --> to enter in the "main" execution portion
of your code. Also, technically, the dialog is closed at the time you are trying to setq and
therefore the values you wish to fetch are already gone. Also, flip your "cancel" and add
a 0 to it's done_dialog.
Use the sub-function call to setq all the variables as I show, then call (done_dialog 1).
(setq sd (start_dialog))
then,
(if (and sd (= sd 1) (setq OP (getpoint "\nSpecify insert point: ")))
(progn
...
);progn
);if
load dialog
new dialog
initialize
set tile
mode tile
action tile
done dialog
start dialog
unload dialog
???
Scot-65
A gift of extraordinary Common Sense does not require an Acronym Suffix to be added to my given name.