CLIM mail archive

[Prev][Next][Index][Thread]

Accepting values and Abort



   Date: Mon, 26 Oct 92 15:32:16 MST
   From: Robin Kladke (303)977-9760 <robin@orion.den.mmc.com>

   When i create a pop-up window using clim:accepting-values and
   clim:accept and the user chooses Abort, my program at large will
   abort and/or the process from which the window is run will stop
   (i.e., "Stopped" will show up in the mouse line).  I want Abort to
   cause the window to go away (and maybe print a message saying that
   the operation was aborted) but not to have any effect on other
   running processes or the rest of the program from which it is
   called.

   I have tried typing in examples from the CLIM 1.0 manual, but they
   don't seem to work properly either.  If i type in reset-clock from
   page 241 of the Symbolics manual and choose Abort, the string
   "~&Time not set" is not printed.  The fact that it doesn't print as
   expected may have something to do with my bigger problem.  The
   simple code from symbolics is essentially:

Well, I don't have the time to read and understand your code, but I
have some comments.  Some of your FORMAT messages were directed to
*STANDARD-OUTPUT*, which isn't bound to a CLIM stream.

Here is a simple example that seems to work for me.  Try it.  If it
works for you then you have to look harder at your code.

Pass the simple-avv-test function a CLIM window that you have created
earlier.  If you click on Abort, you should get a second AVV dialog.

================================================================
(in-package :clim-user)

(defun simple-avv-test (stream)
  (restart-case
    (let ((value 0))
      (accepting-values (stream :own-window t)
	(setq value (accept 'integer :stream stream)))
      (return-from simple-avv-test value))
    (abort () (format stream "~&First choice aborted")))
  (accepting-values (stream :own-window t)
    (format stream "~&You aborted the first choice, so now you have to enter a symbol")
    (terpri stream)
    (accept 'symbol :stream stream)))

0,,

References:

Main Index | Thread Index