r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!REBOL3 GUI]

Steeve
26-Feb-2010
[937]
but then, I will build agents to optimize arrangements dynamicly
Graham
26-Feb-2010
[938x2]
so object oriented gui?
If it's slow .. just get a faster cpu
Steeve
26-Feb-2010
[940]
yep
Maxim
26-Feb-2010
[941]
or use liquid to optimise it.  ;-)
Steeve
26-Feb-2010
[942]
it's what i think now
Maxim
26-Feb-2010
[943x2]
steeve, I think you'd like
.. you'd like my glob engine (only R2 for now).
Steeve
26-Feb-2010
[945]
the opposite principle has been tested with area-tc. Cul de sac.
(i mean, having a fast engine (but huge and hard to maintain)
Graham
26-Feb-2010
[946x2]
The guis that work are object oriented ...
It's just too hard otherwise ...
Maxim
26-Feb-2010
[948x2]
@ jocko on rebol.org there is a working version of liquid and a small 
demo of how it can be merged right into VID called blood.r
it creates relationships between MANY text fields, which become integer 
fields because of the data types of the basic liquid values.
Steeve
26-Feb-2010
[950x2]
and i don't like the need of  a phase to construct graphical objects 
from read-only specs.
All the GUI we had so far, act such.
It's an bad...
bad concept
Maxim
26-Feb-2010
[952]
its why I'm pushing for graphic element as a lower-level api for 
AGG right into view.
Steeve
26-Feb-2010
[953]
to my mind there should not be difference of design between a style 
and a face.

A face is an instantiated style (copied and just showed) , tha't 
enough.
Graham
26-Feb-2010
[954]
at best it only works for very simple layouts
Steeve
26-Feb-2010
[955]
just copy/deep the style :-)
Graham
26-Feb-2010
[956]
so where are you at now?  1% complete ?  :)
Steeve
26-Feb-2010
[957x2]
something like that, i only made tests :(
But it works fine in my brain :)
Graham
26-Feb-2010
[959]
copy/deep Steeve/brain
Maxim
26-Feb-2010
[960]
== ERROR: stack overflow,  reason: brain too deep
Steeve
26-Feb-2010
[961x2]
if only
much like, division by zero
Cyphre
28-Feb-2010
[963]
Maxim, I have hacked together(in fact it was lurking on my hdd for 
couple of weeks but I got to publish it here today) a test of one 
concept which IMO could solve part of your requests regarding 'access 
to DRAW elements' etc in R3. It can be also handy when you need to 
manipulate content of complex DRAW blocks...or even be a base for 
scalable vector graphics editor...or....I think there is relative 
big potential of usage :-)
Just try to run:
do http://www.rebol.cz/~cyphre/scripts/r3/tests/draw-shapes.r
in your R3 console.

BTW The demo also features pixel precise object masking and optimized 
redrawing of DRAW objects just to prove we can do lot of things even 
at the higher level.

The file contains couple of predefined objects but the main code 
is very small like 4kB so it should be easy to see my point. Hope 
this could help a bit to someone.
Gregg
1-Mar-2010
[964]
That's excellent Richard! Heavy on the CPU, but still...
Pekr
1-Mar-2010
[965]
cool to see, what even non-HW accelerated View can do.
Steeve
1-Mar-2010
[966]
(found a way to have time events)
Cyphre
1-Mar-2010
[967]
Gregg, hmm...just checked the CPU usage and it looks like some regression 
in R3 view timers to me.
in R3 (2.100.97.3.1):
forever [wait 0:00:00.1] eats 10% of CPU 
forever [wait 0:00:00.01] eats 100% of CPU 

while both tests in R2 eats nothing.
Pekr
1-Mar-2010
[968x3]
Cyphre - are you sure?
IIRC, there are two modes for the timers, depending upon needed granularity. 
You measure two different times ...
http://www.rebol.net/r3blogs/0293.html
BrianH
1-Mar-2010
[971]
Plus, those mltimedia timers that people keep talking about use more 
CPU.
Pekr
1-Mar-2010
[972]
as for Windows, we know which timers are best, right? IIRC those 
were queue timers, but Carl said, that R3 timers are already OK
Cyphre
1-Mar-2010
[973]
Pekr, not sure what you mean by two modes. I believe in Windows R3 
is using one method using the high-resolution timer using QueryPerformanceFrequency() 
-  http://msdn.microsoft.com/en-us/library/ms644905%28VS.85%29.aspx
Which should be more precise than R2 and it looks it  works OK.


The problem I see is why the CPU should be at 100% when I'm forcing 
the loop WAIT for 10ms which is plenty of free time. Isn't it?
Henrik
1-Mar-2010
[974]
http://www.rebol.net/r3blogs/0088.html

A more accurate post on what's going on.
Cyphre
1-Mar-2010
[975x2]
hmm, but this stil doesn't address my question no?
It says the resolution is one milisecond which is cool. So why wait 
10ms doesn't let  CPU idle enough so it is not at 100% of usage?
Gregg
1-Mar-2010
[977x2]
I'm with Richard on this.
I seem to recall that .002 was a lower limit that could cause issues 
in R2 if you went below that.
Cyphre
1-Mar-2010
[979]
Yes, I'm not talking about precisison..this is not important in the 
tests above. The problem is why empty loop with enough IDLE time 
for CPU is making it at 100%
Pekr
1-Mar-2010
[980]
probably only Carl can answer this ...
Henrik
1-Mar-2010
[981]
Cyphre, I'm not sure if this is relevant, but timers under OSX are 
currently broken, so wait will eat CPU no matter what the wait period 
is. Maybe something broke in the last few versions?
Cyphre
1-Mar-2010
[982x2]
I don't know about OSX, sorry. I refer to Win versions just to be 
clear.
Also I just tried to test under some prehistoric alpha prototype 
R3 versions and the 100% usage is there so I wonder noone noticed 
that so far :)
Gregg
1-Mar-2010
[984]
Right. It seems that it's overhead in WAIT.
Cyphre
1-Mar-2010
[985]
Gregg, yes in R2 it looks the resolution that can be measured under 
Windows is ~10ms and you start to burn your CPU at 100% when you 
WAIT 0.0001 which means in R2 the same as WAIT 0.
Gregg
1-Mar-2010
[986]
Right. I thought maybe R3 had an artifact of that, but it doesn't 
seem so. CPU use goes up as you decrease the wait time, there doesn't 
seem to be a magic threshold.