Rapicorn 13.03.0: (2013-03-24) * Added proper UTF-8 locale initialization and POSIX locale support. * Extended mmap() support to full builtin resource loading subsystem. * AIDA: The IDL compiler and infrastructure got renamed to AIDA. * AIDA: Added support for IDL properties in C++ & Python. * AIDA: Added support for IDL namespaces in Python. * AIDA: Added rudimentary support for Any type in Python. * AIDA: Support fully down_casted type returns in Python. * AIDA: Added enum support to generated Python code. * AIDA: Adapted IDL fundamental types to other projects. * AIDA: Added sfidl features, include paths, enum expressions, streams, etc. * AIDA: Enable self-contained modules via ORB message routing. * AIDA: Merged client and server code for all non-interface types. * Lists: Fixes and new support for clicks, key presses and seleciton modes. * Added generic scroll event support to scroll ports. * Added support for widget actiavetion via Space and Return. * Added INI file support. * Replaced signal system by more efficient C++11 signal system. * Added asynchronous signals, which allow main loop driven signal emissions. * Moved Rapicorn to using its own full fledged X11 backend. * Many, many code cleanups and parallel build fixes. * Added support for g++-4.7 and newer SSE CPU types. * Added support for pseudo objects on widget selectors. * Ported code base to C++11. * Provide C++11 based threading system, including a lock-free ring buffer. * Much improved support for debugging, error and warning messages. * Lots of performance, memory use and layout improvements. * Many bugs, locale and message fixes. * Many documentation updates. Rapicorn 12.08.0: (2012-08-08) * Started publicizing widget interfaces in IDL. * Moved all UI handling into a separate UIThread. * Split client and server code generation from IDL. * Introduced client API smart handles and threading-separation. * Greatly improved IDL code generation, support client API signals. * Added IDL type generator for mmap-able type information. * Highly optimized generated glue code for method calls. * Use 128bit hashes for remote method lookups. * Include IDL files in documentation builds. * Optimized main profiling hot spots. * Rewrote event loop for high performance, allowing ~360k/s remote calls. * Optimized remote API calls by using a lock-free queue (ca. 10% faster). * Ported all rendering over to cairo. * Streamlined the rendering pipeline. * Added snapshots to, use: rapidrun --snapshot * Ported to g++-4.6, C++11 and std::thread. * Fixed container/viewport/window hierarchy. * Unified XML parsing logic with XmlNode API. * Implemented CSS selector matches on widget trees. * Added accurate time handling and benchmarking. * Greatly improved debugging output, added backtraces. * Switched to silent autotool builds. * Improved and cleaned up parallel builds. * Added debugging options, see: $RAPICORN=help * Scripted and streamlined release builds and uploads. * Rewrote X11 based unit tests, use Xephyr if available. * Various bug fixes, code cleanups and dead code removal. * Greatly extended the test suite, added more test automation means. * Documentation & example updates, see: http://dev.testbit.eu/rapicorn/latest/ Rapicorn 10.08.0: (2010-08-20) * Introduced Cairo dependency. * Introduced C++ TR1 dependency (for shared_ptr, etc). * Added $RAPICORN environment variable to control logging and more. * Added PLIC, a pluggable IDL compiler. * Added Remote Object Programming Extension. * Added window and widget addressing functionality. * Allow signal disconnections by Id. * Added simple expression parser to evaluate property value assignments. * Added sample expression evaluator as: ui/tests/sinfextest --shell * Added XML UI file error reporting. * Changed packing properties into regular Item properties. * Merged h/v-scale and -align into Item pack properties. * Replaced hfill/vfill in Table by h/v-scale and -align properties. * Replaced *_attach in table by Item's h/v-position and -span properties. * Got rid of the packer class entirely. * Added testing framework with macros and reference files. * Added '-x' to rapidrun to auto-exit. * Added '--list' to rapidrun to list gadgets from a GUI file. * Provide regular expression parser API in rapicorn-core. * Introduced a basic typed value system and model APIs. * Started list area/widget development. * Optimized resizing performance. * Cosmetic fixups in colors and gradients. * Implemented horizontal and vertical size groups. * Renamed string_to_cescape() and fixed string_to_cquote() quoting. * Generate internal C++ bindings (to IDL specifications). * Provide a main loop implementation in Python. * Generate external Python bindings. * Majorly extended test suite. * Optimized remote invocations and reference counting. * Started migrating interfaces from headers to IDL. * Hand optimized threading primitives and main loop handling. * Applied fixes for AMD64 compilation. [Stefan Westerfeld] * Updates to compile with GCC-4.4. * Linker optimizations to improve ELF relocations. * Loads of other cleanups and bug fixes. Rapicorn 8.4.0: (2008-04-24) * Changed versioning scheme to YEAR.MONTH.REVISION. * License update to GNU LGPL 2.1. * Added a publically installed tool: rapidrun * Support println() and close() commands in GUI files. * Introduce simple Application and Window object APIs. * Merged libbirnet into Rapicorn as librapicorncore. * Implemented expose region merging/comprssion. * Reiimplemented rectangle gradient shader. * Switched to autogenerated ChangeLogs. * Improved feedback on parser errors. * Fixed Gtk+ version checks. * Added PNG saving support. * Removed PERL build dependency. * Rewrote asyncronous main loops. * Many improvements to text editing areas. * Speed up blitting logic for local displays. * Added SIMD optimized rendering functions for MMX CPUs. * Fixed some reference counting issues and child removal. * Improved vertical text ellipsization to line granularity. * Removed error prone default values from property mechanism. * Install tutorial under ${prefix}/doc/rapicornXXXX/tutorial/. * Misc compiler and threading fixes, depend on g++-3.4.6. * Lots of bug fixes, cleanups and improved test coverage. Rapicorn 0.1.2: (2007-01-22) * added Image support for PNG images. * added HSlider, VSlider, Arrow, dot-grid. * added ScrollArea. * added Adjustments. * added command system allowing on-click properties. * added reset logic to recover from stale event situations. * added requisition tuning to allow iterative size allocations. * added event grabbing. * added MainLoop. * added Thread-per-Window paradigm. * added Viewport abstraction of drawing backends. * added color schemes. * added simple function Evaluator for XML properties. * added Markup to labels. * added focus handling for Items. * added TextEditor prototype. * added Region to handle rectangle arrays. * added partial screen updates. * removed libcairo/libpixman dependency. * overhauled Table shrinking logic. * upgraded Birnet library. Known Issues: + instabilities upon main loop exit. + possible build issues with g++ versions other than 3.4. Rapicorn 0.1.1: (2005-07-31) * overhaul of rendering logic. * added Arrangement. * added Point property. * added Controller interfaces for event handling. * added Image item displaying GdkPixbuf pixstreams. * speed ups and many fixes. Rapicorn 0.1.0: (2005-04-19) * added basic class hierarchy, properties. * added Affine transforms. * added RGB Plane and porter-duff combination modes. * added C++ signal system (mostly auto-generated). * added automatic enum introspection for enumdefs.hh. * added XML markup parser. * added XML based Item factory and registry. * added basic Event processing. * added Pango based Label. * added Frame, Ambience, Button. * added Table, Alignment, HBox, VBox. * added Gtk+ based drawing backend. Rapicorn 0.0.1: * Initial project setup.