mirror of
https://github.com/vdr-projects/vdr.git
synced 2025-03-01 10:50:46 +00:00
- NOTE: If you are using DVB driver version 0.7 you need to load the dvb.o
module with option outstream=0, so your insmod statement should read
'insmod dvb.o outstream=0'. This is currently necessary because 'vdr'
still works with AV_PES data.
- Video files now have the 'group read' bit set.
- Fixed handling errors in 'readstring()'.
- Handling SIGPIPE and re-establishing handler after intercepting a signal.
- The configuration files are now by default read from the video directory.
This can be changed by using the new '-c' option. Make sure you copy your
current '*.conf' files to your video directory ('/video' by default), or
use "-c ." to get the old behaviour of loading the configuration files
from the current directory.
- Waiting for input is now handled by a common function, which improves
response time on user actions. As a consequence the EIT data may sometimes
not be displayed, but this will change later when cEIT runs as a separate
thread.
- The new SVDRP command 'HITK' (thanks to Guido Fiala!) can be used to 'hit'
a remote control key. Establish an SVDRP connection and enter HITK without
a parameter for a list of all valid key names.
- The new SVDRP command 'GRAB' (thanks to Guido Fiala!) can be used to grab
the current frame and save it to a file.
- The new SVDRP commands 'OVL*' can be used to control video overlays (thanks
to Guido Fiala!). This is mainly for use in the 'kvdr' tool (see the 'kvdr'
page at http://www.s.netic.de/gfiala).
- If the name of the video directory used with the '-v' option had trailing
slashes, the recording file names have been damaged. Trailing slashes are
now silently removed.
- Fixed a buffer overflow in EIT parsing.
- Added a security warning regarding SVDRP to the INSTALL file.
- Fixed 'confirm' dialog.
- The daemon mode (option '-d') now no longer works with REMOTE=KBD (there
is no stdin in daemon mode, so KBD makes no sense - plus it sometimes
crashed).
57 lines
1.7 KiB
C++
57 lines
1.7 KiB
C++
/*
|
|
* interface.h: Abstract user interface layer
|
|
*
|
|
* See the main source file 'vdr.c' for copyright information and
|
|
* how to reach the author.
|
|
*
|
|
* $Id: interface.h 1.13 2000/09/18 22:29:31 kls Exp $
|
|
*/
|
|
|
|
#ifndef __INTERFACE_H
|
|
#define __INTERFACE_H
|
|
|
|
#include "config.h"
|
|
#include "dvbapi.h"
|
|
#include "svdrp.h"
|
|
|
|
class cInterface {
|
|
public:
|
|
enum { MaxCols = 5 };
|
|
private:
|
|
int open;
|
|
int cols[MaxCols];
|
|
eKeys keyFromWait;
|
|
cSVDRP *SVDRP;
|
|
unsigned int GetCh(bool Wait = true);
|
|
void QueryKeys(void);
|
|
void HelpButton(int Index, const char *Text, eDvbColor FgColor, eDvbColor BgColor);
|
|
eKeys Wait(int Seconds = 1, bool KeepChar = false);
|
|
public:
|
|
cInterface(void);
|
|
void Init(int SVDRPport = 0);
|
|
void Cleanup(void);
|
|
void Open(int NumCols = MenuColumns, int NumLines = MenuLines);
|
|
void Close(void);
|
|
eKeys GetKey(bool Wait = true);
|
|
void PutKey(eKeys Key);
|
|
void Clear(void);
|
|
void ClearEol(int x, int y, eDvbColor Color = clrBackground);
|
|
void SetCols(int *c);
|
|
void Write(int x, int y, const char *s, eDvbColor FgColor = clrWhite, eDvbColor BgColor = clrBackground);
|
|
void WriteText(int x, int y, const char *s, eDvbColor FgColor = clrWhite, eDvbColor BgColor = clrBlack);
|
|
void Title(const char *s);
|
|
void Status(const char *s, eDvbColor FgColor = clrBlack, eDvbColor BgColor = clrCyan);
|
|
void Info(const char *s);
|
|
void Error(const char *s);
|
|
bool Confirm(const char *s);
|
|
void Help(const char *Red, const char *Green = NULL, const char *Yellow = NULL, const char *Blue = NULL);
|
|
void LearnKeys(void);
|
|
eKeys DisplayChannel(int Number, const char *Name = NULL, bool WithInfo = false);
|
|
void DisplayRecording(int Index, bool On);
|
|
bool Recording(void);
|
|
};
|
|
|
|
extern cInterface Interface;
|
|
|
|
#endif //__INTERFACE_H
|