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

World: r3wp

[View] discuss view related issues

Pekr
23-Feb-2005
[430]
>> container-face: layout [b: box 50x50 red button "to-image" [show 
b/pane r: to-image b/pane]]

>> subface: layout/size/offset [at 0x0 box 100x100 blue] 100x100 
0x0  b/pane: subface
>> view container-face
>> view layout [image r]
Volker
23-Feb-2005
[431x3]
No, your code is ok, only rebol is - ahem ;)
b/pane: none show subface ; and then restore b/pane
rebol[]

container-face: layout [b: box 50x50 red button "to-image" [b/pane: 
none show subface r: to-image subface b/pane: subface show b view/new 
layout [backdrop black image r] ]]

subface: layout/size/offset [at 0x0 box 100x100 blue] 100x100 0x0 
 b/pane: subface
view container-face
Pekr
23-Feb-2005
[434x3]
why b/pane: none?
do you think there is something strange with face rendering/composition/refresh?
actually - if you set b/pane to none, where will subface be shown/rendered? 
:-)
Volker
23-Feb-2005
[437]
its rendered in its buffer. you must tell /view that the parent-face 
of subface is invalid. thus b/pane: none. now b/pane does not know 
subface and subface must re-render itself and then it goes full size. 
else it knows only the 50x50 is visible. should be fixed in to-image 
to force a full redraw.
Pekr
23-Feb-2005
[438]
nice, thanks a lol! It sounds also logical :-)
Gabriele
23-Feb-2005
[439]
Rondon: the styles for the Detective were designed and implemented 
by Romano and Chris. The code is under the GPL; i guess you can contact 
them about them. bear in mind they were not intended to be generic 
styles, but were done just for the detective.
Chris
23-Feb-2005
[440]
http://www.ross-gill.com/r/btn-style-old.r-- this is an earlier 
version of my xp-themed btn style.
Guest
23-Feb-2005
[441]
.
Cyphre
23-Feb-2005
[442x2]
Pekr: the solution for your problem is:

sublay: layout/offset [
	box 100x100  field ""
] 0x0
view layout [
	b: box 50x50
	button "do-obr" [
		save/bmp %obr.bmp to-image make sublay [
			pane: head forall pane [
				pane/1: make pane/1 []
			]
		]
	]
	do [b/pane: sublay  show b]
]
in other words the to-image takes the parent-face references for 
rendering so you have to get rid of them.
Pekr
23-Feb-2005
[444x2]
That is nice ... but another example of how even short rebol code 
can be difficult to understand, at least for me ...
pane: head forall pane [pane/1: make pane/1 []] ... is a magic to 
me ...
Ashley
23-Feb-2005
[446]
You're not the only one! ;)
Pekr
23-Feb-2005
[447x2]
hmm, so during the button-press, you simply make sublay [] In such 
case, you get clone of sublay face definition, right? So you also 
need to iterate thru sublay pane elements and recreate them for made 
face?
Ashley - I think it is like I described it now ... Cyphre is making 
new sublay face ... and original sublay can contain xy elements, 
e.g. field with some filled-in info, so he imo iterates thru its 
pane and recreates it ....
Ammon
24-Feb-2005
[449]
How do you change the title of a window that has already been VIEWed?
Allen
24-Feb-2005
[450x2]
lay/text: title 
	lay/changes: 'text
;-- working example
lay: layout [
	size 500x200
	button "Change Title" [
		lay/text: join "Time: " now
		lay/changes: 'text
		show lay
	]
]

view lay
Ammon
24-Feb-2005
[452]
See, I knew it was something easy...
Brock
26-Feb-2005
[453x2]
Ammon, I was attempting to use your dropdown.r with view version 
1.2.56.3.1 (agg9 version) and notice the dropdown list items don't 
appear in the list.  Are you aware of this change from earlier versions 
of view and if so, did you fix it yet?
Does anyone here use later betas on an ongoing basis instead of the 
last official release from rebol?  Wish Carl would release a new 
official view.
Geomol
26-Feb-2005
[455]
I mostly use rvdraw57e.exe, when doing View stuff. I find it more 
likely, that I will have to change less, when a new official REBOL/View 
is release this way.
Ammon
26-Feb-2005
[456x2]
Brock, check the source...


                ;options/data: data ;uncomment for View 1.3 support
                options/lines: data
I haven't had a chance to actually test it with the AGG betas though...
Brock
26-Feb-2005
[458x3]
Ah, didn't look at the source.  I do recall the /lines /data change 
that occured way back.  I'll give it a try.
Ammon, yes that did the trick with one of the latest views.
;May I suggest a change in your code something like this...
        either 1.2.8.31 < system/version [
            	options/data: data ; for later view 1.3 betas
        ][
            	options/lines: data
        ]
Ammon
26-Feb-2005
[461]
Absolutely.  Thanks!
Ashley
26-Feb-2005
[462]
Does anyone here use later betas on an ongoing basis

 REBOL/View 1.2.10.3.1 30-May-2003, as it's a good match for the latest 
 [working] SDK  (REBOL/Encap 1.2.0.3.1). It is frustrating how REBOL 
 has become more and more "write once, test everywhere" over time 
 - hopefully /Platform will provide a unified base so we don't have 
 as many of these "which version(s) of View does this work" on type 
 issues in the future.
