Click here to Skip to main content
15,894,180 members
Articles / Web Development / HTML

Printing Framework

Rate me:
Please Sign up or sign in to vote.
3.77/5 (10 votes)
22 Nov 20032 min read 65.1K   3.3K   28  
Simple framework for text and graphic Printing/Previewing
/*! 
 *********************************************************************
 * \file       : TextList.h
 *
 *  \b Package : dll Printer
 *
 *  \b Author  : T. Montembault                            
 *
 *	\b Date		: 03/04/02
 *
 *  \b Objet   : Une table
 *
 *********************************************************************
 * \par Version History:
 *
 *		@li  V 0.10  03.04.02 Cr�ation 
 *
 *********************************************************************
 *
 */

#ifndef AFX_TEXTLIST_H__74FFBB29_F973_472C_B99A_1FD95B676A3C__INCLUDED_
#define AFX_TEXTLIST_H__74FFBB29_F973_472C_B99A_1FD95B676A3C__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "TextTable.h"

namespace printer {

//! Impression d'un CListCtrl en mode texte.
/*! La classe permet de placer dans le document un objet qui va repr�senter
	une liste graphique. On obtient :
		- Un saut de ligne
		- Les titres des colonnes en gras
		- Un saut de ligne
		- Les donn�es de la liste. Chaque �l�ment est repr�sent� comme un
		CFormatString, ce qui lui permet d'utiliser (si n�cessaire) plusieurs 
		lignes sur le contexte d'impression. Lorsque cela se produit, les autres
		colonnes se formatent � l'identique pour �viter un d�calage des
		lignes.
				
	La classe s'appuie sur un CTextTable. Le constructeur se charge de
	l'initialiser et les autres m�thodes lui d�l�guent le travail. Pour
	plus d'information voir CTextTable.
*/
class CTextList : public CInterfaceElement  
{
public:

	/*! \par Objet :
		Le constructeur
		\param pList : Un pointeur (valide!) sur le control MFC. 
		\param nPercent : Un entier qui permet d'ajuster la taille de la 
		colonne au nombre de caract�res affich�s sur une ligne. 

		Le constructeur construit le CTextTable.
	*/
	CTextList(CListCtrl* pList, int nPercent);

	/*! \par Objet :
		Le destructeur.
	*/
	virtual ~CTextList();


//@{
/*! \name Interface
//
//		Les m�thodes suivantes constituent l'interface des �l�ments de texte.
//*/

	/*! \par Objet :
		Initialisation de l'�l�ment en fonction du contexte
		D�l�gue le travail au CTextTable
		\param pDC : Un pointeur sur le ontexte
		\param pData : Un pointeur sur la structure de param�trage de l'impression
	*/
	virtual void Initialize(CDC* pDC, SDataPrint* pData);

	/*! \par Objet :
		Accesseur. D�l�gue le travail au CTextTable
		\return Le nombre de lignes occup�es par l'�l�ment.
	*/
	virtual int GetNbLignes();

	/*! \par Objet :
		Affichage d'une ligne particuli�re de l'�l�ment.
		D�l�gue le travail au CTextTable
		\param nSubElt : Le num�ro du sous-�l�ment � afficher 
		\param nLine : Le num�ro de la ligne  de sortie sur le  contexte
		\param pDC : Un pointeur sur le contexte.
		\param pData : Un pointeur sur la structure de param�trage de l'impression
	*/
	virtual void Output(int nSubElt, int nLine, CDC* pDC, SDataPrint* pData);
//@}

private:
	CTextTable* m_pTable; /*!< La table utilis�e */
	CListCtrl*  m_pList;	/*!< Le pointeur sur le contr�le list */
};


}

#endif // !defined(AFX_TEXTLIST_H__74FFBB29_F973_472C_B99A_1FD95B676A3C__INCLUDED_)

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.


Written By
United States United States
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions