r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!RebGUI] A lightweight alternative to VID

Robert
6-Jun-2006
[3849]
From my side not yet. First need to get editor access to the widget 
list.
Ashley
6-Jun-2006
[3850x2]
I just tried logging in as robert from XP using FF, works without 
a problem (Opera didn't seem to work correctly). Make sure that after 
clicking the "Login" link and entering your username and password 
that the red "Login" link changes to black text reading "logged in 
as robert". All Wiki pages are then editable.
how long do you think it will last till some testing stuff is being 
made an official version?

 Once SVN changes are in and working I let it sit for a week or two 
 before taking another snapshot for get-rebgui.r.
Graham
9-Jun-2006
[3852x2]
There are some unexpected behaviours with the area editor when using 
overstrike mode.  If you overtype on a line where there is a cr, 
it follows the carriage return when I was expecting it to keep on 
the same line.  Also, if you hit return inside a line, it produces 
a character
square character rather than moving to the next line.  It correctly 
moves to the next line if at the end of a line of text.
Ashley
9-Jun-2006
[3854]
Identified and fixed first problem (CR deleted in OVR mode) ... see 
SVN rev#19. Couldn't reproduce second problem, does it occur under 
%tour.r?
Graham
9-Jun-2006
[3855x5]
Let me try ...
Nope .. it doesnt.
try this though.  Put the caret at the beginning of the text in the 
area field.  change to overwrite mode, and hold down the return key.
Everything changes at the bottom of the screen.
ie. when the caret reaches the bottom line.
Ashley
9-Jun-2006
[3860]
That's a weird one (and it's not specific to OVR mode). I'll see 
if I can work out what's causing it. Odd that no-one else caught 
that yet! ;)
Volker
9-Jun-2006
[3861x7]
line-list related?
No. seems redraw tries to be smart. if i probe before showits ok, 
after broken.
The bug must be in area.r in the slider-action. weird stuff. the 
area-slider is before the area, so the slider is shown when the area 
is shown. and in case of this last return its action is called. and 
there the caret is changed. Maybe all this resize-automatics in 'redraw 
is a bit to magic? Should that bemoved into  explicit calls?
somehow the keep-caret-in-visible-area magic is broken. take tour, 
enter a lot of lines with content. more then fit in window. scroll 
down, set caret and scroll up. when the caret scrolls out of range, 
it moves automatically up. keeps also position in line. but not if 
char is at start of line, then it jumps to second char.
system/view/caret: offset-to-caret parent-face min max 

       (caret-to-offset parent-face system/view/caret) ; get the current 
       position of the caret

       (0x0 + sizes/font-height) ; minimum, plus height of one line of text, 
       to keep caret fully visible

       (parent-face/size - (face/size * 1x0) - sizes/font-height) ; maximum, 
       subtract height of one line of text
looks weird. look at the sizes/font-height. That is an integer!, 
not a pair. so it is added to x too.
;This works (needs more testing)
						system/view/caret: offset-to-caret parent-face min max 

       (caret-to-offset parent-face system/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) - (0x1 * sizes/font-height)) 
       ; maximum, subtract height of one line of text
Ashley
9-Jun-2006
[3868]
That, plus a check for caret tail in edit.r, seems to have fixed 
it. Any remaining problems with rev#20 now Graham?
Graham
10-Jun-2006
[3869]
I haven't tested yet .. will let you know :)
Anton
10-Jun-2006
[3870]
Gosh, I remember checking font-height and realising it was integer. 
How did I let that go ?
Robert
10-Jun-2006
[3871]
Sorry, guys didn't made it yet to publish all our changes. Hope to 
do this weekend.
Maxim
10-Jun-2006
[3872]
is the release expected for tonight?  wondering if I should add a 
note on "rebol week" ...
Graham
10-Jun-2006
[3873]
Is any work being done to allow VID and Rebgui windows to share the 
same parentage or whatever so that they appear over each other
Thør
17-Jun-2006
[3874x2]
just checking for abything new...
Sorry, got disconnected at around 10%. This shall be my last attempt 
at synching for the day...
Robert
17-Jun-2006
[3876x2]
Might not be a RebGUI related problem, but let's start here: I have 
the following problem from time to time on my system and always on 
the system of one of my testers.


On my system: I start my app, the gui comes up and I click the first 
widget and the app falls back to the console. Without an error. This 
happens as do-events returns.


The same problem is on the other system, but here I only can do one 
click on a widget.
Does anybody know this kind of problem and what cause it could have?
Graham
17-Jun-2006
[3878]
Can  you set the highlight yet on a table row programmatically?
Ashley
17-Jun-2006
[3879]
No.


