// EIKTBAR.H
//
// Copyright (c) 1997-1999 Symbian Ltd.  All rights reserved.
//

#if !defined(__EIKTBAR_H__)
#define __EIKTBAR_H__

#if !defined(__EIKCTGRP_H__)
#include <eikctgrp.h>
#endif

#if !defined(__COECOBS_H__)
#include <coecobs.h>
#endif

#if !defined(__COECCNTX_H__)
#include <coeccntx.h>
#endif

class MEikCommandObserver;
class TEikButtonCoordinator;

class CEikToolBar : public CEikControlGroup, public MCoeControlObserver
	{
public:
	IMPORT_C ~CEikToolBar();
	IMPORT_C CEikToolBar();
	IMPORT_C void ConstructL(MEikCommandObserver* aCommandObserver,TInt aResourceId,const TRect& aBoundingRect);
	IMPORT_C void StaticConstructL(MEikCommandObserver* aCommandObserver,TInt aResourceId);
	IMPORT_C void SetBoundingRectL(const TRect& aRect);
	IMPORT_C void ReduceRect(TRect& aBoundingRect) const;
	IMPORT_C void SetCommandObserver(MEikCommandObserver* aCommandObserver);
	IMPORT_C void CoordinateButtons(TInt aId,TInt aCount,TEikButtonCoordinator* aCoordinator);
	IMPORT_C void SetButtonStateOn(TInt aId,TBool aState);
	IMPORT_C TBool DelayActivation() const;
public: // from CCoeControl
	IMPORT_C void ConstructFromResourceL(TResourceReader& aReader);
	IMPORT_C void SetDimmed(TBool aDimmed);
public: // from CEikControlGroup
	IMPORT_C void AddControlL(CCoeControl* aControl,TInt aId);
	IMPORT_C void AddControlL(TEikGroupControl& aGroupControl);
private: // from MCoeControlObserver
	IMPORT_C void HandleControlEventL(CCoeControl* aControl,TCoeEvent aEvent);
private:
	void BaseConstructL();
private:
	TInt iToolBarFlags;
	MEikCommandObserver* iCommandObserver;
	MCoeControlBrushContext iBrushContext;
	};

#endif
