Click here to Skip to main content
15,885,366 members
Articles / Desktop Programming / MFC

Progress Cell for Grid Control.

Rate me:
Please Sign up or sign in to vote.
4.17/5 (16 votes)
10 May 20042 min read 65.1K   3K   41  
A new cell progress-bar-like type for Chris Maunder's Grid Control.
// GridCellProgress.h: interface for the CGridCellProgress class.
// Written by Iain Clarke  (iain@imcsoft.co.uk / imcclarke@yahoo.com)
//
//////////////////////////////////////////////////////////////////////

#pragma once

#include "GridCell.h"


class CGridCellProgress : public CGridCell  
{
    DECLARE_DYNCREATE(CGridCellProgress)

public:
	CGridCellProgress ();

    virtual BOOL Edit(int nRow, int nCol, CRect rect, CPoint point, UINT nID, UINT nChar)
	{
		return FALSE; // We don't want to edit this! It's for information after all...
	}

    virtual BOOL Draw(CDC* pDC, int nRow, int nCol, CRect rect, BOOL bEraseBkgnd = TRUE);


	virtual	BOOL	EnablePercentage (BOOL bEnable);
	virtual	BOOL	EnablePathCompaction (BOOL bEnable);

	virtual	void	SetRange(int nLower, int nUpper);
	virtual	void	SetLower(int nLower);
	virtual	void	SetUpper(int nUpper);
	virtual	void	SetPos	(int nPos);
	virtual void	SetColor(COLORREF clr);

	virtual	void	GetRange(int &nLower, int &nUpper) {  nLower = m_nLower; nUpper = m_nUpper; }
	virtual	int		GetLower()	{ return m_nLower; }
	virtual	int		GetUpper()	{ return m_nUpper; }
	virtual	int		GetPos	()	{ return m_nPos; }
	virtual COLORREF GetColor()	{ return m_clrBar; }

protected:
	BOOL	m_bPercentage, m_bCompactPath;
	int		m_nPos, m_nLower, m_nUpper;
	COLORREF m_clrBar;
};

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 has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Software Developer (Senior)
Sweden Sweden
I have now moved to Sweden for love, and recently married a lovely Swede.


-----------------
I started programming on BBC micros (6502) when I was six and never quite stopped even while I was supposed to be studying physics and uni.

I've been working for ~13 years writing software for machine control and data analysis. I now work on financial transaction transformation software, for a Software company in Gamlastan, Stockholm.
Look at my articles to see my excellent coding skills. I'm modest too!

Comments and Discussions