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

World: r3wp

[!RebGUI] A lightweight alternative to VID

Ashley
30-Mar-2006
[3199]
line-list is the culprit. Replace the 'show-text and 'clear-text 
functions in %rebgui.r with the following:

show-text: make function! [
	"Sets a widget's text attribute."
	face [object!] "Widget"
	text [any-type!] "Text"
	/focus
][
	face/line-list: none
	insert clear face/text form text

 all [face/type = 'area face/para face/para/scroll: 0x0 face/pane/data: 
 0]
	either focus [ctx-rebgui/edit/focus face] [show face]
]

clear-text: make function! [
	"Clears a widget's text attribute."
	face [object!]
	/no-show "Don't show"
	/focus
][
	face/line-list: none
	clear face/text

 all [face/type = 'area face/para face/para/scroll: 0x0 face/pane/data: 
 0]
	unless no-show [
		either focus [ctx-rebgui/edit/focus face] [show face]
	]
]
Henrik
30-Mar-2006
[3200]
ashley, are you still interested in list-view?
Ashley
30-Mar-2006
[3201]
Yes, but it's still evolving isn't it?
Henrik
31-Mar-2006
[3202x2]
I want to get SCROLLER out very soon, so it will be rid of VID dependencies
it's still evolving. I wanted to see if the interest had faded.
Normand
31-Mar-2006
[3204x2]
Small question.  I try to insert a list from a select in Rebdb into 
the data block  of a rebgui table.  It does give me an error in RebGui 
: invalid data block.  I did try to call the variable (''do'' does 
not fit the bill here, is it?).  The same example from the rebgui 
tour would be a: [1 "One" a] and ex-table: table (tab-size - 48x18) 
#WH options ["ID" right .3 "Number" left .4 "Char" center .3] data 
:a.   From start I would like to populate the table from RebDB, and 
from there my block is valid.  I am trying to make an example of 
a small phone book using rebDB and RebGui, it could be usefull as 
an example working app.  But it has been some month I did not touch 
the keyboard.  I do get rusty.  Thanks for any help on this.
oups! The answer is trivial () as in a: [1 "One" a] and ex-table: 
table (tab-size - 48x18) #WH options ["ID" right .3 "Number" left 
.4 "Char" center .3] data (a).
Ashley
31-Mar-2006
[3206]
You can even take it a step further and replace (a) with the database 
call itself; e.g. (sql [select * from t]) ... just make sure you 
either use compose/only to keep the result set as a block or compose/deep 
with embedded block; e.g. [(sql [select * from t)]
Graham
31-Mar-2006
[3207]
Is there a reason why if you use vid and rebgui together, and when 
you have windows from both open, if you open a rebgui window from 
a vid screen, it opens infront of the existing rebgui screen and 
not the screen that called it?
Anton
31-Mar-2006
[3208]
eh? confusing.. "screen" or "window" ?
Graham
1-Apr-2006
[3209]
screen = window
Ashley
1-Apr-2006
[3210]
Is there a reason ...
 not by design! ;)
Graham
1-Apr-2006
[3211]
Can it be fixed if you can confirm it?
Robert
1-Apr-2006
[3212x2]
tab-panel: Autosizing doesn't seem to work. Using -1x-1 gives a small 
tab-panel, showing only the first tab.
And a small piece from the second tab.
ChristianE
1-Apr-2006
[3214]
Graham, that's because all RebGUI windows displayed became children 
of the first RebGUI window opened after the splash screen automatically. 
Currently, there is no /PARENT refinement for DISPLAY, but that should 
be easy to add.
Robert
1-Apr-2006
[3215x2]
Question: How do you handle the case if you have an application that 
has hundreds of fields and you need to reference those in the GUI 
code to get values in and out.
Do you imagine a lot of names? Or is there a more systematic way 
to do it?
Volker
1-Apr-2006
[3217x2]
contexts? panels?
overlooked its rebgui. but works there too?
Robert
1-Apr-2006
[3219]
IIRC the used words for reference of GUI widgets are global words.
Volker
1-Apr-2006
[3220]
Even if you bind them somewhere else?
Robert
1-Apr-2006
[3221x2]
But than I need to write a special bind block too. That's double 
work. Once in the GUI code, once in the bind block.
layout [
	name: field
	surname: field
	... hundred more ...
]
Volker
1-Apr-2006
[3223x2]
my-layout[
 part1[ name: field surname: field]
 second-hundred[ name: field .. ]
]
->

 part1: context[name: surname: none lay: [name: field surname: field]
append lay part1/lay
..
?
Robert
1-Apr-2006
[3225x2]
Hmm... This will than need some path notation to get there. This 
leads to database column names like: part1_name etc.
I thin I will go for an abstract solution and just use:
g001
g002
...
g100

and keep the mapping somewhere else.
Volker
1-Apr-2006
[3227x2]
would be real path-notation, part1/name
hundreds of different fields(layout-wise), or a table with lots of 
rows?
Robert
1-Apr-2006
[3229]
?? Sorry don't understand.
Volker
1-Apr-2006
[3230x2]
with lots of rows you can use the same layout-code over and over, 
only bound to different contexts.
and store contexts in blocks. instead of creating lots of artificial 
words for names
Normand
1-Apr-2006
[3232]
Can some one tell me why the path value of face/picked is sometimes 
valid sometimes invalid ? The last call is invalid but the precedings 
are valid.  prospect-table: table 120x40  #HW options ["ID" left 
.1 "Date M-à-J" left .22 "Nom" left .34 "Prenom" left .34] data (current-list) 
[
			show-text this-text pick face/data first face/picked 
			print "" print face/data print face/picked
			print (type? face/picked)

   ; ** Script Error: Invalid path value: picked ]; I want to use face/picked 
   in a formula to change the index to the pick function.
Thør
1-Apr-2006
[3233x3]
.
.
.
Ashley
1-Apr-2006
[3236x2]
Robert:
	1) global words: they are not. Try the following:


  f: has [v] [display "Test" [v: field button [unview halt]] do-events]


 My normal approach is to wrap each display in its own function with 
 something like:


  display-account-summary: make function! [id [integer!] /local f1 
  f2 f3 f4 f5 f6] [
			...
			display "Account" [
				f1: field
				f2: field
				...
			]
			...
		]


 2) tab-panel: works, just take a look at how it is used in %tour.r. 
 Note that it defaults to "size: -1x-1". Maybe you need to make the 
 panel contents bigger?
face/picked: try adding a "print mold face/picked" to the table action 
so you can see what block value(s) are being selected. Perhaps, in 
a particular case, it is returning an empty block?
Graham
1-Apr-2006
[3238x2]
Does image still only take a filename and not an image type?
I'm looking at capturing images from a web cam and inserting them 
into my program.
Ashley
1-Apr-2006
[3240]
The following works:

	a: load my-image.png
	display "Test" compose [image (a)]
Graham
1-Apr-2006
[3241]
Ahh .. forgot needed to compose.
Thør
2-Apr-2006
[3242x6]
Sorry for the proliferation of my dots, I'm forcing a resync and 
I'm being disconnected at about 25%... :-(
.
.
.
.
.
Graham
2-Apr-2006
[3248]
Have you considered broadband ?