/*****************************************************************************
 *
 * File     : TabButton.js
 * 
 * Project  : WMS Viewer Client
 * 
 * Contents : This class implements a plain toolbar button behaviour. 
 * 
 * Author: Milan Trninic
 *
 * Copyright 1999-2005 Galdos Systems, Inc.
 * All rights reserved.
 * 
 ***|***************************|***********************|*******************|*/

/************************************************************************
*
*	Global declarations
*
*	
*
*************************************************************************/

/************************************************************************
*
*	function:	TabButton
*
*	purpose:	Constructor
*
*************************************************************************/
function TabButton(uiElement, toolbar)
{
	// superclass
	this._superClass = AbstractButton;
	this._superClass(uiElement, toolbar);

	// method assignments
	this.init = TabButton.init;
	this.onClicked = TabButton.onClicked;
	this.setSelected = TabButton.setSelected;

	// instance field declarations
	
	// initialization
	this.init(uiElement, toolbar);
}

/************************************************************************
*
*	function:	init
*
*	purpose:	initializes 
*
*************************************************************************/
function TabButton.init(uiElement, toolbar)
{
	this.setNormalClassName("tabButton");
	this.setDisabledClassName("tabButton");
	this.setSelectedClassName("tabButton");
	this.setSelectedDisabledClassName("tabButton");
	this.setInflatedClassName("tabButton");
	this.setEngagedClassName("tabButton");
	this.setOnHoldClassName("tabButton");
	this.setClassName("tabButton");
}

/************************************************************************
*
*	function:	onClicked
*
*	purpose:	
*
*************************************************************************/
function TabButton.onClicked()
{
	if (this._selected == false) this.setSelected(true);
}

/************************************************************************
*
*	function:	setSelected
*
*	purpose:	
*
*************************************************************************/
function TabButton.setSelected(selected)
{
	if (this._selected == selected) return;
	if (selected) this._toolbar.toggleButtonSelected(this);

	// For explanation of the purpose of the temp variable, see the documentation
	this.temp = this._superClass.setSelected;
	this.temp(selected);
}


