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

World: r3wp

[!RebGUI] A lightweight alternative to VID

shadwolf
25-Apr-2005
[590]
I will made maybe a merge betwin cyphre my-list and Claude table 
widgets first because Table is twice biger in code than my-list and 
second because some fonctionnality interresting in table made by 
claude.
Ashley
25-Apr-2005
[591]
Robert: LED-Group attributes can be changed at runtime with:

	led-handler/pane/2/data: true
	led-handler/pane/2/text: "Test"
	show led-handler


but the specification (number of LEDs and orientation) is fixed at 
specification time. I have no plans to change this.


Pekr: Most folks are familiar with WinXP, it is something to model. 
The basic RebGUI color scheme is controlled by less than a dozen 
words, and arrow / chevron / other is fully inheritable; but the 
"look" (e.g. tab shape and active shading) is hard-coded in most 
cases. So the answer is that you can easily change the cosmetic aspects 
of the UI but not the fundamentals.

Gregg: known issue.


Volker: Not sure which way you mean. If you want to contribute new 
widgets that work with both VID and RebGUI then I'll be spending 
time optimizing them for RebGUI which will break their VID compatibility. 
If you mean that you want to make the RebGUI widgets work under VID 
then feel free to do so with the widgets I have authored. For other 
widgets, please contact their author(s).
Scot
25-Apr-2005
[592]
Nice.
Robert
26-Apr-2005
[593]
multi-column-list: Please consider adding the auto-filter feature 
as present in Excel. This is a super-fast filter / search feature 
that can be used in most applications.
shadwolf
26-Apr-2005
[594x2]
Robert hum first we will try to make it as somplete as we can ;) 
the autofill feature is neede to for drop list IMOO
so it will come but it's in my opinion a non vital feature it"s like 
the chery on to of the cake not the cake it self  hehe if you see 
what I mean ;)
Volker
26-Apr-2005
[596]
Ashley: changing RebGUI and vid sothat styles are interchangeable.
Robert
26-Apr-2005
[597]
IMO this complicates the RebGUI widgets unecessarly. It would be 
nice to have a wrapper for RebGUI widgets that make them VID compatible. 
But than only as a oneway. RebGUI -> VID not the other way.
Vincent
26-Apr-2005
[598]
a simple way could be 

1) VID -> RebGUI : a 'face widget for RebGUI, to put any prebuilded 
face (ie made by 'layout) in a display,

2) RebGUI -> VID : a 'make-face -like function to build a reusable 
RebGUI face
Brock
26-Apr-2005
[599]
Auto-fill or similarly auto-filter is done fairly nicely in Carl's 
Rebodex.
[unknown: 5]
26-Apr-2005
[600]
Anyone made a non rectangular gui layout?
Ammon
26-Apr-2005
[601]
Yes, that has been done.  I've seen it somewhere but for the life 
of me I cannot recall where or who it was that built it....
Volker
26-Apr-2005
[602x2]
have the rebgui-button working in vid (great success ;) developer/users/volker/mrg/test.r
shadwolf: posted my header-list-1 in users/volker too. yet another 
multi-col-list, maybe it helps.
Ashley
26-Apr-2005
[604]
Nice, I understand what you want to do now ... create a GAL (GUI 
Abstraction Layer) that enables RebGUI widgets to be used in VID 
with zero RebGUI changes. Interesting to see whether you can get 
it working the other way (VID -> RebGUI) as painlessly! ;)
Volker
26-Apr-2005
[605x2]
i hope. after all, both create faces. thee are a few differences 
in your api (action has 2 arguments, init is function). and you have 
a resize-system. will look what i can do. at least something like 
  vid[ vid-stuff ] ; symply calls 'layout
should be doable.
btw related dialects: how about using #xywh instead of that tuple? 
then it could be easier detected on the vid-side (issue! -< resize-options)
Ashley
26-Apr-2005
[607]
Good idea, I'll change that in the next build.
Volker
26-Apr-2005
[608]
btw is the verbose dialect by design or to keep parser short. i guess 
i could do some automatic with few lines overhead. to allow strings 
and actions without the extra brackets.
Ashley
26-Apr-2005
[609]
By design, to keep it as simple (and efficient) as possible. I'm 
open to a more VID-like parse-based approach as long as the complexity 
/ efficiency doesn't blow out as a result.
Allen
27-Apr-2005
[610]
My old autofill is here. do http://www.rebolforces.com/reb/auto-fill.r
Ashley
27-Apr-2005
[611]
Thanks, I've had the code lying around for ages and was trying to 
find a link (for attribution purposes) the other day. ;)
Anton
27-Apr-2005
[612]
Paul, you mean like Q ? That used windowsXP-only window transparency 
feature for the window.  Inside a rebol window I can think of a circular 
color-mapped gadget (who was it again...?)
[unknown: 5]
27-Apr-2005
[613x2]
Yes Anton.  I'm looking for a brief example - a small layout that 
shows the capability.
I remember when /view first came out it seemed there was someone 
that made a gui that was eliptical using only faces and no layout.
Vincent
27-Apr-2005
[615x6]
For VID in RebGUI, an external face widget :
x-face: make face [
    size: -1x-1
    init: does [
        pane: get data
        pane/offset: 0x0
        if negative? size/x [size/x: pane/size/x]
        if negative? size/y [size/y: pane/size/y]
    ]
]
Usage: 
my-face: layout [field "just a field" [print face/text]]

