Here's a sample to create dialog which allow us to pick something in the drawing (points, entity etc)
(defun ddmkv_main ()
(setq dh (load_dialog "ddmkview.dcl"))
(while (and loop dh (new_dialog "ddmkv_dlg" dh))
(ddmkv_init_tiles)
(ddmkv_get_actions)
(setq whatnext (start_dialog))
(cond ( (= whatnext 0)
(setq loop nil)
)
( (= whatnext 4)
(while (= (setq pt1 (getpoint "\nFirst corner: ")) nil))
(while (= (setq pt2 (getcorner pt1 "\nSecond corner: ")) nil))
(setq ddmkv_pt1pt2 (list pt1 pt2))
)
); end of cond
); end of while
(unload_dialog dh)
(command "undo" "mark")
(if (= 1 whatnext) (ddmkv_startcommand))
)