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

World: r3wp

[View] discuss view related issues

Henrik
9-Aug-2006
[5351]
because I have quite a lot of variables
Ladislav
9-Aug-2006
[5352x2]
(I can suggest improvements)
aha, you do not want to "duplicate" declarations?
Henrik
9-Aug-2006
[5354]
well the thing is how variables are initialized when doing an object. 
I've discussed this before, but it would be nice to keep the list 
shown at the top of that example in the docs as a dynamic list. this 
prevents me from having to maintain that list and the layout words 
when doing changes. I guess I need to approach how to make the object 
block differently.
Ladislav
9-Aug-2006
[5355]
I am wildly trying to guess what you want, although you are not making 
it easy for me :-). Let's see my CFOR function as an example:
Henrik
9-Aug-2006
[5356]
well, I may just be going about this backwards
Ladislav
9-Aug-2006
[5357x2]
>> cfor [i: 1] [i <= 3] [i: i + 1] [print i]
1
2
3
== 4
>> i
** Script Error: i has no value
** Near: i
>>
is this pattern what you want to be able to do?
Henrik
9-Aug-2006
[5359]
well, that's a local variable alright, but this is for an object. 
I think I have a different solution though, so I think you should 
wait with wasting more time on it.
Ladislav
9-Aug-2006
[5360x2]
this is for an object
 - it does not matter at all
you just need to know what you want
Henrik
9-Aug-2006
[5362]
I know what I want :-) I just need to find out a solid way to solve 
the problem permanently
Ladislav
9-Aug-2006
[5363x2]
the solution already exists, see http://www.fm.tul.cz/~ladislav/rebol/contexts.html#section-22
or http://www.fm.tul.cz/~ladislav/rebol/cfor.r
(and http://www.fm.tul.cz/~ladislav/rebol/set-words.r)
Henrik
9-Aug-2006
[5365x2]
ok, how do you then do that for an object?
the way I see it, I need to create the object block with layout blocks 
first. then analyze those layout blocks for set words and finally 
create a new block with the set words set to none and append the 
object block afterwards
Ladislav
9-Aug-2006
[5367x2]
how do I do it for an object? - the http://www.fm.tul.cz/~ladislav/rebol/contexts.html#section-20
does it for an object when simulating how an object is created
CFOR function does it for a block, LFUNC does it for a function, 
it is quite easy actually
Henrik
9-Aug-2006
[5369x2]
am I correct that set-words is not recursive?
nevermind, made it recursive myself :-)
Ladislav
9-Aug-2006
[5371]
I wanted to stay compatible with the way how objects work, that is 
why I didn't make it recursive, but it is easy to change
JaimeVargas
9-Aug-2006
[5372]
Lad, when you shadow a variable how do you access the top level one? 
In the CFOR example i showdows any system i.
Gabriele
9-Aug-2006
[5373x2]
http://www.colellachiara.com/soft/libs/utility.r
look at the vid-context function
Ladislav
9-Aug-2006
[5375]
I am using e.g. use [a] [print system/words/a]
Anton
18-Aug-2006
[5376]
Anyone remember a way to change the appearance of the caret ?
MikeL
18-Aug-2006
[5377]
Anton, I'll bet you mean something other than "system/view/caret: 
 some-txt"
Anton
19-Aug-2006
[5378x4]
Yes, not the position of the caret, I mean the thickness of the text 
insertion point, otherwise known as the caret.
But I've moved on to another puzzle:
>> view layout [base-text "hello" with [focus self]]
** Script Error: Invalid graphics face object
** Where: focus
** Near: show face
view layout [field field "hello" with [focus self]]   ; OK
Graham
19-Aug-2006
[5382]
Anyone know what parameters are expected by local-file-request ?
Anton
19-Aug-2006
[5383]
You can see local-request-file used in request-file.
Graham
20-Aug-2006
[5384]
Yes, that's where i saw it.
Anton
20-Aug-2006
[5385x2]
I remember fiddling with it ages ago but I can't remember anything 
now.. :)
I've figured out a way to avoid showing the caret for you custom 
styles. It requires patching FOCUS and using insert-event-func to 
install a handler that sends key events to the focal-face when there 
is no caret.  (DO EVENT won't do that, so we have to.)
See http://anton.wildit.net.au/rebol/patch/focus-system-patch.r
Volker
21-Aug-2006
[5387]
You could set system/view/caret to none in /redraw?
Anton
21-Aug-2006
[5388x5]
Hmm.. temporarily setting caret to none - let me try that.
First test - does not appear to work...
I think the caret is rendered after the redraw finishes, so fiddling 
with caret between SHOW and DRAW actions of redraw won't make any 
difference.
Here is what I tried:
; Redraw action SHOW occurs first, then DRAW.

view center-face layout [
	f: field feel [
		crt: none 
		append body: second :redraw bind [

   either act = 'show [crt: system/view/caret system/view/caret: none][system/view/caret: 
   crt]
		] body/3/2
	]
	field 
	do [focus f]
]
Henrik
3-Sep-2006
[5393]
I'm getting hard crashes when closing an 'inform window sometimes. 
If I change the windows to view/new they no longer happen, but I 
lose the always-on-top functionality.


I was wondering if anyone has experienced similar crashes and know 
a precise cause? Perhaps some events are blocked?
Anton
4-Sep-2006
[5394]
How are you closing the informed windows ? Usually should be HIDE-POPUP 
(not UNVIEW).
Gabriele
4-Sep-2006
[5395]
henrik, please let me know if you manage to reproduce that.
Henrik
4-Sep-2006
[5396x2]
It's a little difficult, because it's a rather big VID application, 
but it happens very often and always when the window is closed. Unfortunately 
I can't spread this app. I can't reproduce it accurately every time, 
but it seems that a certain amount of keyboard input in that window 
must be involved before it happens.

Anton, I simply click the close button [X] on the window.
I have 3 different inform windows and it definitely happens in 2 
of them, always when clicking the close button.
Volker
4-Sep-2006
[5398]
Also when you use "hide-popup"? Else maybe the auto-close has a bug, 
does a 'unview only?
Henrik
4-Sep-2006
[5399x2]
haven't tested with that yet. I have a custom event function for 
closing the main window:

insert-event-func func [face event] [
  if event/type = 'resize [
    help-window-resize
    main-resize
  ]
  either event/type = 'close [
    either event/face/text = main-window-title [
      if request/confirm "Afslut programmet?" [quit event]
    ][
      event
    ]
  ][
    event
  ]
]
It happens also when using HIDE-POPUP