World: r3wp
[!RebGUI] A lightweight alternative to VID
older newer | first last |
Ashley 2-Feb-2006 [2948x2] | It's an optimization that prevents multiple windows with the same title from being displayed. Quite useful in apps where you don't want someone clicking on a button multiple times and getting multiple, identical displays. I avoided basing it on face comparisons as two windows could be "identical" except for a single sub-face such as a timestamp. Must be working reasonably well as no-one has noticed it in almost a year. ;) |
BTW, good spot Volker. As for your two questions: 1) If i vidify rebgui, is there a chance to get it accepted? I'll except anything that makes writing a REBOL GUI (View, VID, RebGUI, whatever) easier. ;) 2) Do you insist on the api-clashes? Not sure what the issue is here, please elaborate. | |
Graham 2-Feb-2006 [2950x2] | I guess he means the name clashes for select-colour, date etc. which you already have noted. |
request-* | |
Volker 3-Feb-2006 [2952x5] | No, argument-lists for actions, init is a block in vid (i suggest a rename, init: [rebgui-init] and both are happy.) maybe some others. |
some vid-fields supported, like /flags, /access. So that 'layout and firends do not crash. | |
means i have to patch nearly everywhere a little bit, although close to find/replace. Can do that. | |
buit need agreement on the changes, or have to keep a private version and repatch each release. which means i stick with vid. | |
stick for new styles. if i could use widgets in vid, i would do my styles with rebguii. (also need a bsmall version, a few 10 kb then. i guess without dictionary would be enough). | |
DanL 6-Feb-2006 [2957x2] | Is there a checkbox-list widget for RebGUI? I'm looking for something like this: |
http://www.jidesoft.com/images/checkboxlist.png | |
Graham 6-Feb-2006 [2959x4] | yes there is. |
you can group them into check-groups | |
Ahh.. you wanted a list ... | |
Just add a scroller to scroll the checkgroup windows | |
DanL 6-Feb-2006 [2963] | OK... I see, thanks. |
Pekr 7-Feb-2006 [2964x3] | Ashley, just wanted to ask and can't find rebdb group here ... |
Isn't it possible to implement 'join? You once said that you will wait once RT adds RIF, but that will probably come who knows when - it is year and half late already. Do you think it would not be possible to proceed without RIF and switching to on-disk storage? | |
'join is really badly missing with rebdb and I am thinking switching to sqlite only because of that one feature. Once you have your data spread across many tables, it is difficult to work without it. Or how you do it? | |
JaimeVargas 7-Feb-2006 [2967x4] | Pekr. Join is relative easy to implement. |
Just do a search on each table, and then create a new block by using the key that joins them. | |
foreach key table1 [ values-table1: select key table1 values-table2: select key table2 append join-table reduce [values-table1 values-table2] ] | |
That is more or less the pseudo algorithm | |
Ashley 7-Feb-2006 [2971] | Moving to !RebDB group and renaming this group to !RebGUI |
Graham 13-Feb-2006 [2972] | Any time frame on updates ? |
Ashley 13-Feb-2006 [2973] | I've got quite a few minor fixes that I can wrap up into an 0.3.9 release, so I'll look at doing that within a week. |
Pekr 17-Feb-2006 [2974] | is RebGUI area supposed to scroll automatically as-you-type? ... as it does not currently - scroller is being updated, but face does not scroll ... |
Ashley 17-Feb-2006 [2975] | Yes, and the area problems are well known (by Graham amongst others) and not easy to fix. ;) |
Pekr 17-Feb-2006 [2976] | I thought so .... :-) |
Volker 17-Feb-2006 [2977] | http://polly.rebol.it/test/test/rebgui/download.rscrolls. Slider is not updated. but i prefer scroll-as-you-type. |
Pekr 17-Feb-2006 [2978] | hmm, what is the problem with slider? would we have to have something like hook to edit function and by each keypress to examine if we should redraw sliders? sounds complicated and would be slow probably? |
Volker 17-Feb-2006 [2979x2] | IIRC there is some automatic in rebgui. but that automatic changes the text-offset back when the edit-function changes it. |
SO while patching i guess i disabled it. | |
Ashley 20-Feb-2006 [2981] | 0.3.9 is out and it has a lot of fixes / enhancements. From a REBOL/View console: do http://www.dobeash.com/get-rebgui.r do view-root/public/www.dobeash.com/RebGUI/tour.r The dictionary file has been removed from the distribution and the download path has been changed from: www.dobeash.com/files/rebgui -> www.dobeash.com/RebGUI so you may want to delete view-root/public/www.dobeash.com in its entirety first to clean things up. In addition to the large number of fixes ( http://www.dobeash.com/it/rebgui/issues.html#section-2.2 ), a number of enhancements are documented here: http://www.dobeash.com/it/rebgui/display.html#section-2.1.7 http://www.dobeash.com/it/rebgui/display.html#section-3.2.4 http://www.dobeash.com/it/rebgui/display.html#section-3.2.5 http://www.dobeash.com/it/rebgui/display.html#section-5.20 Also note the following: view-face is now activate-on-show by default Added a request-password requestor (its password widget problems are known issues) group-box and tab-panel now auto-size Table column headings are now always left aligned and clicking the arrow works Added an 'effects context (only window is present, but others like 'button, 'check, etc may be added in future) And lastly, you will notice that %tour.r has a new "Appearance" tab where you can dynamically alter RebGUI's metrics, colors and effects. Note that some colors are still "hard-bound" at context creation and won't change - these will be made dynamic (via a set-colors func?) in the future. Apart from showing off RebGUI's dynamic scaling and display abilities, this lets you more easily prototype a unique look for your own apps if you want, and if you come up with a set of options that is truly fantastic then share it here and it may just become the new RebGUI default. Enjoy! |
Graham 22-Feb-2006 [2982x3] | Ashley, pretty neat on how you can dynamically change the appearance. |
I note that the area box still has the same problems with the cursor jumping from the middle of a paragraph when word wrapping to the bottom of the screen. | |
I note requesters can now be dismissed with the escape key, but can keycode shortcuts be used for Yes and Now ? | |
Robert 22-Feb-2006 [2985] | Using CTRL+A in list doesn't mark all entries. |
shadwolf 23-Feb-2006 [2986] | as usual great work ^^ |
Ashley 23-Feb-2006 [2987] | can keycode shortcuts be used for Yes and Now ... I was going to map Enter to OK / Yes and just leave ESC mapping to Close / Cancel / No. What keycodes were you thinking of ("Y" and "N"?). CTRL+A in list doesn't mark all entries ... good spot, I'll add it to the list. |
Graham 23-Feb-2006 [2988] | Yes and No as well as Enter and Esc would be good. |
Ashley 25-Feb-2006 [2989] | Widget Designer's Guide updated: http://www.dobeash.com/it/rebgui/widgets.html |
Robert 25-Feb-2006 [2990x2] | Good stuff, especially the optimization section. I see a lot of potential in my code :-)) |
Is there a way that we can add a RebGUI "verifier" that will check the use of VID words, etc.? IMO a good help. | |
Ashley 25-Feb-2006 [2992] | For SDK users; rebface.exe, then: do %path/gfx-colors.r do %path/gfx-funcs.r do %tour.r |
Robert 25-Feb-2006 [2993x3] | So, it's simple to encap. That's good. |
Haven't tried it yet. | |
Is there a simple way how we could seperate GUI code from application code, so that the application code can be used by a web-frontend as well? I just want to avoid to code things two-times. | |
Ashley 25-Feb-2006 [2996] | Depends. You can structure your code so that all the displays are in one file and all the business rules / data / action logic in another by coding like this: display "Test" compose/only [ button (app/labels/save) (app/actions/save) drop-list data (app/options/save) ] and using references to face (and face/parent-face) within your actions. This approach achieves a couple of things: 1) Separation of display from process 2) code / data reuse (i.e. you can share data / action blocks across multiple displays) 3) Can reduce the amount of code that is composed as app data / logic can be composed independently of the display 4) Code is more portable (as face references are generic) 5) Probably easier to maintain and debug Problems with this approach are: 1) "f: field" is easier to reference than "face/parent-face/pane/2" etc 2) You have to really think about how you structure your code 3) It's very different from the way we are used to (VID) |
Volker 25-Feb-2006 [2997] | a thought: how about adding to vars instead of setting them? i imagine bt: context[rebgui: none cgi: none fill: [true] action: [alert value] my-stuff: ..] display .. [ bt: button ] and now display would put its face in bt/rebgui |
older newer | first last |