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

World: r3wp

[!RebGUI] A lightweight alternative to VID

ChristianE
8-Mar-2006
[3075]
Yes, of course, Ashley, DETECT may be used for that, that's what 
I *haven't* thought of!
Claude
9-Mar-2006
[3076x8]
hi,
i would like to know why i (we) must transform a resultset avec database 
connexion to add it to table widget on rebgui ?
here is a little exemple => [
db: open odbc://user:[pass-:-server]
stm: first db

insert stm {select numutl, nom,station from dbo.users order by numutl}
res: copy[]
foreach row (copy stm) [
append res row/1
append res row/2
append res row/3
]
close stm
close db

unit-size: 4
font-size: 12
tab-size: 120x55

languages: copy []

foreach language sort read %./rebgui/language/ [
	insert tail languages form replace language %.dat ""
]


do show-tour: does [

	display "Widget Tour" compose/deep/only[

  ex-table: table  (tab-size - 48x18) #HW options ["ID" left .3 "Nom 
  Utilisateur" left .10 "Station de connexion" left .40] data (res)
etc...
]
and how i can change the backcolor of the result  data on this widget 
!!!!!          example => first line color blue , second red, third 
blue .....................
excuse for ma poor english ;-p
Ashley
9-Mar-2006
[3084]
The first issue is due to the fact that 'table expects its data to 
be flat, as in:

	["A" 1 "B" 2]

not blocked:

	[ ["A" 1] ["B" 2] ]


Graham (a long time back) requested that 'table optionaly accept 
data in this format. I'll add it to the list of issues.


Second one is a known issue (#26 at: http://www.dobeash.com/it/rebgui/issues.html#section-2.1
)
ChristianE
12-Mar-2006
[3085x3]
Here's a link to an experimental RebGUI widget TIME-PLAN I'm working 
on. It's starting to get useable, even though it's far from beeing 
useful yet (and since it's my first RebGUI widget ever, it's far 
from being very compliant to the RebGUI coding standards, too):
do http://www.diefettenjahresindvorbei.de/rebol/time-plan.r
Hopefully, one day one will be able to use it for e.g. resource planning 
systems. Use left and right mouse buttons to edit the periods and 
the right mouse button to scroll the plan around. The bird-view in 
the widget's top left edge isn't editable in the sense that it would 
yet allow scrolling, but that's it's intended use, of course.
Ashley
12-Mar-2006
[3088]
*Very* nice. I wouln't worry too much about how RebGUI complient 
you are at the moment as it looks like you are going to have to code 
a lot of it directly in View / AGG anyway! ;) Watch out Apple iCal 
...
ChristianE
12-Mar-2006
[3089]
Thanks, Ashley. I'm mainly thinking "lacking compliancy" in terms 
of deep copying and memory concerns as well as regarding resizing 
due to unoptimized code at this stage. 

Not worrying isn't an option for me, I'm always worrying way too 
much! ;-)
Robert
12-Mar-2006
[3090]
Yes, that's great work! IMO it makes sense to get to a state where 
the widget is mostly feature-complete and than we do a peer review 
to get it optimized and RebGUI compliant.
Pekr
12-Mar-2006
[3091]
tried to download rebgui via get-rebgui script and it installed into 
view-root .... the strange thing is, that HKCU\Software\Rebol\View\Sandbox 
says C:\REBOL\View\public .... I wonder where View is getting view-root 
from?
Anton
12-Mar-2006
[3092]
Pekr, what version of rebol did you use ?
Pekr
13-Mar-2006
[3093x2]
1.3.2
Later today I will try to remove registry entry and to install View 
from the scratch ...
Robert
13-Mar-2006
[3095x3]
Here is a bug report:

** Script Error: Expected one of: pair! - not: none!
** Where: edit-text
** Near: margin: face-size - caret
either
What I do is, that I check the input of a field with on-unfocus and 
change TEXT and DATA to default values "0.0" and 0.0 and stay in 
the field. The error happens if I than enter a text longer then 3 
chars (the length of TEXT). If I just enter 3 or less chars it works.
Try setting a field/text field/data to a default text and enter a 
longer text. Should bring the error as well.
Robert
14-Mar-2006
[3098x4]
Idea: I'm using a lot of data-entry forms in my apps. So getting 
a data-record from the form and putting a data-record into the form 
is a common task. It would be great to have a function SAVE-FORM 
and LOAD-FORM, that collects/restores all necessary widget values.


