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

World: r3wp

[!REBOL3-OLD1]

Chris
28-May-2007
[2877]
CSS tells a browser a) how gobs (rebol terminology) should look, 
and b) how gobs fit together.  As the UI model (or DOM) is altered, 
the browser readjusts but still remembers how things fit together. 
 In View, you have to define these relationships programatically 
(and therefore delve to a lower level than you intended)
Pekr
28-May-2007
[2878]
could it be solved in layout?
BrianH
28-May-2007
[2879]
It could be solved by a less static layout engine. That would mean 
rewriting VID and View. Good thing that is being done anyway.
Pekr
28-May-2007
[2880]
would it be a benefit to have it awailable?
Gabriele
28-May-2007
[2881]
Chris: linux does not have a menu system.
Chris
28-May-2007
[2882]
While I don't understand the Linux desktop world all that well, would 
it be fair to say it'd require flavours -- Gnome, KDE and Custom? 
 Regardless, my hypothetical example (or what ever language-level 
solution is employed) should work in a manner consistent with the 
host environment (where possible, otherwise Rebolly consistent) whichever 
platform version of /View I download.  Where I think I misunderstood 
Brian is that *in my Rebol script* I do not want to say -- unless 
find [2 3] system/platform/4 [... implement a custom menu system 
of which I have to pick or design my own ...]
[unknown: 9]
28-May-2007
[2883]
Many years ago, before Rebol, I designed a language called MIDAS 
(Machine Independent Demonstration and Animation System). Unlike 
most acronyms, this really was exactly what the language was for.


It had a lot in common with Rebol, and worked on lists of words or 
data.


Its goal was simple, to work backward from what we know all systems 
need in order to demonstrate and present UI and animations (video). 
 We were reinventing the wheel, every time we made something.


I knew for example that there had to be a screen, although some systems 
might be Bitmaps, some might be bitplanes (the Amiga), and some where 
character maps (C64).  That the system might or might not have double 
buffering, etc


The idea was to have the language work backwards from the goal, and 
to have code that would force all the media assets to conform.

So for example, you have an image, and you want to show it.

Show image.jpg

I designed this as P-code, but the point is the same.


You would then execute the program MIDAS on the code in the first 
pass.  It would ask you questions about parts of the code.  The image 
here would be in question.  So an images process batch would be created 
for each image.  Allow the image to be processed from the original, 
or built by hand (in the case of the C64 which only had a few colours 
per 8x8 square).


The reason I'm explaining all of this is that the Menu system you 
describe is the same issue.  Most menuing systems are the same, or 
close enough.  The worst case is some special handling, for shortcuts, 
or for allowing items to be checked inside the Menu (the Amiga had 
this, I loved it!).

But the code should look effectively the same.
Chris
28-May-2007
[2884]
Yes.
[unknown: 9]
28-May-2007
[2885]
The cool function MIDAS had where the drawing functions, which kicked 
ass.


All drawing functions generated XY pairs, which could be embedded 
inline.


So a Circle on the C64 would make 320x240 based pairs, while the 
Amiga might make 640x480.  This made the functions very fast. 

You could also use this to make paths that objects could follow.
Volker
29-May-2007
[2886]
I suggest cheating. Start with this cool round menu and say "wel, 
platform lacks it anyway :)
PeterWood
29-May-2007
[2887]
Why GOB isn't a great name