That's a pretty broad problem statement Robert, sort of like "I click 
on something and something fails". ;)
Graham
17-Jun-2006
[3880]
LIFO response ?
Robert
18-Jun-2006
[3881x2]
Grahma, yes it's possible. My TABLE enhancement allows this. I hope 
to be able to publish all changes today. The main problem is, that 
it takes some time to write the docs for all changes. But maybe I 
just publish the code and than you can look at it.
Ashley, I know... I really couldn't specify it more narrow. I have 
the same effect on my system, when my app exited with an error. I 
hack in UNVIEW and than restart it, I alway return to the console 
immediatly. Doing it once again, UNVIEW and restart, than it works.

If I use UNVIEW two times, it works immediatly.
PhilB
18-Jun-2006
[3883]
Robert .... I have seen a similar problem, I run Gabrielle's Clips.r 
from the library , if after having selected a clipboard item the 
tab key is pressed, a blank console is displayed.

The program never writes to the console so should never dispaly the 
console.
Robert
18-Jun-2006
[3884x6]
I first thought this effect is because some internal states are not 
resetted when a script is just restarted from the console. But as 
said, one user has this problem always.
Let's shift dicussion to view group.
Ok, I finally made it to publish all our RebGUI changes. I hope this 
helps the rest of the community. We did change a lot:
ATTENTION: rebgui-edit.r was not yet merged. Latest revision doesn't 
include older changes. We will do this ASAP. But rebgui-edit.r is 
required in this version otherwise all other changes done by us might 
not work.



FIXED *rebgui/pad: Now only works for horizontal padding. Padding 
should happen depending on the layout direction left-to-right or 
top-to-down.
	Cyphre: now PAD works according to the AFTER settigns. Example:
	display "Test" [
		after 3
	    field
		pad 5
	    field
	    pad 5
	    field
	    pad 5
	    field
	    pad 5
	    field
	    pad 5
	    field
	]
	Robert,let me know if it works like you wanted.

FIXED *group-box: When setting a new title group-box/text: "new-title" 
the surounding frame needs to be adjusted to the new text-width.

FIXED *drop-tree: When selecting different quick-access buttons directly 
one after the other, the drop-tree shouldn't close

FIXED *drop-tree: Highlighting the pressed quick-access button with 
green, the hovered one as is in orange. To give user visial feedback.

FIXED *general: a way to sepcify "align ['left]" for all further 
widgets to avoide repeation. Idea: Add disaply keywords: left, right, 
center
	Cyphre: added keyword TEXT-ALIGN left/right/center. Example:
	display "Test" [
		text-align right
		after 3
	    t: text 20 "test 1"
	    field "test 2"
	    field "test 3"
	    text-align left
	    field "test 4"
	    field "test 5"
	    field "test 6"
	]

FIXED *drop-list: an option that will show the list layered above 
everything (like the tree list of drop-tree).
	Cyphre: added drop-list/popup-mode: 'inside(default) or 'outside
	note: the same works for drop-tree

FIXED *drop-tree: changing state of the drop-tree (a new entry was 
selected) should only be done if the ACTION code returns TRUE. Otherwise 
the old state is kept, the drop-tree is closed and nothing happens. 
This allows the code to check for some pre-conditions before changing 
the state, and give some feedback to the user. Much like the on-unfocus 
functionality of RebGUI.

FIXED *drop-tree: pressing the quick-access numbers doesn't work 
any more as the drop-tree closes now if the mouse is clicked outside 
the drop-tree

FIXED *table: table/selected returns NONE if the table is empty and 
no record is selected. If there was one recrod selected at any time, 
than table/selected returns [none none <repeated for number of columns>]. 
If not row is selected at any time, table/selected should just return 
NONE.

FIXED *table: If a table is re-used in that the table is reused with 
code like:
	insert clear table/data [...]
	people/redraw

and there was a row selected before, than the internal state is still 
in "row selected" but the new row isn't highlighted. Here internal 
state and GUI don't match.

FIXED *drop-tree: clicking a "+/-" in the tree only open/closes the 
tree without calling the action for the node

FIXED *drop-tree: Re-add whole line selection and hovering functionality 
(so that mouse does not have to be over text)

FIXED *drop-tree: Add an option to get big fast-selction keys aligned 
left-to-right
	Cyphre: added drop-tree/expander-mode: 'big(default) or 'small

