/*
    ParaGUI - crossplatform widgetset
    Copyright (C) 2000,2001  Alexander Pipelka

    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Library General Public
    License as published by the Free Software Foundation; either
    version 2 of the License, or (at your option) any later version.

    This library is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    Library General Public License for more details.

    You should have received a copy of the GNU Library General Public
    License along with this library; if not, write to the Free
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

    Alexander Pipelka
    pipelka@teleweb.at

    Last Update:      $Author: pipelka $
    Update Date:      $Date: 2001/04/24 16:51:08 $
    Source File:      $Source: /usr/local/CVSROOT/linux/paragui/include/Attic/pgcolumnitem.h,v $
    CVS/RCS Revision: $Revision: 1.1.2.1 $
    Status:           $State: Exp $
*/

#ifndef PG_COLUMNITEM_H
#define PG_COLUMNITEM_H

#ifdef SWIG
%include "swigcommon.h"
%module pgcolumnitem
%{
#include "pgcolumnitem.h"
%}
#endif

#include "pglistboxitem.h"
#include <vector>
#include <string>

/**
	@author Alexander Pipelka
	
	@short ListBoxItem with multiply columns

	This is a multi-column item that can be inserted into the PG_ListBox
*/

class DECLSPEC PG_ColumnItem : public PG_ListBoxItem {
public:

	/** */
	PG_ColumnItem(int columns, int height, void* userdata = NULL);

	/** */
	~PG_ColumnItem();

	/** */
	void SetColumnWidth(int column, int width);

	/** */
	int GetColumnWidth(int column);

	/** */
	void SetColumnText(int column, char* text);
	
	/** */
	const char* GetColumnText(int column);

	int GetColumnCount();

protected:

	/** */
	void eventBlit(SDL_Surface* srf, const PG_Rect& src, const PG_Rect& dst);

private:

	int my_columncount;

#ifndef SWIG
	std::vector <int> my_columnwidth;
	std::vector <std::string> my_columntext;
#endif
};

#endif		// PG_COLUMNITEM_H
