/// <summary> /// Raises the create event. /// </summary> /// <param name='bundle'>Bundle.</param> protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); reciever = new EpisodeBroadcastReciever(this); SetContentView(Resource.Layout.EpisodeDetails); // setup the events FindViewById<Button>(Resource.EpisodeDetails.Download).Click += downloadPodcastClicked; FindViewById<Button>(Resource.EpisodeDetails.Delete).Click += deletePodcastClicked; FindViewById<Button>(Resource.EpisodeDetails.Play).Click += playPodcast; FindViewById<Button>(Resource.EpisodeDetails.Stop).Click += stopPlaying; FindViewById<Button>(Resource.EpisodeDetails.SkipForwards).Click += skipForwards; FindViewById<Button>(Resource.EpisodeDetails.SkipBack).Click += skipBackwards; // set an event for the player to seek to the requested position FindViewById<SeekBar>(Resource.EpisodeDetails.seek).ProgressChanged += delegate(object sender, SeekBar.ProgressChangedEventArgs e){ if(e.FromUser){ Intent i = new Intent(); i.SetAction(EpisodePlayer.PLAYER_INSTRUCTION_SEEK_ABSOLUTE); i.SetFlags((ActivityFlags)(e.Progress)); PortaPodderApp.Context.SendBroadcast(i); } }; }
/// <summary> /// Initializes a new instance of the <see cref="GPodder.PortaPodder.EpisodePlayer"/> class. /// </summary> public EpisodePlayer() { // assign the instructions for the progress monitor to execture when doing it's work in the background progressMonitor = new BackgroundWorker(delegate(ref bool stop){ while(!stop){ broadcastProgress(); Thread.Sleep(500); } }); // we are going to need a broadcase reciever here reciever = new EpisodeBroadcastReciever(this); }