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

World: r3wp

[!RebGUI] A lightweight alternative to VID

Pekr
18-Apr-2007
[6176]
nice thing about RebGUI is, that styles are self-contained. Anyone 
can create new. I am with Anton here towards widget containing each 
its own implementation (method) of particular functionality, e.g. 
already mentioned set-disable, set-enable, as each widget (its author) 
knows best, how to implement it for the particular widget.
Ashley
18-Apr-2007
[6177]
Build #83 Released. For more information see:

	http://www.dobeash.com/RebGUI/release.html#section-8

and:

	http://www.dobeash.com/RebGUI/user-guide.html

Includes changes from builds 73-83, plus new dictionary files.
Mchean
18-Apr-2007
[6178]
Wow impressive documentation
Graham
18-Apr-2007
[6179x3]
in request-spellchecker/next-word .. is this clearer removing the 
double negative ?

		if all [ init word ][
				;	update dialog
				txt/text: fld/text: word
				show [txt fld]
				insert clear lst/data edit/lookup-word word lst/redraw
				;	hilight word
				view*/focal-face: face
				view*/caret: none
				edit/hilight-text start end
				show face		
		]
		none? word
oops .. last line should be 

word? word
If I resize a window containing a chat widget, it corrupts the widget. 
 Can I link to the resize event to do a show on the chat widget?
Ashley
18-Apr-2007
[6182x3]
You're on the right track. Code can be refactored as:

			unless any [
				empty? word
				find ignore word
				...
			]
			...
		]
		if all [none? init word] [
			...
		]
		string? word
	]
	if next-word/init [
If you look at the source code for chat.r you'll see a commented 
out show face/pane/1 and show pane/1. Uncommenting either of these 
will fix all display problems for chat, BUT, subsequent widgets will 
not render correctly as the show "eats" subsequent resize events. 
You can see this with the following code:

	display "" [
		after 1
		button "One"
		chat #HW data ["a" none "b" none 1-Mar-2007/10:00:00]
		button "Two"
	]

where button 2 is not drawn correctly.
Build #85 uploaded with above spellcheck changes and an improved 
anagram algorithm (about 10 times faster).
Graham
19-Apr-2007
[6185x3]
I'm having problems with tables.  the new table appears in some instances 
to lock up my entire application.
An error has occurred.  If this occurred with an upgrade, please 
revert to the older version for the meantime, and report the error 
message as documented below.

make object! [
    code: 303
    type: 'script
    id: 'expect-arg
    arg1: 'clear
    arg2: 'series
    arg3: [series! port! bitset! none!]
    near: [clear f/text 
        all [f/type = 'area f/para/scroll: 0x0 f/pane/data: 0] 
        f/line-list:
    ]
    where: 'clear-text
]
It's occuring only on edit-list widget where there is some text displayed
Ashley
19-Apr-2007
[6188]
the new table appears

 ... tables aren't new, there're one of the widgets I have yet to 
 code review (although I have made some face-iterator changes which 
 handle row selection and on-click actions).


clear-text is not used by anything in the base distribution. Looks 
like something is doing a 'clear-text without providing a face argument.
Graham
19-Apr-2007
[6189x4]
>> display "" [ el: edit-list data [ "1" "2" ] button "Set" [ el/text: 
1 show el ] button "clear" [ clear-text el
]] do-events

** Script Error: clear expected series argument of type: series port 
bitset none
** Where: clear-text
** Near: clear f/text
all [f/type = 'area f/para/scroll: 0x0 f/pane/data: 0]
f/line-list:
Looks like I set it to integer and it displays okay, but then clear-text 
fails
So, in clear-text, changing clear f/text to f/text: copy "" fixes 
the problem
I guess the point is that one should always use the accessors
Ashley
19-Apr-2007
[6193]
Assigning a non-string value to face/text is not a good practice. 
It just means more work for View (which has to dynamically form the 
value) and might break several things that depend on face/text being 
none! or string!
Graham
19-Apr-2007
[6194x3]
otoh, it makes less work for users not to have to form dates and 
numbers being displaying them in widgets
and let the accessor do the job
Looking at my code, it's a form that loads the data from a database, 
and then uses a routine to go through all the widgets and set the 
data.  Just need to add a 'form to it.
Pekr
19-Apr-2007
[6197]
it is curious how each of us think differently about priorities. 
E.g. dictionaries - I never thought I could use them in my db "apps". 
Are you guys really using the features so much?
Graham
19-Apr-2007
[6198]
you mean spelll checking dictionaries ?
Pekr
19-Apr-2007
[6199x2]
Well, 1.0 is aproaching, and I am getting feeling it will miss on 
some very important styles. But that is also about how each of us 
is used to code his apps. I would like to know, what are you e.g. 
Graham missing mostly with your rebgui based CRM?
yes .... that is feature I turn off even with emailers, Word, etc. 
:-) Well, spell-checking is ok for me, but I hate auto-corrections, 
as those engines are not smart enough imo - they always screw my 
text somehow, thinking that I wanted to write something differently 
:-)
Graham
19-Apr-2007
[6201x2]
I'm pretty much set if everything works
A tree widget is not necessary for me but would be nice
Pekr
19-Apr-2007
[6203]
some time ago I posted two screenshots of possible widget additions, 
which could allow more robust app design - UI wise. I wonder what 
ppl miss in general ...
Graham
19-Apr-2007
[6204]
and I would like to be able to set colors on rows of a table.
Pekr
19-Apr-2007
[6205x3]
Yesterday I saw interesting widget - kind of tree combined with list-view. 
You simply had tree-view as basic view, but when you uncollapsed 
the node, list-view (table) appeared ... interesting - It allowed 
to logically nest into subcategories, e.g. company, orders, companies 
- list of orders in table style ...
it is a pity Cyphre is busy. I asked him to adapt grid, and he also 
promissed to extract tree out from drop-tree. But otoh I am glad 
he works on some parts of View for R3 :-)
Graham - why e.g. Chat widget appeared? Do you use it? I will have 
to look, how it communicates :-) btw - why there is the distortion 
to initial display of the widget?
Graham
19-Apr-2007
[6208x2]
Yes, I am using it.
I don't get the initial distortion of the widget
Pekr
19-Apr-2007
[6210]
I will recheck, sync latest release ...
Graham
19-Apr-2007
[6211x3]
What I mean is, if I use the chat widget and build a window with 
it, I don't get the distortion.  I do if I use tour.r
Found my table error ... I was bringing up a modal window to delete 
a row, and once I deleted it, I did a unview/only face/parent-face 
on the on the button when I should have done a hide-popup.  This 
completely killed the events system.
It wasn't apparent before, but appeared in rebgui beta-2
Ashley
19-Apr-2007
[6214x2]
spellcheck ... it's certainly something I miss in ALtME!
why e.g. Chat widget appeared?
 Carl asked for it first.


