mirror of
				https://github.com/vdr-projects/vdr.git
				synced 2025-03-01 10:50:46 +00:00 
			
		
		
		
	Blocking channel selection when recording/replaying
This commit is contained in:
		
							
								
								
									
										2
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								HISTORY
									
									
									
									
									
								
							| @@ -30,4 +30,4 @@ Video Disk Recorder Revision History | ||||
| - The repeat function for the remote control no longer adapts dynamically | ||||
|   to the timing of the RCU (this sometimes caused the repeat function to | ||||
|   kick in too early). | ||||
|  | ||||
| - Channel selection is now blocked when recording or replaying. | ||||
|   | ||||
							
								
								
									
										20
									
								
								vdr.c
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								vdr.c
									
									
									
									
									
								
							| @@ -22,7 +22,7 @@ | ||||
|  * | ||||
|  * The project's page is at http://www.cadsoft.de/people/kls/vdr | ||||
|  * | ||||
|  * $Id: vdr.c 1.10 2000/04/24 09:45:03 kls Exp $ | ||||
|  * $Id: vdr.c 1.11 2000/04/24 10:33:38 kls Exp $ | ||||
|  */ | ||||
|  | ||||
| #include <signal.h> | ||||
| @@ -134,20 +134,18 @@ int main(int argc, char *argv[]) | ||||
|              // Direct Channel Select (input): | ||||
|              case k0: case k1: case k2: case k3: case k4: case k5: case k6: case k7: case k8: case k9: | ||||
|              { | ||||
|                if (!DvbApi.Recording()) { | ||||
|                if (!(DvbApi.Recording() || DvbApi.Replaying())) { | ||||
|                   dcNumber = dcNumber * 10 + key - k0; | ||||
|                   dcTime = time_ms(); | ||||
|                   } | ||||
|              } | ||||
|              // Record/Replay Control: | ||||
|              case kBegin:         DvbApi.Skip(-INT_MAX); break; | ||||
|              case kRecord:        if (!DvbApi.Recording()) { | ||||
|              case kRecord:        if (!(DvbApi.Recording() || DvbApi.Replaying())) { | ||||
|                                      cTimer *timer = new cTimer(true); | ||||
|                                      Timers.Add(timer); | ||||
|                                      Timers.Save(); | ||||
|                                      } | ||||
|                                   else | ||||
|                                      Interface.Error("Already recording!"); | ||||
|                                   break; | ||||
|              case kPause:         DvbApi.PauseReplay(); break; | ||||
|              case kStop:          DELETENULL(ReplayDisplay); | ||||
| @@ -164,12 +162,12 @@ int main(int argc, char *argv[]) | ||||
|                          break; | ||||
|              // Up/Down Channel Select: | ||||
|              case kUp: | ||||
|              case kDown: { | ||||
|                            int n = CurrentChannel + (key == kUp ? 1 : -1); | ||||
|                            cChannel *channel = Channels.Get(n); | ||||
|                            if (channel) | ||||
|                               channel->Switch(); | ||||
|                          } | ||||
|              case kDown: if (!(DvbApi.Recording() || DvbApi.Replaying())) { | ||||
|                             int n = CurrentChannel + (key == kUp ? 1 : -1); | ||||
|                             cChannel *channel = Channels.Get(n); | ||||
|                             if (channel) | ||||
|                                channel->Switch(); | ||||
|                             } | ||||
|                          break; | ||||
|              // Viewing Control: | ||||
|              case kOk:   if (ReplayDisplay) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user