World: r3wp
[Core] Discuss core issues
older newer | first last |
Nicolas 14-Aug-2010 [17741x5] | ;simpler i1: make image! [60x60 #{FFFF00FFFF00FF960AFFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00 FFFF00FFFF00FFFF00FFFF00FFFF}] i2: make image! [3x1 #{FFFF00 FF960A FFFF00}] find i1 i2 |
any thoughts? | |
Am I doomed to convert the image to binary? | |
;this works | |
find i1/rgb i2/rgb | |
Steeve 14-Aug-2010 [17746] | it's broken since a while |
Graham 14-Aug-2010 [17747] | can someone rambo this? |
Nicolas 14-Aug-2010 [17748] | how does one rambo? |
Graham 14-Aug-2010 [17749] | http://www.rebol.net/cgi-bin/rambo.r This is the bug database for R2 and before |
Henrik 14-Aug-2010 [17750] | please check also if this bug exists in R3. |
Nicolas 14-Aug-2010 [17751x2] | ok |
check out this groovy cellular automaton I made with rebol http://docs.google.com/leaf?id=0B37bnU84uDb5OGE4YWFiNzUtNmM4ZC00Zjg2LTg5OTYtMzMwNGYzNmMxNzE1&hl=en | |
Graham 14-Aug-2010 [17753] | view layout [ f1: field button "test" [ context [ view/new layout [ f1: field "testing" ]]] button "F1 value" [ probe f1/text ]] why does the context not prevent the second f1 overwriting the first ? |
Henrik 14-Aug-2010 [17754] | because LAYOUT sets set-word!s globally. they don't exist in a particular context. |
Gabriele 14-Aug-2010 [17755] | because make object! only scans for set-word!s in the main block, not sub blocks. |
Graham 14-Aug-2010 [17756] | view layout [ f1: field button "test" [ use [ f1] [ view/new layout [ f1: field "testing" ]]] button "F1 value" [ probe f1/text ]] this works though |
Gabriele 14-Aug-2010 [17757x2] | >> context [do [f: 'something]] >> f == something |
so you need context [f1: none view/new ....] | |
Graham 14-Aug-2010 [17759] | I don't want it to overwrite the f1 I have in the global context |
Gabriele 14-Aug-2010 [17760x2] | see the VID-CONTEXT function here: http://www.colellachiara.com/soft/libs/utility.r |
or, if you want a more general solution, see my implementation of modules: http://www.rebol.it/power-mezz/mezz/module.html | |
Graham 14-Aug-2010 [17762] | thanks .. you've got module for everything! |
Gabriele 14-Aug-2010 [17763] | i guess 11 years of reboling pay off sometimes :-) |
Graham 14-Aug-2010 [17764x2] | absolutely |
so this is like a 'funct for layout | |
Gabriele 14-Aug-2010 [17766x3] | yes. it's still main block only iirc |
but i found it very useful with VID | |
MODULE instead scan sub-blocks as well and preserves globals by copying them. | |
Henrik 14-Aug-2010 [17769] | I guess I was incorrect. 8 years of REBOLing is not enough. |
Graham 14-Aug-2010 [17770] | how exactly do you use it? |
Gabriele 14-Aug-2010 [17771x2] | layout vid-context [....] |
it will make set-words in there local. i think i had a refinement to also get the context in case you need to access it... | |
Graham 14-Aug-2010 [17773x2] | ok, should work for rebgui too then |
vid-context/to | |
Gabriele 14-Aug-2010 [17775x2] | yep, vid-context/to [...] 'word |
(it's a small function so you can easily modify it to fit your needs, as well) | |
Graham 14-Aug-2010 [17777x2] | I have a screen ( VID) and a function that loads values into that screen. I was hoping to reuse that screen elsewhere by enclosing into an anonymous context, and use the function that loads the data with the same. |
so does it make sense to fix make object! to scan for set-words in the sub blocks? | |
Chris 14-Aug-2010 [17779] | You might end up with some rather large objects with lots of redundant words - perhaps not so useful for data modelling... |
Graham 14-Aug-2010 [17780x5] | Well, instead then a context function that deep scans for all set words |
I want to be able to reuse these screens I have defined elsewhere and the functions that operate on these screens without overwriting the original values ... | |
c: does [ f/text: "hello" show f ] view layout [ f: field button "New" [ context [ f: g: none bind [ c ] 'g view/new layout [ f: field button "test" [ c ] ] ]]] this doesn't work ... pressing the test button sets the f field in the first window and not the second | |
c: does [ f/text: "hello" show f ] view layout [ f: field button "New" [ context [ f: g: none bind [c] 'g view/new layout [ f: field button "test" [c] ] ] ] ] | |
should be bind [c] g but still doesn't work | |
sqlab 14-Aug-2010 [17785] | Probably I do not understand the real intention, but I woud do c: func [f] [ f/text: "hello" show f ] and button "test" [c f] |
Gregg 14-Aug-2010 [17786] | Very cool both Nick and Gabriele. |
Graham 14-Aug-2010 [17787x3] | My 'c function references about 20 fields so I want to avoid passing the field name as parameter |
If it can be solved thru binding .. .? | |
If it can't I'll just copy the function | |
Gregg 14-Aug-2010 [17790] | Graham, you need to bind the function body. |
older newer | first last |