Esempio n. 1
0
 private void MediaPlayer_MediaOpened(object sender, RoutedEventArgs e)
 {
     mediaType = Media.GetType(mediaPlayer.Source.ToString());
     if (mediaType == Media.MediaType.Video ||
         mediaType == Media.MediaType.Audio)
     {
         videoTimeSpan                  = TimeSpan.FromMilliseconds(mediaPlayer.NaturalDuration.TimeSpan.TotalMilliseconds);
         VideoTimeSlider.Maximum        = videoTimeSpan.TotalSeconds;
         mediaPlayerControls.Visibility = Visibility.Visible;
         if (!IsPause)
         {
             PlayClick();
         }
     }
     else if (mediaType == Media.MediaType.Image)
     {
         mediaPlayerControls.Visibility = Visibility.Hidden;
         if (IsPause)
         {
             PlayClick();
         }
     }
 }
 /// <summary>
 /// Marks with the media unavailable status the messages for which no
 /// media is available
 /// </summary>
 private void UpdateWithMediaAvailability()
 {
     lock (_msgStatus)
     {
         IEnumerator en = _msgStatus.Values.GetEnumerator();
         while (en.MoveNext())
         {
             MessageData msg   = (MessageData)en.Current;
             int         media = (int)msg.Media;
             try
             {
                 Media.MediaType mediaType = (Media.MediaType)media;
                 if (!Parameterization.MediaContext.IsMediaAvailable(mediaType))
                 {
                     msg.Status = MessageStatus.NoMedia;
                 }
             }
             catch (Exception ex)
             {
                 CommMain.Logger.AddLog(ex);
             }
         }
     }
 }
Esempio n. 3
0
        public IAsyncEnumerable <OneOf <IPagedData <Media>, IAniListError> > SearchMedia(string queryText,
                                                                                         Media.MediaType type = null, int perPage = 20)
        {
            var arguments = new
            {
                queryText,
                type = type?.Value,
            };

            return(new PagedAsyncEnumerable <Media>(perPage,
                                                    CreateGetPageFunc <Media>(QueryStore.SearchMedia, arguments),
                                                    HasNextPage));
        }
Esempio n. 4
0
        public IAsyncEnumerable <OneOf <IPagedData <Media.Edge>, IAniListError> > GetStaffMedia(int staffId, Media.MediaType mediaType, int perPage = 20)
        {
            var arguments = new { staffId, mediaType = mediaType.Value };

            return(new PagedAsyncEnumerable <Media.Edge>(perPage,
                                                         CreateGetPageFunc <Media.Edge, Staff>(QueryStore.GetStaffMedia, arguments, staff => staff.StaffMedia),
                                                         HasNextPage));
        }
Esempio n. 5
0
        public IAsyncEnumerable <OneOf <IPagedData <Media.Edge>, IAniListError> > GetCharacterMedia(int characterId, Media.MediaType mediaType, int perPage = 20)
        {
            var arguments = new { characterId, mediaType = mediaType?.Value };

            return(new PagedAsyncEnumerable <Media.Edge>(perPage,
                                                         CreateGetPageFunc <Media.Edge, Character>(QueryStore.GetCharacterMedia, arguments, character => character.Media),
                                                         HasNextPage));
        }
Esempio n. 6
0
        public Task <OneOf <Media.MediaListCollection, IAniListError> > GetUserMediaList(int userId, Media.MediaType type, bool groupCompleted, CancellationToken cToken)
        {
            var query = new GraphQLQuery
            {
                Query     = QueryStore.GetMediaListsByUserIdAndType,
                Variables = new { userId, type, groupCompleted },
            };

            return(GetResponseAsync <Media.MediaListCollection>(query, cToken));
        }