/*
 * This file is part of DesktopBSD, see the README file.
 *
 * Author: Peter Hofer <ph@desktopbsd.net>
 *         (C) 2004, 2005
 *
 * Copyright: BSD, see the COPYING file included in this distribution
 *
 */

#ifndef __TERMINALFORMATTER_H
#define __TERMINALFORMATTER_H

#include <qobject.h>

class QColor;
class TerminalDisplay;

/** Formatter class for TerminalDisplay classes.
  *
  */
class TerminalFormatter : public QObject {
	Q_OBJECT

public:
	TerminalFormatter(TerminalDisplay *, const char *name = 0);
	virtual ~TerminalFormatter();

	/** Reimplement in inherited classes.
	  *
	  * Takes a line as argument and returns the color
	  * that should be used to format it.
	  */
	virtual QColor format(const QString &) = 0;
};

#endif /* __TERMINALFORMATTER_H */