display "A RebGUI display" [
    ...
    x-face [data 'my-face action [print "Hi!"]]
   ...
]
sorry, correction (some VID widgets need a block as parent face) 
:
x-face: make face [
    size: -1x-1
    init: does [
        pane: reduce [get data]
        pane/1/offset: 0x0
        if negative? size/x [size/x: pane/1/size/x]
        if negative? size/y [size/y: pane/1/size/y]
    ]
]
(note the 'feel is replaced by 'action definition when one is specified)
shadwolf
27-Apr-2005
[621x4]
Well after one day of work on the multicolumn list  here is a little 
screen shot of what I succed to do http://shadwolf.free.fr/rebgui-list.jpg
What I need to do :
* Vertacal and Horizontal scrollers management
* Header rendering
* Column content resizing management (internal & external)

* Line Selection with a filled fill (not sure of the wanted way to 
make this work ...)
* Inseting rows 
* Deleting rows

* More widgets support (for the moment I can handle images checks 
and texts)
Actually my code is about a little less than 100 lines
Volker
27-Apr-2005
[625]
Ashley: changed %display.r to use more parse-features. Hope you like 
it. but introduced a bug, scrollers are broken now. Would now be 
easy to detect something like
 button "hello"

but then that string has it has to be merged with the attributes-block 
somehow. I let you think about it ;)

because the attributes are in a block we clash with vid-style action. 
MAybe we could put the action in parens then, like parse does?
  button "quit" [size 200x100] (quit)
Vincent
27-Apr-2005
[626]
Volker: ( ) for actions - it will be a pain to use with compose/deep 
(needed because 'display evaluation is kept to minimal).
Volker
27-Apr-2005
[627]
True.
shadwolf
27-Apr-2005
[628x3]
lastest screenshot of the listview item ... http://shadwolf.free.fr/rebgui-list2.jpg
TODO: 
* Vertacal and Horizontal scrollers management
* Column content resizing management (internal & external)

* Line Selection with a filled fill (not sure of the wanted way to 
make this work ...)
* Inseting rows 
* Deleting rows

* More widgets support (for the moment I can handle images checks 
and texts)
* Sorting ;)
Ashley
28-Apr-2005
[631]
Latest build available at: http://www.dobeash.com/files/RebGUI-021.zip

Highlights include:

	- Specification dialect is now VID compatible (and 35% slower)
	- request-color and request-date added
	- Span attribute changed from tuple to issue
	- Couple of minor fixes
	- %tour.r has an additional "Requestors" tab


I wanted to get this build out before folks went too far down the 
converting from VID to RebGUI and vice versa path. If a parse expert 
(I'm not one) could suggest performance improvements for the main 
display parse loop that would be great.
shadwolf
28-Apr-2005
[632]
I like very mutchthe requestors :)
Robert
28-Apr-2005
[633]
there is quirk with them: If you select a color, the requestor button 
keeps the highlighting frame. Should be reseted to neutral.
shadwolf
28-Apr-2005
[634x2]
I like the new way to hadle face parameters :)
I addapted my actual listview work to rebGUI 0.2.1 ;)
Vincent
28-Apr-2005
[636]
compatibilty bug with set-words in definition - investigating
Robert
28-Apr-2005
[637]
How does this line work?
	| set arg word! (

  either in widgets arg [append-widget widget: arg] [attribute-color: 
  get arg]
	)


append-widget checks for 'widget but 'widget is set after the call 
to 'append-widget


Further, in the parse-rule the above line comes last. But it parses 
the widget words. When do the parameters get parsed? I would have 
expected this rule to be the first after the keyword rules.
shadwolf
28-Apr-2005
[638]
0.2.1 i see the memory use growing up from 5976 kB to 7090 KB then 
it's stable is it normal ?
Vincent
28-Apr-2005
[639]
bug found:
line 243 in display.r : 
| set arg set-word! (append-widget word: arg)
arg should be a get-word :
| set arg set-word! (append-widget word: :arg)
to work with 1.2.1