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

[ALLY] Re: Redrawn Out

From: mike:myers:cybarite at: 7-Jan-2001 9:05

1/6/01 9:24:03 AM, "Carl Sassenrath" <[carl--pacific--net]> wrote:
>Hi Mike, > >I don't like thinking about how old those docs are, or in fact how old view >is compared >to what we run these days in Link. > >If I understand correctly, you want to display the object field in a window. >Yes, this >is very easy to do in View: > >view layout [ > across > h2 "User Input:" > return > txt 80 "First Name" > txt 160 user-input/first-name > return > txt 80 "Last Name" > txt 160 user-input/last-name > return > ... >]
Hi Carl, Thanks for taking this time to respond. My question is not on the display basics. I think the basics are there in the easyvid.r examples. And fortunately, I am past that level now. And I think the use of styles is one of the key leverage points in View. Super job! My question is avoiding the work to refresh values on the view-able portion. Here is the reference from the old View documentation: The redraw function is called immediately before a face is displayed. This allows a face to dynamically alter any of its facets prior to being displayed. This is how screen interacters (buttons, choices, etc.) reflect their current state to the user. For example, a button might be displayed as either up or down depending on the state of a variable that has been set. The redraw variable should be set to none if no function is needed. This speeds up the interface by not calling needless functions. If I hold values in memory in an object or store them to a database or change them in other faces, then when I want to display them, I want the current / correct value to be displayed. If I understand correctly ... which is not a given ... because layout is a layout tool, then the user interface is defined once. Changing the value held in the model (the object) does not change the values in the view. The /View examples that I have seen have been using a "Passive Model" as noted in the Model-View-Controller notes that I reference. See : Without some /View support, I would have to know before viewing a face that I have to refresh the display values in that view from those held in the model. Aside from the tedious error prone nature of this, it seems fundamentally flawed as an approach. I concluded that this is not what was intended in the /View architecture. And the old /View documentation seemed to support this as noted in the clip from the redraw section of the View html documentation. The MVC documentation refers to an approach called DependentFields which, as far as I know, does not have a parallel in /View. My question then with this background is whether REBOL/View or REBOL/Link provides a parallel to this DependentFields approach. If not is it planned or is there a workable solution to implement aside from the custom style approach that I proposed i.e. bound-Faces: stylize [ bound-txt: txt with [ append feel/redraw [texts/1] ; I haven't tried this yet .... it is trying to use the first text argument to the interacter as code. ] Then I coud use : view layout [across tab txt "First Name: " bound-txt "text: myObject/name-first" return tab txt "Last Name: " bound-txt "text: myObject/name-last" ] ; when these displays are re-drawn they will always display the value held in assigned object values. but this is not an "A" grade solution. [mike--myers--cybarite--com]