Click here to Skip to main content
15,891,253 members
Articles / Desktop Programming / ATL

CM_ConfigBuilder 1.2g: Visual Studio 6/Visual Studio 2005/Visual Studio 2008 Code Generator for Application Settings Graphic Management

Rate me:
Please Sign up or sign in to vote.
4.94/5 (126 votes)
12 Feb 2008CPOL17 min read 697.4K   9.8K   262  
CM_ConfigBuilder generates and compiles the required files to manage your application's settings/preferences and to store/retrieve them in XML format.
// Vc7ClassDialogGenerator.h
//
#if !defined(_CVC7CLASSDIALOGGENERATOR_H_)
#define _CVC7CLASSDIALOGGENERATOR_H_

#include "Vc7BaseGenerator.h"
#include <string>

using namespace std;

class CXMLStorageElement;
class CProjectSettings;
class CXmlBaseFormItem;

class CVc7ClassDialogGenerator: public CVc7BaseGenerator
{
public:
	CVc7ClassDialogGenerator();
	virtual ~CVc7ClassDialogGenerator();

	virtual void Generate();

protected:
	// header file generators
	//
	void Head_generateHeader();
	void Head_generateIfDefBegin();
	void Head_generateIncludeSection();
	void Head_generateDefineSection();
	void Head_generateForwardDeclarations();
	void Head_generateClassBegin();
	void Head_generateConstructor();
	void Head_generateDestructor();
	void Head_generatePublicMethods();
	void Head_generateDialogData();
	void Head_generateOverrides();
	void Head_generateMessageMap();
	void Head_generateProtectedMembers();
	void Head_generateDataMembers();
	void Head_generateClassEnd();
	void Head_generateIfDefEnd();

	// implementation file generators
	//
	void Impl_generateHeader();
	void Impl_generateIncludeSection();
	void Impl_generateDebugSymbols();
	void Impl_generateMainTitle();
	void Impl_generateConstructor();
	void Impl_generateDestructor();
	void Impl_generatePublicMethods();
	void Impl_generateProtectedMembers();
	void Impl_generateMessageMap();
	void Impl_generateOnInitDialog();

	string implCode_;
	string headCode_;
};

#endif //!defined(_CVC7CLASSDIALOGGENERATOR_H_)

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Web Developer
Italy Italy
For all Stefano's latest code, binaries and tutorials visit www.codemachines.com

Comments and Discussions