FIXED *button: Add an option to disable a button my-button/active: 
true/false, if disabled the button is drawn greyed-out
	Cyphre: usage is my-button/active: true/false show my-button

FIXED *field: Support number datatypes for TEXT so that things like 
field-a/text + field-b/text can be used

 Cyphre: you need to set field/edit-mode: 'numbers to activate this 
 behaviour for field(othervise it works like a normal field)
	2nd implementation uses own styel: number-field

FIXED *radio-group: Add an API that allows to provide a new DATA 
specification block at runtime or a way to alter the text of the 
radio fields at runtime.

 Cyphre: now you can just change the data content and do show on the 
 radio-group like:
		my-radio-group/data: ["item1" "item2" "item3" "item4"]
		show my-radio-group

 Note that it won't react on change of number of items. Just change 
 of texts.

FIXED *radio-group: Add a way to select one radio field at run-time
	added accesor select-item item [integer!] usage:
		my-radio-group/select-item 2
		show my-radio-group

 note: you can get the selected item using my-radio-group/picked, 
 you can get the text of selected item using my-radio-group/selected

FIXED *drop-tree/grey-out: Can it be done in that we only show the 
text in a light grey instead of black? Like Windows does it.
	Cyphre: now the masked text is light grey

FIXED *on-focus / on-unfocus: If FALSE is return from the ACTION 
and the user clicked somewhere on the screen, the focus is still 
in the "field" but no cursor bar is visible

FIXED *drop-list: IIRC in your widgets it was possible to start typing 
and the selection list was filtered. A mandatory feature for the 
drop-list :-))

 Cyphre: added drop-list/editable? flag to enable/disable editing 
 of the drop-list field

 also added drop-list/auto-fill? flag which enables automatic text 
 filterin from the selection list

FIXED *general: add hover tooltip help option to every widget (global 
patch)

 Cyphre: added TOOL-TIP facet to rebface object. If TOOL-TIP is set 
 to string! value a tooltip is shown when mouseover such widget.
	example:
		display "test" [
			button "press me" tool-tip "press this button to continue"
		]

FIXED*drop-list: proivde a much better selection-list opening algorithm 
especially for long lists. Open upward, downward, middle like so 
that as much entries are shown for the given screen space. And an 
option that will show the list layered above everything (like the 
tree list of drop-tree).
	Cyphre:

 -added droplist/lines - can be 'auto (default) or integer! to force 
 number of shown lines in droplist

 -added droplist/droplist-mode - can be 'auto (default) 'upward, 'downward 
 or 'middle to force way how the list is popped up
	you can use various combination of those settings.
FIXED*table: Add an API that allows to select a row at run-time.
	Cyphre: Usage is for example:
		my-table/select-row 5
		show my-table

FIXED*table: Add an API to table that allows to change the columns 
layout at runtime: my-table/reset ["Column 1" left 0.25 "Column2" 
center 0.75]

 Cyphre: I added the functionality byt the API call is my-table/set-columns 
 ["Column 1" left 0.25 "Column2" center 0.75]

FIXED*drop-list: fire action only if selection was made/changed, 
at the moment action fires if clicked on field too

FIXED*general: on-un/focus should be fired if user clicks an other 
widget, not only if carets leaves the widget when TAB is pressed

FIXED*table: moving bar up/down with keyboard should fire click-action, 
alternativ: pressing RETURN can fire click action

FIXED*table: align header text like data (left, center, right) at 
the moment always left
FIXED*table: TRAC #21

FiXED*TRAC #5 Cyphre: should be fixed but please test it and let 
me know.
FIXED*TRAC #6
Please give all changes a try, and help to enhance RebGUI even more.
Docs not updated yet, feel free to pick up this task :-) and I didn't 
checked against the TRAC database.
Graham
18-Jun-2006
[3890]
if table/selected returns none, does table/selected/1 now give an 
error?
Robert
18-Jun-2006
[3891]
I think yes.
Pekr
18-Jun-2006
[3892]
is it possible to obtain rebgui.r with proper white-space?
Volker
18-Jun-2006
[3893x2]
from the cvs
(if you mean propper formated source)
Pekr
18-Jun-2006
[3895]
yes, thanks ...
Robert
18-Jun-2006
[3896]
You have all the single files, so why you need it?
Pekr
18-Jun-2006
[3897x2]
that was question of one of my friends ...
you know, ppl get distracted sometimes by simple things, which complicate 
it a bit ..... - what is the point of new install scheme? what is 
the point of packing it? Those are not my words (althoug I do agree 
with him)