World: r3wp
[View] discuss view related issues
older newer | first last |
Maxim 25-May-2009 [8966x2] | I really like the look of the tool selection is it just a button rotated 180 degres? |
LOL "workbench" in the menu... | |
Geomol 25-May-2009 [8968] | The selection effect is not just a button rotated 180, but took some drawing. :-) |
Maxim 25-May-2009 [8969] | it really is perfect. probably some of the most polished rebol GUI work I've seen so far. |
Geomol 25-May-2009 [8970] | Thanks! :-) |
Dockimbel 25-May-2009 [8971] | I agree, that's very good and high quality work. Nice tribute to the Amiga. |
Graham 15-Jun-2009 [8972x2] | Is there a way to dynamically turn a field into info and back again ... so to prevent users from editing various fields on an as required basis? |
Hope VID+ has a way to dynamically disable/ghost out widgets .... | |
Chris 15-Jun-2009 [8974] | Switch out 'feel objects and visual facets, unfocus, then 'show? (trying to recall if that's right...) |
Graham 15-Jun-2009 [8975] | should be easier! |
Maxim 15-Jun-2009 [8976] | Oldes/graham here is a complete application which shows you how to build and affect a face with a ghost effect. ---------------------------------- rebol [] ghost-blk: [ ghost-data: none ghost: func [][ self/ghost-data: make self [] self/image: img: to-image self effect: [ merge grayscale contrast -50 ] ;size: img/size edge: text: feel: pane: none show self ] regenerate: func [/local attr][ foreach attr [image effect feel edge text feel pane][ set in self attr get in ghost-data attr ] ghost-data: none show self ] ] stylize/master compose/only [ field: field with ghost-blk button: button with ghost-blk btn: btn with ghost-blk scroller: scroller with ghost-blk ] view layout [ across toggle "btn" [either face/data [my-btn/ghost][my-btn/regenerate]] toggle "button" [either face/data [my-button/ghost][my-button/regenerate]] toggle "field" [either face/data [my-field/ghost][my-field/regenerate]] toggle "scroller" [either face/data [my-scroller/ghost][my-scroller/regenerate]] return my-btn: btn "yippe" my-button: button "ka" my-field: field "yay" my-scroller: scroller 100x20 ] |
Graham 15-Jun-2009 [8977] | Very nice Max |
Maxim 15-Jun-2009 [8978x3] | you can easily adapt this for rebgui by simply replacing the feel related code above by whatever rebgui uses. |
thanks. | |
wrote this in 5 minutes... I always wonder why people complain about VID . its very easy to manipulate and control. | |
Graham 15-Jun-2009 [8981] | sure :) |
Maxim 16-Jun-2009 [8982x2] | anyone know of an official way to push a rebol view window back on top of all windows on the display? |
right now I am closing windows and reopening them... but if a pop-up is displayed, I'm getting strange results. | |
Izkata 16-Jun-2009 [8984x2] | I think I remember being able to change the order of faces in system/view/screen-face/pane to do that |
not certain, though | |
Maxim 16-Jun-2009 [8986x2] | but I can't seem to get the rebol window's in front of other application windows... I'll try using hide/show... I'm thinking there was a view option that allowed us to tell the engine that any show on a window would force it back to the top.. but its sooo far away in my memory, I might be in error. |
aaahhh found it... when you open the window... you specify the activate-on-show option :-D | |
Henrik 16-Jun-2009 [8988] | thanks for that one |
Maxim 24-Jun-2009 [8989x2] | this is an advanced question for View master: as very few know, there is an easy way to get pretty fast face scrolling in View, and that is by using the changes attribute of a face. this works fine in my scrollpanes and such.. but when I use it on a window face, it corrupts the window content. I have to use show twice, which actually is pointless. |
anyone know how to prevent view from corrupting the window face when I use window/offset: new-offset window/changes: 'offset show window | |
Gabriele 24-Jun-2009 [8991] | did you try without setting changes? |
Maxim 24-Jun-2009 [8992] | yes biut then it redraws the gui so its really slow. I finally cornered it unfortunately this is a work around to a bug, and it slows down the process. basically, you need to set the old-offset so its totally beyond the size of your window at current offset, this way, the redraw func doesn't try to reuse the saved area (it should have to since its a window, and its offset isnt affecting the display). the draw back is that it has to reblit all the window, but it still doesn't have to redraw it, so its still faster than not using changes at all, the bigger the more complex the window, the bigger the gain. but large windows will be affected by the slowness of view blitting. |
Henrik 8-Jul-2009 [8993] | I want to use parent-face correctly during INIT, instead of having it set during VIEW. I know that INIT is run during layout, but there may not be enough information available to correctly specify parent-face at that point. Has anyone worked on this? |
Anton 8-Jul-2009 [8994x2] | My first retort is "of course there is!" (enough information for layout to set parent-face). Layout first makes the panel face it will return, referred to by 'new-face, near the beginning of its code body. It subsequently populates the pane of new-face with new subfaces built from the spec block. At this time, layout has the great opportunity to set parent-face for each one, but it doesn't. So, there exists the possibility for us to patch layout to do so. |
The patch will be small, but of course, complicated to figure out. | |
Maxim 10-Jul-2009 [8996x2] | the parent-face is set on a call to show. AFAIK. the reason is simple, when you build your layout, you can potentially change the face you put the layout into before showing it. |
you can include it within the with block facet if you know it at that time. init is called after the layout is done (all calls to facet words and multi are done). | |
Henrik 10-Jul-2009 [8998] | I normally have a different solution for setting parent-face on any layout before SHOW, but it still happens some time after LAYOUT. I wanted it to be set earlier here, as an inspiration from VID3.4, where you can find a previous face during initialization, such as to attach a scroller to a panel without having the user needing to specify it directly in the layout. I made some changes to LAYOUT, added a refinement to specify which parent-face exists for the pane. This is possible, because LAYOUT is not recursive and is called whenever one pane needs to be laid out. The idea was then to set parent-face before INIT. This worked well for faces that are not at the base level for the window, but how do you specify the parent-face for base level faces, as the window face does not yet exist? I have dropped the idea again, because the solution is too convoluted. Besides it wouldn't be possible to attach to faces that come after the scroller, so you have exceptions, which is not good. Scroller attachment now happens on first use of the scroller instead. |
Maxim 10-Jul-2009 [8999x3] | glayout solves all of that ;-) and its all running over VID and does very few hacks... |
really, you should look into glayout, you are the kind of user which would "get" it very quickly and you'd be very happy about it. | |
your advanced styles work in glayout... I've converted the toolbar in 15 minutes last time I tried... | |
Henrik 10-Jul-2009 [9002] | I'll see what can be used, thanks. |
Maxim 10-Jul-2009 [9003x2] | Glayout is a complete system though... its hard to take things out since its takes charge of VID and expects all of it to be there. the layout depends on the api, which depends on the few patches, etc. |
but it still use the normal VID stylesheet for example for changing your styles... I like to see it like an invisible drop-in for VId which replace the layout engine and adds A LOT of needed functionality. | |
Henrik 10-Jul-2009 [9005] | your glayout-demo.r in rebol.org has no author listed |
Maxim 10-Jul-2009 [9006x2] | really? that is strange... |
Glayout has been updated a few times... I really should update the version on rebol.org. a few little layout tweaks and many new features added since that version... | |
Henrik 10-Jul-2009 [9008] | good idea. I have a hard time finding it via google. |
Maxim 10-Jul-2009 [9009] | you have trouble finding glayout? |
Anton 10-Jul-2009 [9010] | Henrik: "This worked well for faces that are not at the base level for the window, but how do you specify the parent-face for base level faces, as the window face does not yet exist?" -- Yes it does. It is called new-face, and is created right near the top of layout, and returned (of course) at the bottom. |
Maxim 10-Jul-2009 [9011] | but my current version has a display bug in the button looks when pressed... I keep changing the looks for every application, so it doesn't get fixed in the main lib. |
Henrik 10-Jul-2009 [9012x2] | A quick search on "rebol glayout" reveals the rebol.org version, the docs for REBOL's own LAYOUT and some mailing list posts about glayout. |
There is a single link to STEEL which gives me a 404. | |
Maxim 10-Jul-2009 [9014x2] | which is why it hasn't been updated for a while. the one on rebol.org is the last official release. |
its just old, but works with the rebol demo, (also on rebol.org) | |
older newer | first last |