[changeset] Missing ScreenSize & ScreenPixelsPerInch properties

Thomas Treichl Thomas.Treichl at gmx.net
Thu Jan 22 14:07:38 CST 2009


John W. Eaton schrieb:
> On 22-Jan-2009, Ben Abbott wrote:
> 
> | For practical reasons, I don't see a reason to not assume all Apple's computers have a Mach Kernel.
> 
> OK.  I think we should use OCTAVE_USE_OS_X_API in the sources, and if
> we need to change the way it is detected, at least we only have to
> change it one place.
> 
> jwe
> 

Hi,

just brought the twins to bed and now have 5 more minutes to put in my 2c worth 
here. The macro definition about __APPLE__ and/or __MACH__ is described here:

   http://developer.apple.com/technotes/tn2002/tn2071.html

A copy of the relevant parts from this site:

   __MACH__
     This macro is defined if Mach system calls are supported.
   __APPLE__
     This macro is defined in any Apple computer.

They suggest to always use both macros with an && combination on modern systems 
(that's also the same that I somewhere read in the GNU GCC documentation but 
currently cannot find it anymore).

John, you were asking for CGDirectDisplay.h and CGDisplayConfiguration.h on all 
systems? Generally yes, since MacOSX 10.3.9 and until at least 10.4.11 which is 
my system (Ben can you please verify on your 10.5.x system). Here is my output 
from a quick search:

bash /Developer/SDKs $ find MacOSX10.3.9.sdk -iname CGDirectDisplay.h
   MacOSX10.3.9.sdk/Developer/Headers/CFMCarbon/CGDirectDisplay.h
   MacOSX10.3.9.sdk/Developer/Headers/CFMCarbon/CoreGraphics/CGDirectDisplay.h

The other thing is that, John, you've written Carbon, not Cocoa. Cocoa is the 
ObjC way for accessing the Apple user interface, whereas Carbon is the C-API. In 
the changeset earlier you wrote

   #elif defined (OCTAVE_USE_COCOA_API)  // FIXME -- what should this be called?

which better should be changed to

   #elif defined (OCTAVE_USE_CARBON_API)

If somebody is interested in some more history about it I would suggest

   http://en.wikipedia.org/wiki/Carbon_(API)

I don't have any further notes. BTW, thank you very much for this port!

   Thomas


More information about the Octave-maintainers mailing list