We could specify a SAVE flag via the options facet for each widget? 
If the SAVE flag is set the widget is collected/restored.
I have used this approach in my own data-form dialect and it's a 
real time-saver.
The format could be: my-record [name/text "Robert" name/data 5]
So it makes sense to be able to specify either the SAVE option in 
which case the default "value" of the widget is collected/restored 
or to specify an other block: SAVE [text data user-data]
Pekr
14-Mar-2006
[3102x2]
in FoxPro, those methods were called Scatter and Gather ...
That is imo what get-face, set-face accessors were supposed to be 
initially imo ....
Robert
14-Mar-2006
[3104]
Yes, on a per widget base. I'm talking about a complete data-form 
with several widgets.
Gabriele
14-Mar-2006
[3105x2]
robert: see my devcon registration script. it fixes a few bugs on 
get-face and set-face for panels, and uses the panel accessor for 
the window too. then it just uses get-face and set-face like your 
save-form and load-form.
(i've always been using something like this in my projects.)
Ashley
15-Mar-2006
[3107]
100th RebGUI issue logged: http://www.dobeash.com/it/rebgui/issues.html
Robert
15-Mar-2006
[3108]
Gab, you have a link to your script?
Gabriele
15-Mar-2006
[3109]
; default one is very stupid
my-access: make ctx-access/panel [
    set-face*: func [face value /local val][
        if all [block? face/pane block? value][
            either set-word? value/1 [
                foreach [word val] value [
                    set-find-var face/pane to word! word val
                ]
            ] [
                foreach f face/pane [

                    if any [find f/flags 'input find f/flags 'panel] [
                        if not empty? value [
                            set-face f value/1
                            value: next value
                        ]
                    ]
                ]
            ]
        ]
    ]
]
Robert
15-Mar-2006
[3110x3]
How about adding: get-text, get-data? I'm always using those non-existing 
words ;-))
margin: Setting the margin in a bigger layout somewhere in the middle 
"margin 4x4" reset the layout cursor so that the next widget is displayed 
at the "top". Seems that changing MARGIN and SPACING inside a layout 
several times has some problems.
group-box: Today an other idea striked me for group-box. How about 
a way to collapse the group-box like a sub-tree in a tree control? 
With this a GUI could be make very dense and only those parts expanded 
that are currently worked on.

This approach is good for top-down approaches in applications.
Rebolek
15-Mar-2006
[3113]
Robert: I'm using hypernotes for this. There's tree-list on left 
and you can define whatever layout you want with VID tag. I also 
patched hypernotes with SCRIPT tag so I can write code in hypernotes 
and script is generated automatically.
Pekr
15-Mar-2006
[3114]
Robert - something like following? - http://www.xidys.com/winbox.jpg
... it is taken from Winbox app, which we use with our Mikrotik routers 
... dunno what they use as their toolkit,maybe Qt?
Ashley
15-Mar-2006
[3115]
margin/spacing: added to the list.


The drop-down widget panel is actually a standard interface element 
on Mac (forget the name of it) which looks surprisingly similar to 
the JPG Pekr posted. A worthwhile addition I think, although hard 
to implement (as it changes the offset of every widget below it and 
forces a window resize).
Robert
16-Mar-2006
[3116x3]
Petr, yep something like this.
Ashley, shouldn't the span stuff help here? I mean it's somehow like 
a spliter put between the box and the next widget line.
Rebolek, is/could the tree-list be made RebGUI compliant? That would 
be really great!! Especially the idea with the VID tag and the SCRIP 
stuff.
Rebolek
16-Mar-2006
[3119]
Robert: I don't know, I'm not author of HyperNotes, Martin Johannesson 
is. However, he wrote to me, that current version of his list is 
little bit tricky and he's working on new version. So maybe the new 
version may be rewritten for RebGUI. If you like to have a look at 
my patched version of HyperNotes, just let me know.
Gregg
17-Mar-2006
[3120]
The problem I see with the general get-face/set-face approach on 
panels is that values are ordered and unnamed. This makes maintenance 
a problem because, depending on how you deal with that data, you 
have to change things, be aware of the order of fields, etc. It can 
be a nightmare IME. Of course, I want a solution that minimizes my 
code, but I'm even more concerned about keeping it correct.
Robert
17-Mar-2006
[3121]
Gregg, I totally agree. And it's one of those things that drive me 
nuts in VID / View. Sorting faces for z-ordering etc. is really no 
fun. And I have no way to get a reference that's stable.
Gregg
17-Mar-2006
[3122]
My standard approach is to write collect and display routines, which 
isn't so bad if we have a form framework that can do it intelligently, 
or generate the code for us.
Robert
17-Mar-2006
[3123x2]
;-) Issued the request to add this to rebgui.
The nice thing is, that if you create a set of faces that need to 
be collected/restored you don't have to use a zillion of face words. 
You specify them via flags.