<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<font face="Georgia">If you want speed, then why not limit the
visual updates to something you can see:<br>
<br>
doStepSeveral<br>
<br>
| n t lastDisplay |<br>
t := [<br>
(n := 500) timesRepeat: [<br>
self doStep.<br>
].<br>
] timeToRun.<br>
Transcript show: t asString,' ms for ',n asString,' steps
without display'; cr.<br>
<br>
t := [<br>
(n := 500) timesRepeat: [<br>
self doStep.<br>
self changed: #contentsSelection.<br>
World displayWorldSafely.<br>
].<br>
] timeToRun.<br>
Transcript show: t asString,' ms for ',n asString,' steps with
display'; cr.<br>
<br>
lastDisplay := Time millisecondClockValue.<br>
t := [<br>
(n := 500) timesRepeat: [<br>
self doStep.<br>
(lastDisplay - Time millisecondClockValue) abs > 20
ifTrue: [<br>
lastDisplay := Time millisecondClockValue.<br>
self changed: #contentsSelection.<br>
World displayWorldSafely.<br>
].<br>
].<br>
] timeToRun.<br>
Transcript show: t asString,' ms for ',n asString,' steps with
occasional display'; cr.<br>
<br>
yields:<br>
<br>
68 ms for 500 steps without display<br>
4290 ms for 500 steps with display<br>
101 ms for 500 steps with occasional display<br>
<br>
Cheers,<br>
Bob<br>
<br>
</font>
<div class="moz-cite-prefix">On 11/15/12 3:16 AM, Eliot Miranda
wrote:<br>
</div>
<blockquote
cite="mid:CAC20JE2PccGFhb06Cvtr3D9LTjNtneCBeWV=zA5WMPkOyBraaA@mail.gmail.com"
type="cite">Hi Bob,
<div><br>
</div>
<div> thanks, but no thanks <blush>. I want to see the
update as fast as possible, even if it flickers like crazy. I
don't want to display the whole world, just the text morph in
question. </div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On Wed, Nov 14, 2012 at 11:13 AM, Bob
Arning <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:arning315@comcast.net" target="_blank">arning315@comcast.net</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF"> <font face="Georgia">This
works for me:<br>
<br>
doStepSeveral<br>
<br>
10 timesRepeat: [<br>
self doStep.<br>
self changed: #contentsSelection.<br>
World displayWorldSafely.<br>
(Delay forMilliseconds: 100) wait. "in case
you want to see each step"<br>
]<br>
<br>
<br>
Cheers,<br>
Bob<br>
<br>
</font>
<div>
<div class="h5">
<div>On 11/14/12 1:26 PM, Eliot Miranda wrote:<br>
</div>
<blockquote type="cite">Hi All,
<div><br>
</div>
<div> I submitted a run until feature for the
debugger to the Squeak inbox recently and would
commit it to trunk except that I'd like the option
of having the selection update on each step. But
I can't see how to do that. I *think* selection
update is done with a callback here in
Debugger>>contents:selection:</div>
<div><br>
</div>
<div>
<div><br>
</div>
<div><span style="white-space:pre-wrap"> </span>Smalltalk
isMorphic ifTrue:</div>
<div><span style="white-space:pre-wrap"> </span>[World</div>
<div><span style="white-space:pre-wrap"> </span>addAlarm:
#changed:</div>
<div><span style="white-space:pre-wrap"> </span>withArguments:
#(contentsSelection)</div>
<div><span style="white-space:pre-wrap"> </span>for:
self</div>
<div><span style="white-space:pre-wrap"> </span>at:
(Time millisecondClockValue + 200)].</div>
</div>
<div><br clear="all">
<div>And I'm not sure how this causes the
selection to update. Is it part of text morph
draw or a separate thing? This is too
convoluted to look through. So perhaps someone
can help e. If I want the selection to redraw
what's the minimum action necessary. This is as
part of a loop that looks like</div>
<div><br>
</div>
<div>
<div><span style="white-space:pre-wrap"> </span>[self
selectedContext == context</div>
<div><span style="white-space:pre-wrap"> </span>
and: [(value := receiver with: context
executeMethod: method) == false]] whileTrue:</div>
<div><span style="white-space:pre-wrap"> </span>[self
doStep].</div>
</div>
<div><br>
</div>
<div>i.e. after the doStep I'd like to force the
code pane to update its selection.</div>
<div><br>
</div>
<div>AdvThanksance</div>
-- <br>
best,
<div>Eliot</div>
<br>
</div>
<br>
<fieldset></fieldset>
<br>
</blockquote>
<br>
</div>
</div>
</div>
<br>
<br>
<br>
</blockquote>
</div>
<br>
<br clear="all">
<div><br>
</div>
-- <br>
best,
<div>Eliot</div>
<br>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">
</pre>
</blockquote>
<br>
</body>
</html>