The Visual Component Framework is an advanced C++ application framework that makes it easy to produce powerful Windows applications in C++. The framework is a based on a thoroughly modern C++ design and has built in support for Rapid Application Development (RAD). The framework is designed to be portable over multiple platforms and compilers, so you don't have to lose all that work that went into writing your app for a single platform!

"You know how when someone sees something very good they exclaim 'WOW!'? Then when they see something that is truly inspiring, they say it in a very low, respectful tone? Looking at the quality and breadth of what you have here definitely puts me in the latter category."

Tom Archer - Microsoft Program Manager

If this is your first time here try reading, in more detail, about the features of the VCF by clicking here.

Further information about the VCF can be found in the documentation sections which include in-depth discussions of how to use the framework, as well as the source code generated documentation.

Would you like to help support future development of the VCF? Funding helps buy software and hardware crucial to developing a large scale framework like the VCF. For more information on what can be donated and why - click here.

A new year, a new example, and various other bits of progress

News and Announcements

Well it's been a while, but have no fears, progress on the upcoming Fish Taco release is moving forward, albeit slower than I would like.

The latest example was kind of cool, and I wanted to post about it. It is based on a little article by Ryan Paul at Ars Technica: U CAN HAS LOLcats on Linux with Ruby and GTK. This inspired me to write the equivalent using the VCF:

Big changes in pipeline for upcoming "FishTaco" release

News and Announcements

There are some big changes in store for the upcoming release. One of these is a complete revamp of the current delegate implementation in the framework. The new implementation allows for arbitrary function signatures, and for asynchronous invocation. This is the same kind of functionality found in .NET's Delegate.BeginInvoke/Delegate.EndInvoke functions.

Next VCF release code name revealed...

News and Announcements

DATELINE MAY 22, 2007

May 22, 2007 (The Internet) - While the project is keeping quiet, an unnamed source has confirmed that the next release of the VCF, tentatively due sometime in June or July, is named "FishTaco".

Major IT News: Jameson leaves Microsoft for the VCF Project

News and Announcements

DATELINE MAY 9, 2007

May 9, 2007 (The Internet) - In a stunning coup de grace the VCF Project has managed to lure Microsoft press spokeswoman Jenna Jameson away from the software giant.

SVN issues

News and Announcements

If you're having any issues with committing code via SVN, specifically getting 403 errors you may want to read on.

It appears that SF made some changes a while ago to the SVN repos, and it may affect some people. Quoting:

On November 31, 2006 the access method for Subversion changed. This
document reflects those changes. The old method had numerous problems,
including spurious 50x error messages and other issues that kept it from
functioning fully. This newly documented access method solves many, if not
all of the issues with the old mechanism.

Users of the old method (https://svn.sourceforge.net/svnroot/PROJECTNAME)
should switch to the new access method
(https://PROJECTNAME.svn.sourceforge.net/svnroot/PROJECTNAME) using these
steps:

   1. Make a copy of your local working copy.
   2. Run 'svn info' at the root of the repository content, it should
display a line that appears similar to: URL:
https://svn.sourceforge.net/svnroot/PROJECTNAME/trunk
   3. Run the following command at the root of the working copy: svn
switch --relocate https://svn.sourceforge.net/svnroot/PROJECTNAME/trunk
https://PROJECTNAME.svn.sourceforge.net/svnroot/PROJECTNAME/trunk
So for us, this would be :
svn
switch --relocate https://svn.sourceforge.net/svnroot/vcf/trunk
https://vcf.svn.sourceforge.net/svnroot/vcf/trunk
Cheers!