World: r3wp
[!RebGUI] A lightweight alternative to VID
older newer | first last |
Ashley 15-Feb-2007 [5262] | build#53 committed to SVN. Button widget rewritten to take full advantage of AGG and fix some anomalies (e.g. actions now fire on button up instead of button down, replaced 'active facet with options [info], hover effect no longer "sticks" when a popup is called from a button, etc). And all this in 1/4 of the code! ;) |
Pekr 15-Feb-2007 [5263] | nice! |
Graham 15-Feb-2007 [5264] | Robert, is there a tree widget available yet in your version? |
Graham 16-Feb-2007 [5265x6] | I thought there was a tree widget embedded inside another widget of Cyphres |
The spinner widget now using alt click .. is that a problem for OSX ? | |
This seems to be slightly anomalous behaviour. When a modal requester is present, every other widget works ( in other windows ) except the drop/edit list. | |
Probably not best practise, but I have scattered "attempts" throughout the Rebgui code to stop may apps crashing. | |
My apps | |
eg. I have this in area.r attempt [ ;;GC ; Keep caret inside the visible part of the area view*/caret: offset-to-caret parent-face min max (caret-to-offset parent-face view*/caret) ; get the current position of the caret (sizes/font-height * 0x1) ; minimum, plus height of one line of text, to keep caret fully visible (parent-face/size - (face/size * 1x0) - (sizes/font-height * 0x1)) ; maximum, subtract height of one line of text ] | |
Ashley 16-Feb-2007 [5271] | spinner widget now using alt click .. is that a problem for OSX Nope, OSX maps that to CTRL-click The build I'm working on reverts spinner to a more "normal" behavior (I've worked out how to get half height arrows) slightly anomalous behaviour ... modal requester The underlying View popup/modal system has some subtle bugs, some of which will hopefully be fixed in R3. scattered attempts" throughout the Rebgui code" ... Odd, I've never needed this. Is it only in more recent build(s)? I'd really like to identify and fix the underlying cause(s). |
Graham 16-Feb-2007 [5272x5] | In the function 'current-word, in rebgui-edit.r |
I have to trap with if series? str [ .. ] | |
In process-keystroke, I have this f: either event/shift [ back-field view*/focal-face ][ attempt [ ;;gc next-field view*/focal-face ] ] | |
Hmm. The new version of process-keystroke has a lot more code in it. | |
in process-keystroke, after the #" ", I have all my function key handlers | |
Ashley 16-Feb-2007 [5277] | Causes? So far you've mentioned three: Clicking too fast/repeatedly in a field Sporadic area errors Tab-panel with focus in multiple panels All these point back to the edit object. |
Graham 16-Feb-2007 [5278x7] | Yes .. definitely problems there before. |
scrolling also used to die .. had to put attempt blocks there as well. | |
in 'edit-text .. I have a large attempt block from caret: caret-to-offset face view*/caret to show-face | |
I see I had fixes for scroll-line and scroll-page but looks like Cyphre has now fixed those. | |
Maybe rather than using attempt, I should maintain an error log ... | |
Hm. Getting this error with all my widgets derived from field >> do %create-distribution.r Script: "Create RebGUI distribution" (7-Oct-2006) Script: "RebGUI system" (16-Feb-2007) ** Script Error: field has no value ** Near: dfield: make field [ size: 7x5 ] drop-list: | |
and dfield.r is just this dfield: make field [ size: 7x5 ] | |
Ashley 16-Feb-2007 [5285] | That's because dfield is processed before field. Look at how text.r / label.r are defined. |
Graham 16-Feb-2007 [5286x3] | Hmm. It worked in previous versions of rebgui .. I just had my fields after yours in the list of included widgets. |
make object! [ code: 300 type: 'script id: 'no-value arg1: 'chevron arg2: none arg3: none near: [chevron data 'left [change-date -1] chevron ] where: 'layout ] | |
Looks like chevrons are history now ... | |
Ashley 16-Feb-2007 [5289] | Yep. |
Graham 16-Feb-2007 [5290x4] | Pity .. I was using them to distinguish between small and large movements |
ie. the chevron was a date change by day, and the arrow was by week. | |
I guess I can remove my chevrons, and use the spinner widget instead. | |
Ashley, what about activating the action on spinner widget each time the value is incremented/decremented. | |
Graham 17-Feb-2007 [5294] | I'm getting some anomalous tabbing results with 53. Seems to jump the next widget to tab to if the current widget has an action block. |
Ashley 17-Feb-2007 [5295] | build#55 committed to SVN. Numerous widget fixes and enhancements to the following widgets: anim arrow bar box button field group-box image label pane l progress spinner splitter text tab-pane title-group The most noticeable improvements include the following tab-panel enhancements: first tab action now fires when widget is first displayed can select an alternate tab to initially display with "options [tab 2]" etc can programmatically select a tab at runtime with var/select-tab 2 title-group and panel now have rounded corners. |
Graham 17-Feb-2007 [5296x2] | Looks like some type of evaluation changed as well. |
I had functions that looked like this vector-tab: does [ hide [ abutton ]] and now these all come up with errors saying abutton is not defined. | |
Robert 17-Feb-2007 [5298x2] | Ashley, yes, but we first have to merge to a stable release. I'll talk to Cyphre how to do it. Because we did it on our side but some changes we made are not compatible. So let's see where we are and than decide how to merge it. |
Graham, the code is there but not yet put into a seperate widget. But I think it could be done very easy. | |
Graham 17-Feb-2007 [5300] | Trying to figure out the tabbing issue and came across this rebol [] do %rebgui.r display "" [ ^-label "field has action" field [ print face/text ] return ^-label "also has action" field [ print face/text ] return ^-label "no action" field return ^-button "Quit" [ unview/all halt ]^- ] do-events} Script: "Untitled" (none) Script: "Untitled" (none) ** Script Error: find expected series argument of type: series port bitset ** Where: switch ** Near: if all [view*/focal-face find view*/focal-face/options 'input-grid-item get in view*/focal-face/parent-face ' cell-action... after clicking in the first field. |
Ashley 17-Feb-2007 [5301x3] | Works for me. Try putting an "attempt [delete %ui.dat]" prior to the "do %rebgui.r" line to see whether it's a config difference. |
does [ hide [ abutton ]] also works for me. What REBOL version are you running? I'm on 1.3.2.3.1 here. | |
re: chevron. You'll also be glad to know that chevron will re-emerge as an option of arrow. The previous implementation didn't take advantage of AGG's new line-width command,and duplicated much of the code found in arrow anyway. I'm putting RebGUI on a diet and trying to remove some of the "fat" that has managed to creep in. ;) | |
Robert 17-Feb-2007 [5304] | I hope this step won't kill some of our extensions ;-) |
Graham 17-Feb-2007 [5305x7] | Works now for me too! Bizarre. |
Haven't figured out why tabbing is screwed though in my app. so going to use action blocks to direct tabbing as a work round. | |
I think it would be good to allow a spinner to activate the action block | |
Reproduced the earlier error .. some type of interaction with the Rebol editor. >> change-dir %/e/rebgui4 == %/e/rebgui4/ >> editor %debug-rg.r >> do %debug-rg.r Script: "Untitled" (none) Script: "Untitled" (none) ** Script Error: find expected series argument of type: series port bitset ** Where: switch ** Near: if all [view*/focal-face find view*/focal-face/options 'input-grid-item get in view*/focal-face/parent-face ' cell-action... in the above I brought up the editor and then closed it again without doing any editing. | |
And to reproduce the error, I just clicked in the first field here .. do %rebgui.r display "" [ label "field has a focus action" a: field [ show-focus b ] return label "also has action" b: field [ print face/text ] return label "no action" c: field return spinner options [ 9:00 24:00 0:30] [ print face/text ] return button "Quit" [ unview/all halt ] ] do-events | |
I've reproduced the tabbing issue .. but that appears to be from some of my own changes as it is not present in a latest checkout, but is present in the checkout I did manually. | |
Ok, found it. If action-on-tab: [ field ], and the field action is show-focus as in the example above, then it tabs from a => c | |
older newer | first last |