I googled a bit more. There are at least two ways of achieving this mentioned in the docs of libFoundation: by using XML-RPC call and by wrapping classes in ANSI-C APIs. [4]
Well actually you can easily access all Obj-C features trough the following pure C API: http://developer.apple.com/documentation/Cocoa/Reference/ObjCRuntimeRef/Refe...
While the above is correct, modern Cocoa, in opposite to it's precedessor NeXTstep/OpenStep, is based on Quartz and CoreFoundation, both of which are plain C APIs. There's no need for neither Carbon nor Cocoa nor Objective-C to get some basic graphics to the Mac OS X screen.
You are right, however what we all want to have is probably some Wine seamless integration with OSX GUI at higher level than Quartz which is just equivalent of WinGDI, and for this you need to somehow use HIToolkit of Carbon extra to do windows management, font handling etc. for example: http://developer.apple.com/documentation/Carbon/Reference/Window_Manager/Ref... /apple_ref/c/func/CreateNewWindow .. to create new window.
The problem here is that HIToolkit from Carbon is a bit pushed away by Apple in favor of Cocoa, and the reason is that Carbon has its roots in Mac OS 8, and Cocoa is the new API for Mac OS X NextStep based system, moreover there's no 64-bit HIToolkit (which doesn't matter for Wine now, but may matter in the future).
There's nice discussion here: http://www.lazarus.freepascal.org/index.php?name=PNphpBB2&file=printview...
I believe if pure C source is a constraint for Wine, one should try to make winequartz.drv to be Quartz API for all WinGDI like stuff + some HIToolbox for Window management and CoreText for text display.
Regards,