#ifndef SPORTOSD_H
#define SPORTOSD_H

#include <string>

#include <vdr/osd.h>
#include <vdr/menu.h>

// -------------------------- Hauptmenü-------------------------- //
// OSD MENU##################################################
class cSport : public cOsdMenu {
private:
  eOSState Execute(void);
  int GetTab(int Tab);
  int loadUebersicht(const char *file);
  void reloadData();
public:
  cSport(void);
  virtual ~cSport();
  virtual eOSState ProcessKey(eKeys Key);	
};

// -------------------------- cErste Bundesliga Tabelle -------------------------- //
//##############################################
class cErsteBundesligaTabelle : public cOsdMenu {
private:
  std::string text;
  int GetTab(int Tab);
  int loadEBLTabelle(const char *file);
public:
  cErsteBundesligaTabelle(void);
  virtual ~cErsteBundesligaTabelle();
  virtual eOSState ProcessKey(eKeys Key);
};

//#####################################################
// -------------------------- cErste Bundesliga Ergebnisse -------------------------- //

class cErsteBundesliga : public cOsdMenu {
private:
  std::string text;
  int GetTab(int Tab);
  int load1BLE(const char *file);
public:
  cErsteBundesliga(void);
  virtual ~cErsteBundesliga();
  virtual eOSState ProcessKey(eKeys Key);
};

   //#####################################################
// -------------------------- cChampioneLeage Ergebnisse -------------------------- //

class cChampionsLeage : public cOsdMenu {
private:
  std::string text;
  int GetTab(int Tab);
  int loadCLE(const char *file);
public:
  cChampionsLeage(void);
  virtual ~cChampionsLeage();
  virtual eOSState ProcessKey(eKeys Key);
};

        //#####################################################
// -------------------------- cZweiteBundesliga Ergebnisse -------------------------- //

class cZweiteBundesliga : public cOsdMenu {
private:
  std::string text;
  int GetTab(int Tab);
  int loadZBLE(const char *file);
public:
  cZweiteBundesliga(void);
  virtual ~cZweiteBundesliga();
  virtual eOSState ProcessKey(eKeys Key);
};

            //#####################################################
// -------------------------- cDfbPokal Ergebnisse -------------------------- //

class cDfbPokal : public cOsdMenu {
private:
  std::string text;
  int GetTab(int Tab);
  int loadDFBE(const char *file);
public:
  cDfbPokal(void);
  virtual ~cDfbPokal();
  virtual eOSState ProcessKey(eKeys Key);
};

//#####################################################
// --------------------------  cUEFAPokal Ergebnisse -------------------------- //

class cUEFAPokal : public cOsdMenu {
	private:
		std::string text;
			int GetTab(int Tab);
			int loadUEFA(const char *file);
			public:
				cUEFAPokal(void);
				virtual ~cUEFAPokal();
				virtual eOSState ProcessKey(eKeys Key);
			};

#endif // __SportOSD_H