Graham, back to your modal windows and BEER compatibility issues 
... does this still happen with Beta 2? The reason I ask is that 
the initial modal window implementation was poor (in large part to 
get around REBOL/View limitations); but since REBOL/View 1.3 the 
View popup system has been completely rewritten (by Gabriele I think), 
and the RebGUI implementation is now simple and "standard" (in that 
it uses the same functions as VID). It may in fact have fixed the 
issues you were having.
wasn't apparent before, but appeared in rebgui beta-2

 ... a symptom of modal windows now actually working the way they 
 are supposed to! ;)
Ladislav
19-Apr-2007
[6216x2]
I answer instead of Graham: he has got a fix from me, which he claims 
is OK, but he does not want to change his approach
(i.e. everything is supposed to work, but he doesn't want to "take 
the risk")
Pekr
19-Apr-2007
[6218]
users ara taking the risk, not programmers :-)
Ladislav
19-Apr-2007
[6219x3]
Ashley: the suggestion: "Replace: error? try [] With: attempt [] 
is an error (in http://www.dobeash.com/RebGUI/design-guide.html)
(should be the other way around)
you probably won't believe, but this version of AS-PAIR looks like 
being 20% faster than the current one:

as-pair: func [
    "Combine X and Y values into a pair."
    x [number!] y [number!]
] [
	1x0 * x + y: 0x1 * y
]
Maxim
19-Apr-2007
[6222x3]
so argument passing is THAT slow?
(for those who didn't check), normal as-pair code is:  

add 1x0 * x 0x1 * y
stange I would not have thought that 'ADD and + would have any speed 
differences.
Ashley
19-Apr-2007
[6225]
Designer's Guide

 updated with a few minor corrections & clarifications (mostly to 
 do with Beta 2 changes).