Example #1
0
        public async void Toc()
        {
            ITocItem item = await book.QueryToc(null, Enumerable.Empty <ICategoryItem>());

            Assert.NotNull(item);
            Assert.Equal(2, item.Children.Count());
        }
Example #2
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            if (value is ObservableCollection <ITocItem> items && items.Any())
            {
                ITocItem item = items.First();
                if (item.Level == 0)
                {
                    return(ImageSource.FromFile(Device.RuntimePlatform == Device.Android
                        ? "@drawable/ic_filter_none_white_24dp"
                        : null));
                }

                if (item.Level > 9)
                {
                    return(ImageSource.FromFile(Device.RuntimePlatform == Device.Android
                        ? "@drawable/ic_filter_9_plus_white_24dp.png"
                        : null));
                }

                return(ImageSource.FromFile(Device.RuntimePlatform == Device.Android
                    ? $"@drawable/ic_filter_{item.Level}_white_24dp.png"
                    : null));
            }

            return(null);
        }
Example #3
0
        public async Task Init()
        {
            if (!TocItems.Any())
            {
                ITocItem root = await Book.QueryToc(null, null);

                ListChildren(root);
            }
        }
Example #4
0
 private void ListChildren(ITocItem item)
 {
     TocItems.ReplaceRange(item.HasChildren ? item.Children : new ITocItem[] { item });
     OnPropertyChanged(nameof(TocItems));
 }