Anthemion Software Code Attic

MFC Undo framework | MFC DDE classes | MFC CImage class | MFC CTimer class | MFC CExpr class | MFC CEnhStatusBar class | MFC CSpeech class | wxTTS classes MFC CTaskBarIcon class | MFC CRegistry class | Tex2RTF documentation tool

A collection of free C++ source code, written by myself except where otherwise stated. This is old stuff, much of it dating back to when I was still using MFC.

   Undo framework

Screenshot of sample menu A little framework for implementing Undo/Redo in MFC applications. It consists of two classes, CCommand and CCommandProcessor. The supplied example is a doodling program with two undoable/redoable actions: Add segment, and Cut segment. Download (92,594 bytes).

   DDE classes

MFC classes for doing DDE: CDDEServer, CDDEClient and CDDEConnection.

Download (54,187 bytes).

   CImage 1.4

Screenshot of CImage demo An MFC class for manipulating images: JPEG/BMP/PNG saving and loading, GIF loading, and iteration over the image data.

This is a conversion to MFC from code collated and developed by Alejandro Aguilar-Sierra.

N.B. There are some bugs when saving/loading some file formats, and it's unlikely I'll be able to answer detailed technical questions.

Download (745,651 bytes).


A timer class for MFC, which unaccountably omits one.

Download (14,343 bytes).


Classes for reading and writing structured ASCII files.

Do you ever get a little frustrated with maintaining binary file formats? Things like not being able to edit your data files in a text editor, or the trouble it takes to maintain changes in your file formats. This class makes prototyping file formats a lot easier and more maintainable than using MFC serialisation, allowing you to save a file of 'objects' with named attribute/value pairs. If you need to add or remove attributes in the next version of your application, old files are still easily readable without loads of if statements.

The Book is a nice address book application that uses CExpr to store its data files.

Download (139,866 bytes)



Screenshot of enhanced status bar
An enhanced status bar class for MFC. Adds scrollable status messages, pane tooltips and a progress control.

Download (89,782 bytes)

   CSpeech 1.0

A class wrapper for the Microsoft SAPI text-to-speech API. This works with both the MFC and wxWidgets 1.xx frameworks, and comes with a small WinHelp class reference.

There is a sporadic crash-on-exit bug - COM programmers, please help me debug this!

CSpeech may be redundant now that SAPI comes with C++ classes.

Download (80,914 bytes)

   wxTTS 2.0

An attempt to unite an English phoneme generator (FreePhone) with a speech synthesizer (Mbrola) on Windows, and wrap them in easy-to-use C++ classes. More work needs to be done on this so please do join in and help make free, high-quality text-to-speech on Windows a reality! Class reference and discussion included.

See also my Speech Page, a start at collecting relevant thoughts and links.

Download (773,957 bytes)

   CTaskBarIcon 1.1

A class to manage icons in the system tray, on the task bar. Works with both MFC and straight Windows.

Download (33,795 bytes)

   CRegistry 1.0

A class to read from and write to the Windows registry.

Download (20,256 bytes)


wxNL is an experimental chart parser for a very small (but configurable) subset of English. It's based on code supplied by David Perelman-Hall, the author of a BYTE article on the subject. It compiles with native Windows or wxWidgets. It's not especially efficient, but is a step in the right direction, and it could be used in an application without much modification. One day I'd like to see it as part of a toolkit for building alternatives (or additions) to GUI interfaces.

Download from here.


Tex2RTF screenshot Tex2RTF can help you document your C++ libraries or applications. It translates from a subset of LaTeX to WinHelp RTF, word processor RTF, HTML, MS HTML Help, wxWidgets HTML Help. The WinHelp documentation for the MFCCMD library above was generated by Tex2RTF.

See the Tex2RTF Home Page.

Back to Anthemion Software's home