World: r3wp
[View] discuss view related issues
older newer | first last |
shadwolf 22-Feb-2005 [402x2] | >> source show-popup show-popup: func [face [object!] /window window-face [object!] /away][ if find pop-list face [exit] window: either window [window-face] [ if none? face/options [face/options: copy []] if not find face/options 'parent [ append face/options compose [parent (none)]] system/view/screen-face] face/action: away insert pop-list pop-face: face append window/pane face show window] |
face/action: away | |
[unknown: 5] 22-Feb-2005 [404] | Yeah I never seen that one either. Someone should get Carl to throw that in the docs |
Anton 22-Feb-2005 [405x2] | It is used in wake-event. |
write clipboard:// mold get in system/view 'wake-event | |
Romano 22-Feb-2005 [407] | the away refinement try to create modal face which are closed when the user click outside the face (like in menu) |
Vincent 22-Feb-2005 [408] | Thanks Romano - I was trying to document it in french, but wasn't satisfied with the official description "/away - the away refinement"... |
Romano 22-Feb-2005 [409] | hehe |
Rondon 23-Feb-2005 [410] | Hi Folks. Where can I find vid-styles to look like and feel a XP? I know that SurfDetect uses something like that.. Any tips ? |
Pekr 23-Feb-2005 [411x5] | Today I was asked by my friend to help him with View. I did not know he still uses Rebol at all ;-) |
He has following "problem" - imagine two faces. First one, container, of size 50x50, featuring scrollers etc. Second one, inside the container, of size 100x100. Now he tries to get image of the larger face, so he does something like to-image container-face/pane ... | |
The result is image of 100x100 correct size, but the image is cut-off of content hidden by parent face .... | |
the strange thing is, that when he does 'unview, followed by the same command, then the image is full, not cutt-off ... anyone? | |
btw - he uses imo 1.2.10, as he told me he want to use last "stable" version .... once again - we should probably do something with View release, or ppl will still use old stuff, even if new one is stable enough to use ... | |
Rebolek 23-Feb-2005 [416] | I think if you 'view face and then you use 'to-image rendered bitmaps are taken - so it's just 100x100. If the face is not viewed at all or unviewed, all faces and subfaces must be completely rendered, so you get full bitmap....just my thoughts |
Pekr 23-Feb-2005 [417x2] | hmm, so no chance of getting image of 100x100 face? |
I have thought that "unview" "destroys" rendered faces? So I am surprised he got correct result? | |
Rebolek 23-Feb-2005 [419x2] | 'unview probably "clears" "bitmapcache" so all faces and subfaces must be rendered again if you use 'to-face. and 'view probably composes all bitmaps together, so everything overlayed is lost when using 'to-image...but that's just what I think, I don't know how it really works internaly |
'to-face --- it should be 'to-image | |
Pekr 23-Feb-2005 [421] | hmm, and once he is in View layout = rendered state, he simply wants to press a button and get resulting image ... Maybe he could render it once again in the background somehow? But how? |
Rebolek 23-Feb-2005 [422] | mh, probably make new face (without 'view-ing it) with the content of the subface |
Volker 23-Feb-2005 [423] | has he tried "show container-face/pane" before to-image? maybe that helps. |
Pekr 23-Feb-2005 [424] | why would there be show needed? IMO it is correct that container-face clips the image .... hmm, although maybe not, becase the image is still 100X100, just content is 50x50 :-) |
Volker 23-Feb-2005 [425] | the buffer is 100x100, but /view knews only the 50x50-part is needed, so draws only that in the buffer. |
Pekr 23-Feb-2005 [426] | I will send him email to try ... |
Volker 23-Feb-2005 [427x2] | you must somehow tell the image its not clipped. when you show the container, it thinks it is. when you show itself, maybe it renders full. |
i guess faces remember if they are already rendered or not. but they don't remember that they are only rendered partly. 'unview tells them they are unrendered. hmm, maybe a 'hide does the same. would only flicker, not unview the whole window. | |
Pekr 23-Feb-2005 [429x2] | I just tried show and it does not seem to work ... but maybe my code is buggy :-) |
>> container-face: layout [b: box 50x50 red button "to-image" [show b/pane r: to-image b/pane]] >> subface: layout/size/offset [at 0x0 box 100x100 blue] 100x100 0x0 b/pane: subface >> view container-face >> view layout [image r] | |
Volker 23-Feb-2005 [431x3] | No, your code is ok, only rebol is - ahem ;) |
b/pane: none show subface ; and then restore b/pane | |
rebol[] container-face: layout [b: box 50x50 red button "to-image" [b/pane: none show subface r: to-image subface b/pane: subface show b view/new layout [backdrop black image r] ]] subface: layout/size/offset [at 0x0 box 100x100 blue] 100x100 0x0 b/pane: subface view container-face | |
Pekr 23-Feb-2005 [434x3] | why b/pane: none? |
do you think there is something strange with face rendering/composition/refresh? | |
actually - if you set b/pane to none, where will subface be shown/rendered? :-) | |
Volker 23-Feb-2005 [437] | its rendered in its buffer. you must tell /view that the parent-face of subface is invalid. thus b/pane: none. now b/pane does not know subface and subface must re-render itself and then it goes full size. else it knows only the 50x50 is visible. should be fixed in to-image to force a full redraw. |
Pekr 23-Feb-2005 [438] | nice, thanks a lol! It sounds also logical :-) |
Gabriele 23-Feb-2005 [439] | Rondon: the styles for the Detective were designed and implemented by Romano and Chris. The code is under the GPL; i guess you can contact them about them. bear in mind they were not intended to be generic styles, but were done just for the detective. |
Chris 23-Feb-2005 [440] | http://www.ross-gill.com/r/btn-style-old.r-- this is an earlier version of my xp-themed btn style. |
Guest 23-Feb-2005 [441] | . |
Cyphre 23-Feb-2005 [442x2] | Pekr: the solution for your problem is: sublay: layout/offset [ box 100x100 field "" ] 0x0 view layout [ b: box 50x50 button "do-obr" [ save/bmp %obr.bmp to-image make sublay [ pane: head forall pane [ pane/1: make pane/1 [] ] ] ] do [b/pane: sublay show b] ] |
in other words the to-image takes the parent-face references for rendering so you have to get rid of them. | |
Pekr 23-Feb-2005 [444x2] | That is nice ... but another example of how even short rebol code can be difficult to understand, at least for me ... |
pane: head forall pane [pane/1: make pane/1 []] ... is a magic to me ... | |
Ashley 23-Feb-2005 [446] | You're not the only one! ;) |
Pekr 23-Feb-2005 [447x2] | hmm, so during the button-press, you simply make sublay [] In such case, you get clone of sublay face definition, right? So you also need to iterate thru sublay pane elements and recreate them for made face? |
Ashley - I think it is like I described it now ... Cyphre is making new sublay face ... and original sublay can contain xy elements, e.g. field with some filled-in info, so he imo iterates thru its pane and recreates it .... | |
Ammon 24-Feb-2005 [449] | How do you change the title of a window that has already been VIEWed? |
Allen 24-Feb-2005 [450x2] | lay/text: title lay/changes: 'text |
;-- working example lay: layout [ size 500x200 button "Change Title" [ lay/text: join "Time: " now lay/changes: 'text show lay ] ] view lay | |
older newer | first last |