SourceForge Logo

Support This Project

Short Description

NovaTK is an object-oriented, cross-platform GUI toolkit. One of the focuses of NovaTK is to facilitate rapid development of cross-platform applications requiring fewer lines of code. The NovaTK event system is based upon a powerful callback mechanism that makes application design simpler, easier read and logical.


The Design of NovaTK

NovaTK is designed with a layer of abstraction over the user's operating system or framework. This platform layer, called "GSys" was designed so that porting of NovaTK to a different platform only required an implementation of GSys over that platform. Implementations of GSys are not just limited to operating system but can also be over other frameworks on the same operating system. At present, NovaTK only has a GSys backend for X11 and Windows but there are plans to provide a backend over Mac OS X's Carbon(or possibly Cocoa) as well as SDL to make it possible to use NovaTK in game development.

Rather than being based around an event loop, NovaTK is designed around a callback-based event system. An application may set a callback for any event on any widget. As part of this design, most applications written to use NovaTK will not have a main loop for whichever thread handles thier GUI. Instead NovaTK will take control of the thread until an event occurs for which the application has registered a callback. Although for some application that need control of the thread at all times, it is still possible design an application this way.

Valid CSS! Valid HTML 4.01 Transitional