After roughly 1.5 years we finally started working on the Client again. The code is now based on Qt 4.3 and can be build on Linux, Unix, MacOSX and Windows from the same codebase without lots of #ifdefs and other crutches.
The basic design is different from the old code: Instead of having one binary that links to cocoa_text the new GUI wraps console applications. This makes the development of the GUI independent of the interpreter/parser and also allows a much easier build
What works:
- The help browser, including searching, bookmarks and history
- starting CoCoA and CoCoAServer, sending commands from the interative session
- sending commands from the editor widgets
What needs work:
- termination of CoCoA 4.X and CoCoAServer on Windows. This is a bug in Qt
- massive amounts of text (1.5 megabytes plus) slows down the edit widgets, solution is to use another edit widget. This work will happen next
- Make the WrapperWidget flexible, use QSettings to get values for different plugins instead of hard coding them for cocoa_text and [Ap]CoCoAServer
- documentation: how to use it, how to build it and so on. This is not very high priority as long as we use the code internally in Dortmund, but that will obviously change in the future
Cheers,
Michael