diff options
author | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2002-06-23 18:00:00 +0200 |
---|---|---|
committer | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2002-06-23 18:00:00 +0200 |
commit | 54d069c95c546d6b12f6effc1af7a0274b7c31e4 (patch) | |
tree | a922ce346d13c6262716376a37885db31729947c /player.c | |
parent | f06d2c27fca449148d9d8fac19d81c668744f170 (diff) | |
download | vdr-patch-lnbsharing-54d069c95c546d6b12f6effc1af7a0274b7c31e4.tar.gz vdr-patch-lnbsharing-54d069c95c546d6b12f6effc1af7a0274b7c31e4.tar.bz2 |
Version 1.1.4vdr-1.1.4
- Added Hungarian language texts (thanks to Istvan Koenigsberger and Guido Josten).
- Activated cutting.
- Activated 'Transfer Mode'.
- Moved handling of the Menu key entirely into vdr.c.
- Switched VDR's own player to the new cPlayer/cControl structures.
- Switched handling 'Transfer Mode' to the new cPlayer/cControl structures.
- The following limitations apply to this version:
+ The '-a' option (for Dolby Digital audio) doesn't work yet.
+ Switching between different language tracks doesn't work yet.
Diffstat (limited to 'player.c')
-rw-r--r-- | player.c | 41 |
1 files changed, 39 insertions, 2 deletions
@@ -4,10 +4,11 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: player.c 1.1 2002/06/16 10:34:50 kls Exp $ + * $Id: player.c 1.3 2002/06/23 12:56:25 kls Exp $ */ #include "player.h" +#include "i18n.h" // --- cPlayer --------------------------------------------------------------- @@ -46,10 +47,46 @@ void cPlayer::Detach(void) // --- cControl -------------------------------------------------------------- -cControl::cControl(void) +cControl *cControl::control = NULL; + +cControl::cControl(cPlayer *Player, bool Hidden) { + attached = false; + hidden = Hidden; + player = Player; } cControl::~cControl() { + if (this == control) + control = NULL; +} + +cControl *cControl::Control(void) +{ + return (control && !control->hidden) ? control : NULL; +} + +void cControl::Launch(cControl *Control) +{ + delete control; + control = Control; +} + +void cControl::Attach(void) +{ + if (control && !control->attached && control->player && !control->player->IsAttached()) { + if (cDevice::PrimaryDevice()->AttachPlayer(control->player)) + control->attached = true; + else { + Interface->Error(tr("Channel locked (recording)!")); + Shutdown(); + } + } +} + +void cControl::Shutdown(void) +{ + delete control; + control = NULL; } |