[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re-defining the problem: String Blinkers & Dynamic Windows
Unfortunately, I was not clear about how I wanted to use string
blinkers in a dynamic window. David Loeffler's examples produce
a box around multiple string and/or graphic ojects (i.e. circle)
when the mouse is over that presentation.
The functionality that I want and had under Release 6.1, is to
have a string presentation object ("task 1"), such that when I move
the mouse over it, its mouse handler can sent a message
(e.g. send resource-1 :set-visibility :blink)
to another presentation object ("resource 1", a string blinker)
to cause its string of characters to blink and when I move
the mouse off "task 1" presentation, a message is sent to resource-1
(e.g. send resource-1 :set-visibility t) to stop blinking.
Also, when I move the mouse over the presentation
resource-1, it has a mouse handler which performs other functions.
I hope this clears up what kind of functionality I am searching for.
The previous postings follow:
Date: Fri, 15 Jan 88 08:25 CST
From: David D. Loeffler <Loeffler@MCC.COM>
Subject: String Blinkers & Dynamic Windows
Date: Thu, 14 Jan 88 17:32:15 PST
From: TAYLOR%PLU@ames-io.ARPA
I have been trying to use string blinkers in a dynamic window -
(dw:with-output-as-presentation (:type 'string :object "string blinker"
:stream <stream> :single-box t)
(setf *blinker* (tv:make-blinker <stream> 'tv:string-blinker
<args>))
where <stream> is a dynamic window. The blinker is created, but
does not scroll with the dynamic window and is not mouse
sensitive. Is there something I missed or is this a capability
that does not exist yet? Anyone else fooled with this stuff?
- thanks - will taylor%plu@io.arc.nasa.gov
I am not quite sure what it is that you want to do. I assume you would
like to put something on the screen and have it outlined the way a
string of several lines would outlined by the blinker. The code
fragment below does this. I put out two lines and the blinker conforms
to the outer edges of the strings. When I click on it the object
returned is the string-object "string blinker".
I don't think you want to define blinkers inside
dw:with-output-as-presentation anyway.
(dw:with-output-as-presentation (:stream *standard-output* :object "string blinker" :type 'string)
(fresh-line)
(write-string "This is a test")
(fresh-line)
(write-string "short"))
This is a test
short
#<DISPLAYED-PRESENTATION 450011203>
Command: 1'"string blinker"
0"string blinker
This one is a little different. Try using :single-box t also.
(dw:with-output-as-presentation (:stream *standard-output* :object "string blinker" :type 'string :single-box nil)
(fresh-line)
(write-string "This is a test")
(fresh-line)
(dw:surrounding-output-with-border ()
(write-string "short"))
(multiple-value-bind (x y)
(send *standard-output* :read-cursorpos)
(graphics:draw-circle (+ x 50) (- y 50) 10)))
-- David D. Loeffler
---- Will Taylor taylor%plu@io.arc.nasa.gov