Blob Blame Raw
#ifndef FREETYPEVIEW_H
#define FREETYPEVIEW_H

#include "view.h"

class FreeTypeView: public View {
public:
	class Params {
	public:
		std::string family;
		bool bold;
		bool italic;
		Real size;

		bool hinting;
		
		Matrix matrix;
		Color color;

		std::string text;

		Params(): bold(), italic(), size(), hinting() { }
	};
	
	Params params;
	Cairo::RefPtr<Cairo::ImageSurface> surface;
	
	FreeTypeView();
	~FreeTypeView();
	
	bool on_timeout();
	
	void update_surface();
	void on_draw_view(const Cairo::RefPtr<Cairo::Context> &context);
};

#endif