/*
 * statusandquestion: A plugin for the Video Disk Recorder
 *
 * See the README file for copyright information and how to reach the author.
 *
 * $Id: statusandquestion.h 0.1 2004/07/11 14:12:20 hflor Exp $
 */

#ifndef __STATUSQUESTION_H
#define __STATUSQUESTION_H

#include <vdr/config.h>

#if VDRVERSNUM >= 10307
#define ERROR(T) Skins.Message(mtError, T)
#define INFO(I)  Skins.Message(mtInfo, I)
#else
#define ERROR(T) Interface->Error(T)
#define INFO(I)  Interface->Info(I)
#endif

// Global variables that control the overall behaviour:

struct tParamInt {
  bool c;               // read command line
  bool r;               // read config file
  bool h;               // hide in setup menu
  int d;                // default
  int u;                // used
  int s;                // config file
  int o;                // old value for setup menu
  };

struct tParamFile {
  bool c;               // read command line
  bool r;               // read config file
  bool h;               // hide in setup menu
  char d[MaxFileName];  // default
  char u[MaxFileName];  // used
  char s[MaxFileName];  // config file
  char o[MaxFileName];  // old value for setup menu
  };

// var pos1
extern tParamInt  commandline_preference;
extern tParamInt  delete_b_e;
extern tParamFile mainmenu_name;
extern tParamInt  mainmenu_visible;
extern tParamInt  message_in_queue;
extern tParamInt  num_entrys;
extern tParamInt  response_in_queue;
extern tParamInt  sortdirection;
extern tParamInt  verbose;

extern char       plugin_name[MaxFileName];
extern int        timeout;
extern const char *menu[5];
extern int        nextid;
extern int        dispid;
extern const char *DeleteLine[];

enum eControlState {
  ControlState_Normal = 0,
  ControlState_MenuSelect,
  ControlState_WaitShow,
  ControlState_Wait1,
  ControlState_Wait2,
  ControlState_Loop,
  ControlState_DisplayMessages };

extern int        controlstate;

#endif //__STATUSQUESTION_H
