AltME: R3-GUI

Messages

GrahamC
Carl had a habit of writing blogs instead of formal docs
GrahamC
@Cyphre, I have a suggestion on implementing externs in action blocks
https://github.com/saphirion/r3-gui/blob/master/source/layout-dialect.r3#L80
change to:
extend-face last-face 'actors reduce either block? body/1 [
    extern: take body [act funct/extern/closure [face arg] body extern]
][
    [act funct/closure [face arg] body]
]
If one wanted it more literate, you could make it
on-action [ extern: [  list of external words ] rest of action block ]
What do you think?

Cyphre
Graham, you mean more like:
on-action [[  list of external words ] rest of action block ]
at least that's what the change does.
I'm ok with that change as it shouldn't break older actors code. It should be very rare to start actor with a block definiton.
Anyone else here who is against that change?
Cyphre
yoffset: regarding "his code does call the draw dialect, and doesn't work, for some unknown reason." - yes, that's a bug. The SKEW command arg syntax changed (form decimal! to pair!) in the late aplhas but the parser definition remained old in one place.
I uploaded the fix to github and also made new build so LOAD-GUI should give you correct behaviour as well.

Bo
Back in the old days on Rebol2/View, it was possible to do something like this:
    save/png %myimage.png to-image layout [box 100x100 green text "Hello World!" image %flower.jpg]
I just tried something like that on Rebol3/View, and I get:
    >> to-image layout [text "Test"]
    ** Script error: object! type is not allowed here
    ** Where: to to-image
    ** Near: to image! :value
Is there a different way of doing this?
Cyphre
yes, you can do it like:
lay: layout [text "Test"]
write %layout.png encode 'png to-image lay/gob
Andreas
And instead of the `write %layout.png encode 'png ...` you should also be able to use just `save %layout.png ...`.
Cyphre
yes, using SAVE is shorter :)

Bo
Great!  This is going to help with the ability to display GUI elements and graphics on the ODROID-Show module (320x240x16 screen controlled through USB - retail price $25).  I've written a dialect to make using the screen easier via the text-based commands, and wanted to add a component to get the graphics to work as well.
amacleod
Bo, Thats a cool (and affordable) screen. Is there a touch solution that works with it that you know of?
Bo
No, I don't know of any touch ability.  However, there are companies that make overlays that use USB, although I don't know if you could find one that is 2.2 inches in size.

GrahamC
@cyphre, I was suggesting that we could look at different syntaxes eg.
on-action/extern [ action-block-here ] [ extern words here ]
on-action /extern [ action-block-here ] [ extern words here ]
on-actioin [ [ extern words here ] and rest of action block here ] <= this is the implementation I provided
on-action [ extern: [ extern words here ] rest of action block here ]
and was wondering what is most consistent with the r3-gui dialect as well as funct/extern

Cyphre
Graham, the implementation you provided looks like most convenient from the user's pov

GrahamC
I'm okay with that though it looks a little opaque

GrahamC
Demo of R3GUI with server, being driven by console clients generating tcp events to update the GUI
There's a task queue with tasks holding the jobs to be done by the console clients, and a callback when done.  In this case, the tasks are just downloading web pages.
not to be confused with task!
Bo
Nice demo!  I hope to get more into this type of thing soon.  Also, now I know what your voice sounds like. :-)
james_nak
Very cool Graham. I agree with Bo that it was nice to hear what you sound like after so many years,

Last message posted 31 weeks ago.