[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: "Books" to be ported to GNUstep
From: |
Fred Kiefer |
Subject: |
Re: "Books" to be ported to GNUstep |
Date: |
Tue, 24 Feb 2004 02:05:29 +0100 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030821 |
Christopher Culver wrote:
On 2004-02-21 13:33:53 +0100 Fred Kiefer <fredkiefer@gmx.de> wrote:
I had a look at Books source code and all I did see was Cocoa.
Although there is a lot more code, than I would like to read at the
moment, I wont expect any Carbon in it. There is some CoreFoundation
code, eg in the XMLReader and of course there are a lot of new classes
that GNUstep is still missing. Not only from AppKit (eg
NSSearchFieldCell), also Foundation classes as NSIndexedSet.
The developer will backport Books to Jaguar. Will this lessen the number
of problematic classes? What will remain for GNUstep to implement?
What about porting the application to Cocoa first? :-)
I had a closer look at the app or rather my compiler had and it was
throwing up errors in places I would not have expected them. There are
uses of "bool" instead of "BOOL" and "false" instead of "NO". It is
possible, that the Apple environment tolerates them, still I think they
are plain wrong. Also header files are missing the include (or import,
if you insist) of AppKit.h although they make heavy use of AppKit
classes. That way it really was no fun to find out, what is actually
missing in GNUstep to support this application.
Now the results, to compile Books you will need:
- A replacement for the CoreFoundation XML Parser. There has been some
discussion a few months ago on the GNUstep mailing list about wrapping
up the XML parser of GNUstep base in some similar way. You could try to
find the old postings and perhaps identify somebody willing to help you.
- An address book implementation. Here you may be lucky as there is a
similar GNUstep project, which may (or may not) offer all you need.
- An implementation of NSIndexSet (and NSMutableIndexSet). You could try
to ask Richard Frith-MacDonald for help on this, he is great on efficent
data structures.
- A small exension on NSMutableDictionary (setValue:forKey:).
- Some basic AppleScript support, of #ifdefs around the code using it.
- An implementation of NSSearchField.
- Some extensions for NSTableView, which partly require NSIndexSet.
The last two look like the biggest work to me, with the NSTableView
being the worst.
I cannot answer your question, if a backport to Jaguar would help in any
way, as I don't know the differences between the different MacOSX
releases, but if any of the above requirements would go away live would
surely be easier for you.
Cheers
Fred
PS: To motivate you a bit to keep on trying, I have attached a fake
screen shot I was able to produce with my NIB loading code. (The garbage
at the bottom comes from Gimp) This is currently only experimental and
should not be regarded as working (eg wrong button types). The official
way to port NIB files is still to use nib2gmodel.