Gob is commonly-used word in Britain and Ireland  Your Gob is your 
mouth. Gob Shite is a particularly Irish experssion to be used when 
somebody is talking rubbish. To Gob on somebody means to spit on 
them. A Gob refers to a portion of flem ejected from the mouth through 
the action of Gobbing (Spitting).
Pekr
29-May-2007
[2888x2]
why not face! ?
short, known ...
Anton
29-May-2007
[2890]
Lets not try to rename GOB now. What's that going to achieve ? Confusion, 
fighting - we are not going to agree on a new one easily. Then, at 
the end, RT will probably not like our name. There are probably lots 
of docs with "gob" in them now. Renaming would cause rewriting them 
all. - Not worth it.
Pekr
29-May-2007
[2891]
lot's of docs? What docs? :-)
Anton
29-May-2007
[2892]
Instead of arguing, I propose we spend our time doing something productive, 
like reversing caret-to-offset and fixing that long-standing issue.
Pekr
29-May-2007
[2893x2]
of course we can't push Carl to rename it, but the truth it, that 
it sounds a bit weird :-) And we know that Carl cares for naming 
conventions, right? My proposition was - that if 'feel stays, we 
can stick to what we have - feel, face, facet ..... and if face is 
gone? Currently it is not a datatype, but an object, so my proposition 
was easy - juste let's doc that from R2 to R3, face became a datatype 
:-)
but as for me - the name is not all that important to me.
Henrik
29-May-2007
[2895]
rebol already has some funny names, like 'attempt, 'feel, 'what, 
but if gob! has a negative connotation, perhaps it would be a good 
idea to look for something else. still, GOB is in family with BLOB 
and BOB and other data related words. What about GROB?
Anton
29-May-2007
[2896]
Bah - everything new is wierd.
Henrik
29-May-2007
[2897]
anton, isn't this a simple matter of a search/replace in the global 
source tree of rebol 3? if there is a time to make a deal out of 
it, it should be now.
Louis
29-May-2007
[2898]
I agree with Anton on changing names. In fact, I have totally changed 
my mind about renaming REBOL or any parts of it. The reason is that 
it would make obsolete all the documentation, etc. It would be like 
throwing all that work away, and would cause terrible confusion. 
I was perhaps the most strongly in favor of a name change, but after 
thinking about it more deeply I've decided I was wrong. Also, I think 
that REBOL has been around long enough that a fairly long number 
of programmers have at least heard of it. And now that R3 is coming 
out, it is very likely that a lot of people will start to give it 
more attention. So this is not the time for change.
Pekr
29-May-2007
[2899]
Louis - correct, and that is why I think it should be called face!, 
so the name would stay, it would just change its type from object 
to datatype :-)
Henrik
29-May-2007
[2900]
but this is one word in R3... there are no docs yet on it. I would 
assume that the naming and design phase of R3 is not yet entirely 
complete. so if there is a time to rename things, this is the best 
time to do it.
Volker
29-May-2007
[2901]
in paint programms its called layer?
Pekr
29-May-2007
[2902x2]
ah, layer, I like it. Most ppl working with photoshop or in general, 
will know it .... how is it called in web world? a box? (css)
I remember box in some old ZX Spectrum basic :-)
Louis
29-May-2007
[2904]
Well, if there are no doc yet, then a change may be in order. But 
for names already in docs I hold to what I said.
Volker
29-May-2007
[2905]
layer would imply that we have paint-functions like alpha. which 
we have :)
Chris
29-May-2007
[2906]
Anton, better now when all that needs fixed is RT's internal docs 
and source than hundreds of uses in the wild.  It really is an unfortunate 
name.  And there are some obvious replacements (over which there 
is no point in squabbling, we will not sway any decision).  Personally 
I think cell! or cel! would fit the bill.
Gabriele
29-May-2007
[2907x3]
face is not the same thing as gob.
vid will probably deal with faces, which in turn will refer to gobs 
for actual display.
a gob is just a graphic object, it does not contain a feel for example, 
and so on.
Henrik
29-May-2007
[2910]
gabriele, how far is there from an image! to a gob! ?
Gabriele
29-May-2007
[2911x4]
(there are docs - not many, but not zero either. but i don't think 
that's the real problem with the change.) anyway... i'll tell Carl 
about this.
image! to gob! - they're completely different. a gob is a C structure 
that holds the necessary information to display something, like a 
piece of (rich) text, or a shape, or an image.
gobs are also arranged in a tree, similarly to how faces are.
face is the closest thing to a gob, but a gob is a much simpler object 
than a face. n gobs may be needed to obtain the functionality of 
a single R2 face.
Maxim
29-May-2007
[2915]
I wonder why its not obvious to people that a gob is a single draw 
stroke.
Henrik
29-May-2007
[2916]
so a button could consist of 6 gobs, one for each edge, one for the 
background and one for the text?
Gabriele
29-May-2007
[2917x2]
yes.
or you can have just one to draw the 4 edges with draw.
Henrik
29-May-2007
[2919]
can you perform effects on a single gob?
Gabriele
29-May-2007
[2920]
also, if you use draw dialect only, you can still do almost everything 
with a single gob.
Henrik
29-May-2007
[2921]
ok
Gabriele
29-May-2007
[2922x2]
effects - afaik you can either have text, draw, effects, image, or 
color for a gob. they are mutually exclusive.
image + text means two gobs, or use draw dialect (with i think same 
limitations as you have now)
Maxim
29-May-2007
[2924]
but does the top level gob (of type effect) apply to all children?
Gabriele
29-May-2007
[2925x2]
i don't know, cyphre needs to answer this.
i think not - contained gobs are drawn above container gob