Click here to Skip to main content
15,895,746 members
Articles / Desktop Programming / MFC

Brainchild, A syntax coloring edit control

Rate me:
Please Sign up or sign in to vote.
4.85/5 (64 votes)
16 Jun 2005CPOL5 min read 710.8K   26.8K   263  
Syntax coloring, multi-level undo/redo editor control.
//
//	brainchildgetmsg.h
//
//	(C) Copyright 2004 by Jan van den Baard.
//	    All Rights Reserved.
//
#pragma once

// CBrainchildDispatch
//
// This class is a simple message dispatcher to route the stock
// events from the brainchild control to the parent control which
// is the OCX that needs to fire these stock events.
class CBrainchildDispatch : public CWnd
{
	DECLARE_DYNAMIC( CBrainchildDispatch )

public:
	CBrainchildDispatch();
	virtual ~CBrainchildDispatch();

	// When this is false the stock events will
	// not be routed and therefore not be fired
	// by the parent OCX.
	bool& FireStockEvents() { return m_bFireStockEvents; }

protected:
	DECLARE_MESSAGE_MAP()
public:
	// The stock events to be routed.
	afx_msg void OnMouseMove( UINT nFlags, CPoint point );
	afx_msg void OnKeyDown( UINT nChar, UINT nRepCnt, UINT nFlags );
	afx_msg void OnKeyUp( UINT nChar, UINT nRepCnt, UINT nFlags );
	afx_msg void OnChar( UINT nChar, UINT nRepCnt, UINT nFlags );
	afx_msg void OnLButtonDown( UINT nFlags, CPoint point );
	afx_msg void OnMButtonDown( UINT nFlags, CPoint point );
	afx_msg void OnRButtonDown( UINT nFlags, CPoint point );
	afx_msg void OnLButtonUp( UINT nFlags, CPoint point );
	afx_msg void OnMButtonUp( UINT nFlags, CPoint point );
	afx_msg void OnRButtonUp( UINT nFlags, CPoint point );

protected:
	// Data.
	bool m_bFireStockEvents;
};

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
Software Developer (Senior)
Netherlands Netherlands
I have been programming for a hobby since 1985. I have started programming on the C= 64. After that I migrated to the C= Amiga which I traded in for a PC back in 1997 I believe. Back in 2000 I decided to lose a hobby and start developing software for a living.

Currently I am working mainly in developing software for building security and access control systems.

Comments and Discussions