/***************************************************************************
                          kbeartabview.h  -  description
                             -------------------
    begin                : sön feb 10 2002
    copyright            : (C) 2003 by Björn Sahlström
    email                : kbjorn@users.sourceforge.net
 ***************************************************************************/

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

#ifndef KBEARTABVIEW_H
#define KBEARTABVIEW_H

//////////////////////////////////////////////////////
// Qt specific includes
#include <qwidget.h>
#include <qintdict.h>
//////////////////////////////////////////////////////
// KDE specific includes
#include <kdockwidget.h>
//////////////////////////////////////////////////////
// Application specific includes

/**
  *@author Björn Sahlström
  */

namespace KBear {
	class KBearTabView : public KDockTabGroup  {
	   Q_OBJECT
		Q_PROPERTY( bool m_shouldBeVisible READ shouldBeVisible WRITE youShouldBeVisible ) 
	public: 
		/** No descriptions */
		KBearTabView(QWidget *parent=0, const char *name=0);
		/** No descriptions */
		virtual ~KBearTabView();
		/** No descriptions */
		virtual void addPage( int ID, QWidget* w, const QString& name );
		/** No descriptions */
		virtual void removePage( int ID );
		/** No descriptions */
		void youShouldBeVisible( bool b );
		/** No descriptions */
		bool shouldBeVisible() const { return m_shouldBeVisible; };
	signals:
		void imHiding();
		void imShowing();
	protected: // Protected attributes
		bool m_shouldBeVisible;
		QIntDict<QWidget> m_tabs;
		class KBearTabViewPrivate;
		KBearTabViewPrivate* d;
	};
}
#endif
