summaryrefslogtreecommitdiff
path: root/commands.h
blob: 95403def8661c08663c19e777784396532864c61 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
/*
 * Image plugin to VDR (C++)
 *
 * (c) 2004-2011 Andreas Brachold <vdr07 at deltab.de>
 *
 * This code is distributed under the terms and conditions of the
 * GNU GENERAL PUBLIC LICENSE. See the file COPYING for details.
 *
 */

// --- cImageCommands ---------------------------------------------------------

#ifndef __COMMANDS_H
#define __COMMANDS_H

#include <vdr/tools.h>

class cImageCommand
: public cListObject 
{
  char *m_szTitle;
  char *m_szCommand;
  bool m_bConfirm;
  static char *m_szLastResult;
public:
  cImageCommand(void);
  virtual ~ cImageCommand();

  bool Parse(const char *s);

  const char *Title(void) const  { return m_szTitle;  } 
  bool Confirm(void) const       { return m_bConfirm; }
  const char *Command(void) const{ return m_szCommand;}

  const char *Execute(const char *szFileName = NULL);
};

class cImageCommands
: public cList < cImageCommand > 
{
  char *m_szFileName;
  bool m_bAllowComments;
protected:
  void Clear(void);
public:
  cImageCommands(void);
  virtual ~ cImageCommands();

  const char *FileName(void) const { return m_szFileName; }
  bool Load(const char *szFileName = NULL, bool bAllowComments = true, bool bMustExist = false);
};

#endif				//__COMMANDS_H