private static void OnBookmarkObjectChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            MangaArchiveInformationObject _this = (d as MangaArchiveInformationObject);

            if (!_this.Empty())
            {
                if (BookmarkObject.Equals(_this.BookmarkObject, null))
                {
                    d.SetValue(ResumeChapterObjectPropertyKey, null);
                }
                else
                {
                    d.SetValue(ResumeChapterObjectPropertyKey, _this.MangaObject.ChapterObjectOfBookmarkObject(_this.BookmarkObject));
                }

                if (ChapterObject.Equals(_this.ResumeChapterObject, null))
                {
                    d.SetValue(HasMoreToReadPropertyKey, false);
                }
                else
                {
                    Int32 ResumeChapterObjectIndex = _this.MangaObject.IndexOfChapterObject(_this.ResumeChapterObject) + 1;
                    d.SetValue(HasMoreToReadPropertyKey, ResumeChapterObjectIndex < _this.MangaObject.Chapters.Count);
                }
            }
        }
 public static Boolean Empty(this MangaArchiveInformationObject obj)
 {
     if (MangaArchiveInformationObject.Equals(obj, null))
     {
         return(true);
     }
     if (MangaObject.Equals(obj.MangaObject, null) || MangaObject.Equals(obj.MangaObject, default(MangaObject)))
     {
         return(true);
     }
     return(false);
 }
 public static void Merge(this MangaArchiveInformationObject obj, MangaArchiveInformationObject value)
 {
     obj.MangaObject.Merge(value.MangaObject);
     obj.BookmarkObject = value.BookmarkObject;
 }
 public static void Merge(this MangaArchiveInformationObject obj, MangaArchiveInformationObject value)
 {
     obj.MangaObject.Merge(value.MangaObject);
     obj.BookmarkObject = value.BookmarkObject;
 }