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

World: r3wp

[!REBOL3 Host Kit]

Kaj
13-Oct-2010
[167x2]
I'm only testing it by starting the interpreter and trying a few 
commands
Please don't use it to control nuclear facilities ;-)
ssolie
13-Oct-2010
[169x2]
just reading up on syllable... neat looking os
I like that it is amiga inspired ;-)
Kaj
13-Oct-2010
[171]
Thanks
Maxim
14-Oct-2010
[172x2]
Anyone know if we can shorten a block supplied to us in an extension?

it has to be the same block, not a copy.
something like the 'REMOVE function, but accessible from within the 
extension/host-kit
Maxim
15-Oct-2010
[174x9]
I think I'll be able to run the custom Gob Renderers in a multi-threaded 
setup by next week.


This means one thread will simply be rendering while the other will 
be handling events and manipulating data.


it should work since I've got changed state control built-into the 
primitve API, which lets the renderer know when to update its internal 
data... this will simply be set by the other thread.
if I can get the MM_timers to trigger the rendering refreshes on 
the renderer's thread, then the custom gob renderers can live on 
their own, and not even require explicit calls to refresh by the 
main thread.   


all you will need to do is manage data in the main thread, update 
it once the renderer is sleeping and it would update on its own when 
it awakes again.
if a data change takes more time than a single refresh interval, 
(i.e. the change is still occuring when the renderer awakes for its 
next refresh) then the renderer simply reuses the previous internal 
data. while its new user data is being setup.
primitives will have the possibility to setup run-time manipulators, 
which modify the internal primitive data on their own.  


this means you might not even notice that there is a frame jump in 
setup because the manipulators are still active, using the old data.... 

ex:  

'PRIMITIVE-A  has a targeting manipulator which keeps this model 
always aiming another model, 

'PRIMITIVE-B has a manipulator using a constant speed which ends 
up moving it in space.


now picture a situation where the scene update where taking longer 
than the sleeping time (or it just started at the wrong moment and 
occurs just before rendering starts).

if the main thread where responsible for triggering the refresh, 
you would see a noticeable lag. 


 but with this setup,  both primitives  would still continue to move, 
 while the speed is adjusted... when all the setup is done, the renderer 
 knows it can update and it then adjusts its internal data to reflect 
 the high-level changes made by the main thread.


the manipulators are C functions, so they will be very fast.  (there 
will be a special REBOL callback mode for testing, but it will be 
much slower)
now because both threads can work independently, we can do much more 
processing in the main thread and simplify the rendering so that 
manipulators just "use" data and process as little as possible, allowing 
for much higher scene density.  :-)
( and CPU fan noise  ;-)
Added a few recommendations in the host-lib section of R3 chat.... 
please add comments there, if you have any... 

just saying you agree is good as it shows Carl that the ideas are 
shared by several of us.
Added a few recommendations in the host-lib section of R3 chat.... 
please add comments there, if you have any... 

just saying you agree is good as it shows Carl that the ideas are 
shared by several of us.
and by the way, all the suggested macros are actually being used 
in real code, so they work.
Cyphre
19-Oct-2010
[183]
I have published 'unofficial' proposal with improvements to the current 
RichText dialect in R3. If anyone is interested in this topic you 
can read the proposal here: http://www.rebol.cz/~cyphre/docs/rich-text.html
Any feedback is appreciated.
Oldes
19-Oct-2010
[184]
not found
Pekr
19-Oct-2010
[185x4]
Cyphre - what about using direct rebol.cz plus subfolder - you've 
got access to it. ClearOS is crappy in that regard - I sent bug report 
to them, with no result at all ...
everyone - hit reload several times, then you will get the document 
....
where should we discsuss it, here?
What does it mean?:

- Embedded GOB containers in text
- Gob - Renders GOB embedded in text


I can't imagine, how this stuff works, and is organised. However 
- i am buying a book on text typography and layout, but so far from 
what I have read, you basically divide page into columns or boxes 
section, you can link them, those columns/rows have those typical 
margins, origings, etc. set, but we are talking DTP tools here :-) 
Are we getting something similar here?:


It is possible to have multiple paragraphs defined in one Rich Text 
block. Paragraphs are positioned one ofter another vertically. Vertical 
space between pargraphs is defined by PARA/INDENT/Y values. Use COLUMNS 
command(see below) to define how many paragraph columns should be 
used for paragraph layout.


... some wireframe model showing the terms on the image would be 
usefull ... but maybe others will understand, what's your idea ...
Cyphre
19-Oct-2010
[189x3]
Pekr, sorry, I forgot to upload the paragraph layout example image. 
Just reload the page it should be there.
Embedded GOB containers in text: that means you will be able to insert 
gob! objects inside the text flow
The document has been moved to http://www.rebol.cz/docs/rich-text.html
Oldes
19-Oct-2010
[192]
Just a detail... first paragraph should not be indented. The indent 
should be used only between paragraphs.
Cyphre
19-Oct-2010
[193]
yes, the para/indent values depend on you so you can set it as you 
need..or am I missing something?
AdrianS
19-Oct-2010
[194x2]
indent is not typically used as a term to mean spacing between columns 
- is the dialect already set?
the inter column space is called alley, usually
Cyphre
19-Oct-2010
[196]
nothing is set in stone so if you know better wording I'm open to 
changes...
Oldes
19-Oct-2010
[197x3]
Maybe it would be good to see and example how the multiple paragraph 
text is supposed to be specified.
Btw.. the columns support is interesting, but will it be possible 
to select text from multiple columns?
And is it normal that glyph-metrix returns pairs for advance and 
kerning?
Cyphre
19-Oct-2010
[200x2]
yes, text selection should work in multi-paragraph layout
pairs for advance and kerning: yes, that should be possible as someone 
may need to layuout text vertically. Not sure in how many cases/fonts 
the vertical values are used but they are supported by the system.
Oldes
19-Oct-2010
[202]
What about right-to-left direction?
BrianH
19-Oct-2010
[203x2]
AdrianS, according to the diagrams it looks like origin is doubling 
as the alley, not indent.
The vertical portion of the indent is the intracolumn spacing between 
paragraphs, not the intercolumn spacing between columns.
AdrianS
19-Oct-2010
[205x3]
is the vertical spacing in para/space just for specifying glyph spacing 
when using vertical writing or does it also specify the line spacing 
when using horizontal text?
Brian - what does intra-column mean when talking about the setting 
for just one paragraph?
can't each paragraph have it's own settings?
Cyphre
19-Oct-2010
[208x3]
multi para example:
[
	columns 2
	origin 20x20
	margin 20x20
	para p1
	text "abcd..."
	para p2
	text "efgh..."
]

all the spacing, indentation will be defined in the p1 and p2 objects 
(see the doc for all possible fields)
well, the margin shouldn't be probably relative to the gob/size but 
rather absolute pair position  so it is possible to define paragraphs 
that can be scrolled.
( so in this example it could be: margin (gob/size - 20) )
Oldes
19-Oct-2010
[211x2]
It would be good to have per paragraph margin imho.
So you could indent complete paragraph.
Cyphre
19-Oct-2010
[213]
how it would work in the multi-column mode?
Oldes
19-Oct-2010
[214x3]
I'm not sure if I understand what do you mean by absolute margin 
position, but sounds to be quite difficult to work with it.
margin only inside the size of the column of course.
In most cases there will be one columns only texts and complete paragraph 
indentation is used very often. At least in web pages.