Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

[REBOL] Re: VID question: global words

From: robert:muench:robertmuench at: 4-Nov-2002 17:14

> -----Original Message----- > From: [rebol-bounce--rebol--com] [mailto:[rebol-bounce--rebol--com]] > On Behalf Of Romano Paolo Tenca > Sent: Monday, November 04, 2002 1:50 PM > To: [rebol-list--rebol--com] > Subject: [REBOL] Re: VID question: global words > It is correct, because in this example f1 f2 f3 are set words > linked to the context system/words. If you pass to Layout > words linked to another context (user defined), layout will > use that user defined context.
Hi, ok. That's what I assumed. Ok, what to do if I want to mix words from different contexts in one layout: A: context [a: none] B: context [b: none] C: none Layout [ a/a: field "a/a" b/b: field "b/b" c: field "C" ] IIRC a/a can't be used in layout.
> In Rebol it is better to think in term of contexts not of > words: the question is what is the context to which is linked > the set word f1:?
Yep, still to many years C++ programming ;-)).
> Layout will use that context. Here I pass a > word linked to an object context and Layout will use that context. > > o: context [f1: none layout [f1: button]] > type? o/f1;==object!
Ok, but for this you have to create layout within the context of the object as well. IMO there is no necessarly a direct relation between an object and a layout.
> The word box2/f1 does not exists: has not been created.
Ups, sorry I used a bad syntax here. I just want to referr to the second f1 definition not the first :-(. But now I think the global word f1 will be set to a new value.
> First, you must create it with the 'with expression: > ... > Layout will create and bind the words for you.
Hell, this is quite complicated. Thansk for the answer, I have to read it some more times and pay around with it. Robert