In pharo it’s essentially the same. Just that all notifications are raised by messages that you send to the job.
On 08 Apr 2015, at 16:27, Thomas Brodt thomas.brodt.lists@porabo.ch wrote:
There is class Notice for that in Visualworks, with several methods for a simple popup dialog only, or with an overall progress meter, or even a progress bar with an additional message for every step.
You invoke something like:
Notice showProgress: 'Doing layout...' complete: 1000 while: [ ...do stuff ... IncrementNotification raiseSignal].
The counter is increased by raising the Notification.
So maybe there is a chance to get this handled by TRPlatform.
HTH
Thomas
Am 08.04.2015 um 16:08 schrieb Alexandre Bergel:
No idea. We have a platform TRPlatform class that contains platform dependent features. Maybe we could include one to have platform. But I am afraid this may complexify the whole things if progress bars are radically different in VW.
Alexandre
On Apr 8, 2015, at 10:38 AM, Yuriy Tymchuk yuriy.tymchuk@me.com wrote:
How do they display progress in VW?
On 08 Apr 2015, at 15:34, Alexandre Bergel alexandre.bergel@me.com wrote:
An alternative is to have another subclass, such as RTForceBasedWithProgressBarLayout But this is not idea, because the progress bar should be by default Pharo. And on VisualWorks no.
Another alternative, and the cleanest one I believe, is to have event generated to every X steps. You can have whatever you wish as a callback, moving the progress bar or not.
I have added an issue about this: https://code.google.com/p/moose-technology/issues/detail?id=1119
Alexandre
On Apr 8, 2015, at 9:50 AM, Tudor Girba tudor@tudorgirba.com wrote:
We need a better way of modeling that :)
Doru
On Wed, Apr 8, 2015 at 2:44 PM, Alexandre Bergel alexandre.bergel@me.com wrote: I have cleaned a bit your code with something like:
doExecute: nodeElements self start: nodeElements. self isJobInstalled ifTrue: [ self runLayoutInJob ] ifFalse: [ self runLayoutSimply ]. alpha := 0. nodes do: [ :e | translator translateTopLeftOf: e to: e position ]
It is in version .816 of Roassal2.
We should be able to run the layout without job. This is important for us
Thanks! Alexandre
On Apr 7, 2015, at 5:04 PM, Peter Uhnák i.uhnak@gmail.com wrote:
Out of curiosity I dug a little deeper and was happy to learn about a Job and more about Pharo internals.
In any case, try replacing RTForceBasedLayout>>doExecute: with this
doExecute: nodeElements self start: nodeElements. [ :job | job title: 'Laying out elements'; min: 1 - alpha; max: 1. nbIterations = 0 ifTrue: [ [ alpha := alpha * 0.99. alpha > 0.005 ] whileTrue: [ self step. job currentValue: 1 - alpha ] ] ifFalse: [ nbIterations timesRepeat: [ alpha := alpha * 0.99. self step. job currentValue: 1 - alpha ] ] ] asJob run. alpha := 0. nodes do: [ :e | translator translateTopLeftOf: e to: e position ].
it's bit messy (and doesn't account for nbIterations), but its a proof of concept.
I thing that it makes sense to create execution indicator without progress (with spinner for example)
What can be done is to display alpha on progress bar. From current value to 0.005 or whatever there is. I was thinking more something like this http://www.barchart.com/shared/images/progress_bar.gif or thsi https://i.stack.imgur.com/gz9GK.gif
Peter _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com
"Every thing has its own flow" _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev