Problems with Retain on OS X Mavericks [message #87020] |
Sat, 21 December 2013 10:58  |
Matthew Argall
Messages: 286 Registered: October 2011
|
Senior Member |
|
|
Mavericks now seems to require DEVICE, RETAIN=2 when saving output from IDL's direct graphics procedures (e.g. via a combination of PLOT and cgSnapshot). This was not true in previous versions of OS X (if my memory serves me correctly).
Coyote Graphics programs (e.g. cgPlot, cgWindow, cgZPlot) work fine /unless/ the window they are displayed in was opened by a non-cg program/procedure (e.g. WINDOW, PLOT).
IDL> print, !version
{ x86_64 darwin unix Mac OS X 8.2 Apr 10 2012 64 64}
|
|
|
Re: Problems with Retain on OS X Mavericks [message #87021 is a reply to message #87020] |
Sat, 21 December 2013 14:41   |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Matthew Argall writes:
> Mavericks now seems to require DEVICE, RETAIN=2 when saving output from IDL's direct graphics procedures (e.g. via a combination of PLOT and cgSnapshot). This was not true in previous versions of OS X (if my memory serves me correctly).
>
> Coyote Graphics programs (e.g. cgPlot, cgWindow, cgZPlot) work fine /unless/ the window they are displayed in was opened by a non-cg program/procedure (e.g. WINDOW, PLOT).
I wouldn't have thought this was anything new. I have routinely, for the
past 10 years or so, set RETAIN=2 for *all* UNIX machines and RETAIN=1
for all Windows machines whenever I open an IDL graphics window. This is
how all the Coyote Library routines work.
Cheers,
David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.idlcoyote.com/
Sepore ma de ni thue. ("Perhaps thou speakest truth.")
|
|
|
|
Re: Problems with Retain on OS X Mavericks [message #87023 is a reply to message #87022] |
Sun, 22 December 2013 09:24  |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Matthew Argall writes:
> After writing the initial post, it occurred to me your routines must work for a reason... However, before I updated to Mavericks (from Snow Leopard), I did not ever have to set RETAIN=2.
The default in IDL is to ask the window manager to take care of what is
technically called the "backing store", or the repair of windows. Some
window managers (Windows, for example) are happy to do this, but it is
not something they MUST do by default. Almost all UNIX window managers
ignore the request unless special care is taken to configure them to do
so.
I don't have a Mac, so I don't know. Maybe with the update Apple now
configures the window manager to act more like other UNIX window
managers.
In any case, IDL can easily do the job itself. It just has to be told to
do so. This is trivially easy with Coyote Graphics. Just open graphics
windows with cgDisplay instead of Window and you are set. :-)
Cheers,
David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.idlcoyote.com/
Sepore ma de ni thue. ("Perhaps thou speakest truth.")
|
|
|