Hi everybody,

I'm happy to announce first PreferencesKit preview I have been working on until recently (with some help from Yen-Ju). It is based on GSSytemPreferences initial code written by Uli Kusterer. Thanks Uli :-)

PreferencesKit is a framework which provides various features to build flexible Preferences-like window in any GNUstep or Cocoa applications.

Key features :
- Generic plugin model/schema
- Plugins registry mechanism (with search paths) which can be specialized
- NSPreferencePane and Backbone PrefsModule support
- Possibility to choose between various presentations like toolbar or table view (where panes are listed)
- Possibility to extend PreferencesKit with new custom presentation
- Facility for Preferences-only applications development (just set up a main nib file, list plugins to load in a plist and link PreferencesKit to have an application ready to use)
- Cocoa compatibility (Xcode project bundled)

Here are some PreferencesKitExample screenshots running on both GNUstep and Cocoa : <http://www.dromasoftware.com/etoile/experimental/screenshots/ prefskit/prefskit.htm>

PreferencesKit is documented with autogsdoc markup in source code, but this documentation may be unaccurate on some points at this time. I plan to correct that soon, then to output this documentation in html format and make it available on Étoilé website. In following days, I'm going to polish PreferencesKit API a bit, especially to support other presentation views like tabs or popup menus.

In a next release (when Étoilé 0.1 will have been released), I would like to add the possibility to have "light" pane support (they wouldn't involve to set up a plugin bundle).

Not really soon, I mean in a more long term, I'm planning to break PreferencesKit in two frameworks which may named :
- PluginsKit (for generic plugin facilities)
- PaneKit (for generic panes facilities, I think panes can be useful for other sort of windows like inspectors to take an example)

Known bugs :
- Matrix view presentation is still really buggy
- Window locations is shifted downward when you switch to a new preference pane (in fact, it is a bug in GNUstep NSWindow frame computation)

You can download the framework from Étoilé repository : <https:// gna.org/svn/?group=etoile> You can browse the code with this link : <http://svn.gna.org/viewcvs/ etoile/trunk/Etoile/Frameworks/PreferencesKit/>

Most of PreferencesKit features are demonstrated in PreferencesKitExample, it is worth to take a look at it. Moreover it is nice template to build new Preferences applications. Here is the link : <http://svn.gna.org/viewcvs/etoile/trunk/Etoile/ Developer/Examples/PreferencesKitExample/>

That's it,
Quentin.


Reply via email to