/************************************************************************/
/* Copyright 1998 MBARI							*/
/************************************************************************/
#ifndef _LABELEDBARGUAGE_H
#define _LABELEDBARGUAGE_H
static char LabeledBarGuage_h_id[] = "$Header: /u/oreilly/rov/tmacs/RCS/LabeledBarGuage.h,v 1.3 1998/12/18 21:07:21 oreilly Exp $";

/*
$Log: LabeledBarGuage.h,v $
Revision 1.3  1998/12/18 21:07:21  oreilly
Added documentation

Revision 1.2  1997/03/20 12:34:05  oreilly
*** empty log message ***

 * Revision 1.1  96/10/28  09:13:44  09:13:44  oreilly (Thomas C. O'Reilly)
 * Initial revision
 * 
*/


#include "BarGuage.h"

/*
CLASS 
LabeledBarGuage

DESCRIPTION
Display a value on a bar guage, and on a text label as well

AUTHOR
Tom O'Reilly
*/
class LabeledBarGuage : public VkComponent
{
  public:
  LabeledBarGuage(const char *name, Widget parent, 
		  float minValue, float maxValue, Side labelSide,
		  Boolean addTickMarks = False, 
		  Side tickSide = Left, 
		  const char *valueFormat = NULL); // Must be floating point 
		                                   // format

  ~LabeledBarGuage()
  {
  }
  
  virtual const char *className()
  {
    return "LabeledBarGuage";
  }
  
  int set(float value)
  {
    return _guage->set(value);
  }
  
  void setBarWidth(int width)
  {
    _guage->setBarWidth(width);
  }
  
  void setBarHeight(int height)
  {
    _guage->setBarHeight(height);
  }
  
  void setOrientation(unsigned char orientation)
  {
    _guage->setOrientation(orientation);
  }
  
  void setColors(Pixel barColor, Pixel background)
  {
    _guage->setColors(barColor, background);
  }
  
  VkTickMarks *tickMarks()
  {
    return _guage->tickMarks;
  }
  

  protected:
  BarGuage *_guage;
};


#endif