Anton
26-Feb-2005
[463]
Mmm.. see my note in --> RAMBO group.
JaimeVargas
26-Feb-2005
[464]
Ashley I only use the latest beta, because they usually fix something 
that has been bugging me currently that 1.2.48 for me.
Ashley
27-Feb-2005
[465x2]
A question for those who have delved into View facets; which facets 
(apart from 'data) are *not* used by View? 'action seems to be reserved 
for the VID feel system, 'span seems to have an undefined effect 
if used. The complete list is:

	type: 'face
	offset: 0x0
	size: 100x100
	span: none
	pane: none
	text: none
	color: 200.200.200
	image: none
	effect: none
	data: none

 edge: make object! [color: 200.200.200 image: none effect: none size: 
 2x2]

 font: make object! [name: "arial" style: none size: 12 color: 0.0.0 
 offset: 2x2 space: 0x0 align: 'center valign: 'center shadow: none]

 para: make object! [origin: 2x2 margin: 2x2 indent: 0x0 tabs: 40 
 wrap?: true scroll: 0x0]

 feel: make object! [redraw: none detect: none over: none engage: 
 none]
	saved-area: none
	rate: none
	show?: true
	options: none
	parent-face: none
	old-offset: none
	old-size: none
	line-list: none
	changes: none
	face-flags: 0
	action: none


I'm trying to determine which facets I can safely use when not using 
VID.
can safely use

 should read, "can redefine for my own use (without affecting the 
 behaviour of the View face)"
DideC
28-Feb-2005
[467]
AFAIK, 'options is used only by window level face. Others are used 
by View as 'face is the View base object.

svv/vid-face is the VID default face, with more properties that you 
can used more safely.
Ashley
28-Feb-2005
[468]
Of the 25 View facets, I have been able to prove (via simple test 
cases) that 19 are used in some shape or form; which leaves 6 that 
I cannot prove are used:

	type		; view make face [type: 'blah] works just fine
	span
	data
	saved-area
	line-list
	action


For the record, passing an empty  face to 'view changes the following 
facets:

	text            string!   ""
	old-offset      pair!     0x0
	old-size        pair!     100x100
	face-flags      integer!  1


and doing a "view make face [pane: make face []]" will additionally 
set the sub-face's 'parent-face facet.

Oh for some low-level documentation!!! ;)
DideC
28-Feb-2005
[469]
'line-list is only used on "long 'text" face (more than 200 chars 
IIRC). Be carefull with it.


'span was used in View 1.2.1 to set a pixel ratio (zoom) between 
'offset, 'size and correspondng real screen values. I think recent 
beta/alpha does not care of it.

'saved-area is considered if  value is 'true IIRC.


'action is checked by 'feel function, so can be used if 'feel does 
not care of.

'data depends of  'feel too.


'type could be used. Only 'layout or other VID functions use it AFAIK
Anton
28-Feb-2005
[470]
By the way, the words in a face object are not "facets", as I fell 
into believing some time ago. Facets are a style's dialect words 
which follow the style word in the layout block. eg. layout [BUTTON 
"hello" red [print "pressed"] ]    BUTTON is the style word, the 
rest that follow are the facets. These may or may not translate nicely 
into attributes in the new face object created for this button. A 
single facet could affect several attributes inside the button face.
Robert
28-Feb-2005
[471]
How can I minimize a View window to a tray-icon only?
Anton
28-Feb-2005
[472x2]
This I grabbed in Dec 2002
Rebol [
	title: "little custom tray exapmle"
	author: [cyphre-:-seznam-:-cz]
]

set-tray: does [
set-modes system/ports/system [
	tray: [
		add main [
			help: "Just some help line"
			menu: [
				desktop: "This is my tray"
				bar
				test: "test item"
				bar
				quit: "Quit"
			]
		]
	]
]
]
system-awake: func [port /local r][
    if all [r: pick port 1 (r/1 = 'tray)] [

        if any [(r/3 = 'activate) all [(r/3 = 'menu) (r/4 = 'desktop)]][

  view/new/offset layout [banner "you clicked the tray button 1"] random 
  200x200
        ] 

        if all [(r/3 = 'menu) (r/4 = 'test)] [view/new/offset layout [banner 
        "you clicked the tray button 2"] random 200x200]
        if all [(r/3 = 'menu) (r/4 = 'quit)] [quit]
    ]
    return false
]
system/ports/system: open [scheme: 'system]
append system/ports/wait-list system/ports/system
system/ports/system/awake: :system-awake 
set-tray
wait []
Do that, then look to your system tray for the rebol icon.
Robert
28-Feb-2005
[474]
Thanks, I try it.
Ashley
28-Feb-2005
[475]
Anton, http://www.rebol.com/docs/view-guide.html#section-15seems 
to contradict you. ;)
Ashley
1-Mar-2005
[476x2]
After extensive testing, I've come to the following conclusions about 
the View facets I mentioned before:

	type		; required, but not used by View directly
	span		; required, but is depreciated / not used
	data		; used by VID styles
	saved-area	; used by View
	line-list	; used by View
	action		; used by VID feel system


So, if you create a View-only GUI I believe you can safely use / 
redefine the following four facets: type, span, data and action.
Which leads (sort of) to my next question. Does anyone think it is 
worth developing a simple, high-performance, low-memory GUI alternative 
to VID? The aim would be to have it built on View from the ground 
up such that you could (for example) use enface / rebface (or equivalent) 
without needing %view.r (and the over 120 KB of mezz it pulls in). 
If there's sufficient interest I'll document and release the Alpha 
implementation I have.
Ammon
1-Mar-2005
[478x2]
Yes!
I've built GUIs from hand and when the whole GUI is built by hand, 
I found it to be considerably faster and much lighter on the memory 
usage.