Available C++ Libraries FAQ
Tools for C++ Programmers
VCF - Visual Component FrameworkA C++ framework that was created to provide a simple to use cross platform GUI framework, with many of the advanced design features of Java and Java's Swing, and Borland's Visual Component Library. In addition, the VCF provides advanced RTTI/Introspection features common in languages like Object Pascal, Objective C, Smalltalk, and Java, but not typically found in C++. The framework is divided into three main sections: FoundationKit, ApplicationKit, and GraphicsKit, in addition there are now two additional kits, the Network kit and the Remote Object Kit.
The FoundationKit provides all of the base classes for the rest of the Framework, as well as support for RTTI/Introspection, events, event listeners, properties, and basic streaming capabilities. The VCF makes use of C++'s Standard Template Library for it's collection classes, and has a number of template based classes to support the Frameworks RTTI/Introspection design. The VCF also makes use of C++ exception handling, multiple inheritance, and C++ namespaces, so compiler's that don't support these features may have problems getting the FoundationKit (and any of the other kits) to compile. The GraphicsKit provides a core set of easy to use 2D graphics classes, modeled heavily after the design of Java's Graphics2D architecture. This include support for 32bit color images, alpha channels, anti-aliased graphics primitives, basic matrix transforms, filters, image loaders, kernels, and easy to extend path classes. Image manipulation is allowed at the bit level for those who like to bit-twiddle, but higher level functions are/will be provided.
The ApplicationKit provides the classes used in the GUI portion of the Framework. This includes basics like windows, components, standard widgets (combo boxes, listboxes, trees, etc ), common dialogs, a basic layout manager, drag-and-drop, and standard windowing events. A simplified use of Model-View-Control design has been applied (sometimes referred to as UI delegate, where the Controller and View are combined ), similar to the way Java's Swing was designed. In addition it will also provide core services to extend the component framework with custom 3rd party libraries (DLL's or SO's) housing components that can be plugged into a the VCFBuilder tool, similar to Java Beans, or Borland's C++ Builder packages. The VCFBuilder is a simplified version of the C++ Builder IDE, something that can allow developer's to design their GUI's in real time, with out having to waste time writing code, and extend their set of components through 3rd party libraries.
Added : 2002-07-24 Amended: 2002-07-24 Licensing : Open Source
Copyright (c) 2019 Nikki Locke, Trumphurst Ltd.
Permission is granted to distribute over the Internet without charge. The author's permission is required (and usually given) to distribute in any other way, including on CD.