// Author: Juan Carlos De Abreu (jcabreur@gmail.com)
//
// This file define a class inherent from Control that allow put a button in a
// window.

#ifndef GUI_BUTTON_H__
#define GUI_BUTTON_H__

#include "../util/string.h"

#include "../global.h"
#include "control.h"

BEGIN_TEG_NAMESPACE();
BEGIN_NAMESPACE(gui);

class Button : public Control {
 public:
  // Button constructor and destructor.
  Button(int x, int y, int width, int height, const std::tstring& caption);
  ~Button();

  // Method to display the button.
  virtual void Render() const;

 private:
  // Button attributes, button text.
  std::tstring caption_;
};

END_NAMESPACE(gui);
END_TEG_NAMESPACE();

#endif  // GUI_BUTTON_H__
