World: r3wp
[!RebGUI] A lightweight alternative to VID
older newer | first last |
Robert 5-Sep-2005 [1930] | Yes, same semtantics to the program just an other user action to activate it. |
Graham 5-Sep-2005 [1931x4] | I think it should too. |
Otherwise field level validation becomes trickier to do. | |
should have the option for area widgets though as in VID. | |
Compare these two: display/dialog "" [ f: field return p: password ] do-events and display/dialog "" [ f: field return password do [ show-focus f] ] do-events Adding the show-focus adds a cursor to the password field as well. | |
Graham 6-Sep-2005 [1935] | Ashley, what do you think of adding in some way of assisting with field level validation. I was thinking of perhaps an optional dialected block that specifies if the field is of date type, not null, character length min/max, and for passwords, sufficiently complex. That way when building database applications, you can specify the table constraints at the field, and let rebgui automatically enforce that. |
Kaj 6-Sep-2005 [1936x2] | Hm, those were my first programs in 6502 machine code: validating field input routines to call from Atari BASIC. :-) |
The problems is how to do the feedback on input errors. This may have to be customized for a given program. I kept it simple and just made it beep :-) | |
Ashley 6-Sep-2005 [1938] | My tentative design concept for field level validation at the moment is to allow a block of REBOL data types to be specified, such as: field options [integer! decimal! none!] with invalid input changing the field color and not allowing focus to leave. Successful validation would restore field color and place the loaded face/text contents in face/data. Haven't thought about min / max lengths, although an empty field would be treated as none! so null / not null is handled by default. The password suggestion is a good idea, perhaps a min/max length option and a 'dict option that ensures the password contains no spaces and does not appear in the currently loaded dictionary? |
Graham 6-Sep-2005 [1939x2] | yep, or we could enforce an optional complexity rule such as contains mixed upper/lower case digits and punctuation marks |
ie. the rule can be defined by the user, and the gui allows us to specify a rule. | |
Kaj 6-Sep-2005 [1941] | If you make the rules that complex, I think there should be a way to give custom feedback, like displaying an error message |
Graham 6-Sep-2005 [1942] | Ok, perhaps use the action block for that. |
Pekr 7-Sep-2005 [1943] | Ashley - pressed for time, more on that later, but basing field values upon datatypes is not imo good way to go ... |
Ashley 7-Sep-2005 [1944] | And the alternative is? |
Kaj 7-Sep-2005 [1945x4] | I'm willing to bet Petr wants an evaluation function, like in Lotus Notes ;-) |
Which is indeed very flexible, but data types would be a good default | |
There's a problem with money, though, because the REBOL 1'000 syntax is not the human 1.000/1,000 way | |
(Not that there isn't always a problem with money ;-) | |
Chris 7-Sep-2005 [1949x2] | My thought is to have two parse rules -- one evaluated on keypress, the other on exit (of field). The exit parse rule would be strict, the keypress one would allow for partially completed entry, but denies a keypress that fails the rule. The two parse rules could be passed as arguments or created from a dialect? |
For example, the dialect may be: #XXX-XX and produces: [0 3 numeric 0 1 #"-" 0 2 numeric][3 numeric #"-" 2 numeric] | |
Graham 13-Sep-2005 [1951] | Any updates here? |
Ashley 14-Sep-2005 [1952] | Working on a number of 'layout fixes and adding support for a "return-after n" type keyword that should reduce the number of 'return's used in certain types of displays. |
Graham 14-Sep-2005 [1953] | Great. |
Pekr 14-Sep-2005 [1954x2] | one question - will there be better list/grid support? My rebol friend would use rebgui immediatelly, but is smiling and saying - those ppl don't design db releated apps? Wow can they live without multi-column text list or proper grid? :-) |
I told him those more complex styles will come later .... | |
Graham 14-Sep-2005 [1956] | there is multicolumn list now. |
Pekr 14-Sep-2005 [1957] | pretty weak though :-) |
Ashley 14-Sep-2005 [1958] | I'm using code like the following quite often now: display join settings/file " Summary" compose/only [ ... records: table 90x25 #W options ["Date" right .4 "User" left .2 "Description" left .4] data ( sql compose [select [date user description] from sys_records where (id) order by date desc] ) [ ; set record path record-path: dirize join file-path first face/selected ... ] ... ] The table widget is now very DB friendly. I haven't had a need for a grid widget, but then again my apps don't require spreadsheet type functionality. |
Pekr 14-Sep-2005 [1959x2] | Does it handle column resizing already? |
that was broken .. | |
Ashley 14-Sep-2005 [1961] | Column resizing and sorting now work correctly. In addition a number of useful accessor functions exist to more easily manage the data. From the online doco: 5.24 Table Columns and rows of values formatted according to a header definition block. Specification action block to execute when an item is selected. data block of values. options Optional multi word followed by column header entries in the form: string specifying column title word specifying column alignment decimal specifying column width as a percentage Runtime data block of values to display. picked block of currently selected row number(s). selected block of currently selected data. redraw function to redraw widget after data changes. |
Pekr 14-Sep-2005 [1962] | is there a multicolumn text list? Btw - why Carl did not check-in his updated and better list style as from VID 1.3 older IOS initiative for 1.3? |
Ashley 14-Sep-2005 [1963] | Plus the latest build lets you assign alt-click and dbl-click actions. |
Pekr 14-Sep-2005 [1964] | hmm, still the same issues - how they will be adressed? I know that event/focus system is not all that easy to change - but drop lists still work in non-system friendly manner - can't close it clicking away or pressing escape .... text-list does not allow multirow sellection (or it is part of its options?) I will better look into docs to stop asking what is maybe obvious :-) |
Ashley 14-Sep-2005 [1965] | Table and multi-column text-list are one and the same. Not involved in the VID 1.3 work so can't answer that. |
Pekr 14-Sep-2005 [1966x2] | table still needs a lot of work imo .... when you select record, move down by arrow down - when hilighted-row reaches the bottom, it does not cause srolling and row hilighting vanishes ... |
nice work on request-dir! | |
Ashley 14-Sep-2005 [1968] | Thanks, that and table still need a few minor aesthetic improvements but the base functionality is pretty solid. |
Pekr 14-Sep-2005 [1969x6] | can I have visual cell dividers? I mean - some styling istead of flat white design? It is list after all, so I will have to play with it ... |
another "bug" - maximize demo .... move last column to righ, minimize back - you can't see last column and there is no chance how to get to it .... I would expect horizontal scroller to appear ... | |
as for text-list multi-selection - dunno if I was understood incorrectly, or it was my fault to provide you with not so accurate description of how multi-selection with shift works .... however - it should be easy for you to check - just start Explorer and play with shift multi-selection ... | |
when you hold shift, it should remember the "last" press, but it means last before you pressed the shift. And that last point should not change. So - if you then select some other row, whatever the row is, it should still hilite rows between the initial point, and the point of your actual selection ... | |
I selected incorrect word last time .... "last" meant "initial" - it should work like anchor ..... simply you have one row selected ..... once you press shift, no matter what happens, that hilited row becomes kind of anchoring initial point. Then when you select whatever row, everything in between anchoring initial position and the point of your actual selection becomes hilighted/selected ... ufff, somehow can't express myself :-) | |
otherwise ctrl and other multiselection functionality is correct ... | |
Graham 17-Sep-2005 [1975] | Why does using alert sometimes close down the window it is being called from? |
Ashley 17-Sep-2005 [1976] | Haven't come across that one before. When it's happened was there anything in common between occurrences (I'm assuming its too sporadic for a reproducible test case)? |
Graham 18-Sep-2005 [1977x3] | Any plans to write accessor functions like 'get-text ? |
I guess what's happening is that 'alert shuts down any modal screens showing like this: display "" [ text "Non modal screen" return button "dialog" [ display/dialog "Test" [ text "Modal Screen" retur n button "Alert" [ alert "hello" ]]]] do-events | |
display "" [ text "Non modal screen" return button "dialog" [ display/dialog "Test" [ text "Modal Screen" return button "Alert" [ alert "hello" ]]]] do-events | |
older newer | first last |