Wednesday, October 17, 2007



What is it?
The Ultimate++ project was begun in 1998 by its authors and current maintainers Mirek Fidler and Tomáš Rylek from the Czech Republic as a result of several major dissatisfactions with:
The first Ultimate++ classes were in part a supplement to MS MFC for Oracle GUI applications and in part a replacement for STL containers called NTL; successive development has created a layered structure of more genaral libraries, with significant rewriting over the years.
The official web site defines Ultimate++ a "cross-platform rapid application development suite focused on programmers productivity"; Ultimate++ authors seem to value simple and terse application code over flexibility, as demonstrated by the proud comparisons with other GUI toolkits.

Oracle Forms;
MFC;
C++ STL library containers (see a design rationale document);
value transfer semantics in C++ (see another design rationale document); Container and foundation libraries

GUI toolkit and RAD tool
(macro GUI_APP_MAIN hides platform specific differences).

Minimal U++ GUI "Hello world" application:
More complex example:
Use of members instead of pointers:
Dialogue templates are C++ templates: U++ GUI code examples
Programs created with Ultimate++ can be compiled and run on various operating systems:

Microsoft Windows: Mature (the original platform)
Linux, FreeBSD: Stable, less mature
Windows CE: Still experimental
Mac OS: incomplete Cross Platform
U++ widgets are emulated; Chameleon is the painting (skinning) mechanism which allows adjustment of a widget's look (skin). Chameleon can also detect and emulate the operating system or platform's look and feel (or "theme").

Ultimate++ Structure and features of Ultimate++ TheIDE

U++ Overview
U++ GUI Tutorial
NTL tutorial
U++ List of Packages
Standard widgets

No comments: