Re: WINDOW procedure and SET_X_BID keyword [message #42208] |
Tue, 18 January 2005 09:40 |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Rob writes:
> Well, I am glad you saved that documentation! I have done some testing
> without using WDELETE, but that's where I see the X server process grow
> and grow. It would seem that IDL is allocating its own Pixmaps even
> though I provide the Pixmap id to use.
>
> I am calling something like this to get the window "allocated":
>
> WINDOW, /FREE, /PIXMAP, XSIZE=nn, YSIZE=nn, set_x_bid=nn
> Does that seem right?
That looks right according to the documentation. But this
is old, old stuff, that was NEVER officially documented.
I wouldn't build an important application with it, if you
know what I mean. :-)
Cheers,
David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.dfanning.com/
|
|
|
Re: WINDOW procedure and SET_X_BID keyword [message #42209 is a reply to message #42208] |
Tue, 18 January 2005 09:13  |
John R. Iverson
Messages: 6 Registered: September 2002
|
Junior Member |
|
|
Well, I am glad you saved that documentation! I have done some testing
without using WDELETE, but that's where I see the X server process grow
and grow. It would seem that IDL is allocating its own Pixmaps even
though I provide the Pixmap id to use.
I am calling something like this to get the window "allocated":
WINDOW, /FREE, /PIXMAP, XSIZE=nn, YSIZE=nn, set_x_bid=nn
Does that seem right?
Rob
|
|
|
Re: WINDOW procedure and SET_X_BID keyword [message #42214 is a reply to message #42209] |
Tue, 18 January 2005 08:48  |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Rob writes:
> I've been allocating my own Pixmaps (in a C program) and using IDL's
> WINDOW procedure to draw into that Pixmap
> (WINDOW, /FREE, /PIXMAP, /SET_X_BID=####). That works pretty well, but
> in some circumstances I've seen BadPixmap X Errors come out of the IDL
> process.
>
> Now clearly this situation is begging for me to have some timing issues
>
> - I am using XFlush() and IDL's "EMPTY" procedure in an attempt to keep
>
> the two X Displays from getting out of sync.
>
> If I remove my call to WDELETE, I believe I never have this issue.
> However, this appears to leak memory on the X Server (my processes run
> for a long time).
>
> Anyway there is no documentation about this keyword. Does anybody have
> any insight into this issue? I am having a devil of a time reproducing
> this problem also, so I'm thinking it's a timing issue.
I'm pretty sure I have the only piece of documentation extant
on this topic. I see it is dated 20 July 1992! Oddly enough,
I was cleaning out some files just last night, looking for
something else, when I found it again. I nearly threw it out,
but kept it for old-times sake. You never know... :-)
Anyway, there is a warning in this piece of documentation to
not use WDELETE to delete windows created in this way or X
protocol errors will result. Your X application will have
to kill these kinds of windows.
Cheers,
David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.dfanning.com/
|
|
|