Difference between revisions of "Summer Of Code Ideas"

From GNUstepWiki
Jump to navigation Jump to search
Line 10: Line 10:
 
* Finish input server [http://svn.gna.org/viewcvs/gnustep/libs/gui/branches/kazunobu_input_management/ support]
 
* Finish input server [http://svn.gna.org/viewcvs/gnustep/libs/gui/branches/kazunobu_input_management/ support]
 
* Finish project center
 
* Finish project center
* Revamp Objective-C Garbage collection and make it compatible with the Apple implementation
+
* Revamp Objective-C garbage collection and make it compatible with the Apple implementation
 +
* Cross-compilation from GNU/Linux to embedded devices
 
* [[GNUstepWeb]] (add script language support, etc)
 
* [[GNUstepWeb]] (add script language support, etc)
  

Revision as of 19:01, 18 March 2008

These are the ideas that were proposed as projects. This section is maintained for historical interest, and to aid planning for the Summer of Code 2008 (if it happens again). If you have a project that would be interesting for next year, feel free to add it here.


Porting

  • Port WebKit (using GCC 4.x with ObjC++ support). The WebKit team is willing to help whoever wants to take on this project, please see this email.

General Improvements

  • Printing Support (make printing work consistantly. Test.)
  • MS Windows support (better integration in the MS Windows look and feel, especially the in-window-menu support, file dialogs, etc)
  • Finish input server support
  • Finish project center
  • Revamp Objective-C garbage collection and make it compatible with the Apple implementation
  • Cross-compilation from GNU/Linux to embedded devices
  • GNUstepWeb (add script language support, etc)

AppKit

  • Fix focusing bugs/issues making sure GNUstep apps can be used with all window managers
  • Text System should be cleaned, profiled and finished. Many methods in NSLayoutManager are unfinished or unimplemented, so we currently cannot tweak the test system as much as the one provided by Cocoa. (Quentin Mathe)
  • We need NSTypeSetter, NSGlyphStorage, NSGlyphInfo, and NSGlyphGenerator implementations. If NSTypeSetter and NSLayoutManager were implemented, they would probably be used in Etoile. (Quentin Mathe)
  • NSTextTable, NSTextTableBlock, NSTextList, & NSTextBlock implementations would also bring the GNUstep text system in line with that of Cocoa as of Mac OS 10.4. The classes could be useful to build a powerful word processor. (Quentin Mathe)
  • NSOpenGL Classes could be improved, made compatible with current Cocoa implementations, and further tested (Quentin Mathe)
  • NSBitmapImageRep formats: Currenly, we support only reading and writing for TIFF, read-only for GIF, JPEG, PNG, PNM. We would like to have write support for these NSBitmapImageRep categories. Afterwards, SVG reading, then write support, would be nice. (Quentin Mathe)
  • NSDatePicker, NSLevelIndicator (and obligatory companion NSCell subclasses) implementations.
  • NSFormatter isn't working very well at this time (Quentin Mathe)

Base

  • NSDateComponents implementation.
  • NSCalendar implementation.
  • Finish the NSPredicate implementation. This was partially done by Quentin Mathe, but is untested. The most important part is not done, which is to write a parser and lexer for the custom language used by NSPredicate. Also needed for this are NSComparisonPredicate, NSCompoundPredicate, and NSExpression implementations.
  • Test the NSXMLParser Cocoa class wrapper around GSXML, written by Richard-Frith Macdonald (Nicola: it seems to work fine, but it would be nice to have regression tests). Once this is thoroughly tested, NSXMLDocument, NSXMLDTD, and NSXMLDTDNode, and NSXMLElement, and NSXMLNode implementations may be useful for compatibility.

Core Data

  • Saso Kiselkov started implementing this framework. However, NSManagedObjectContext & NSPersistentStoreCoordinator have yet to be tackled according to his web page. Presumably NSPersistentDocument also needs to be implemented.


Misc

  • Create a AJAX Framework for GNUstepWeb
  • There's a truck load of stuff in WO 5.4.1 that GNUstepWeb is missing: [4]
  • Create Objective-C bindings for DBUS