public void CreateNewButtonPressed()
 {
     BookComponent.ClearScene();
     bookPath = string.Empty;
     book     = Book.TemplateBook();
     BookComponent.LoadScene();
 }
    static void Main(string[] args)
    {
        LibraryContainer cntrExmpl = new LibraryContainer();

        try
        {
            BookComponent book1 = new BookComponent("Wizard's First Rule", "Terry Gooodkind");
            cntrExmpl.Add(book1, "0812548051");
            BookComponent book2 = new BookComponent("Stone of Tears", "Terry Gooodkind");
            cntrExmpl.Add(book2, "0812548094");
            BookComponent book3 = new BookComponent("Blood of the Fold", "Terry Gooodkind");
            cntrExmpl.Add(book3, "0812551478");
            BookComponent book4 = new BookComponent("The Soul of the Fire", "Terry Gooodkind");
            //This will generate exception because the ISBN already exists in the container.
            cntrExmpl.Add(book4, "0812551478");
        }
        catch (SystemException e)
        {
            Console.WriteLine("Error description: " + e.Message);
        }

        ComponentCollection datalist = cntrExmpl.Components;
        IEnumerator         denum    = datalist.GetEnumerator();

        while (denum.MoveNext())
        {
            BookComponent cmp = (BookComponent)denum.Current;
            Console.WriteLine("Book Title: " + cmp.Title);
            Console.WriteLine("Book Author: " + cmp.Author);
            Console.WriteLine("Book ISBN: " + cmp.Site.Name);
        }
    }
 // Use this for initialization
 void Start()
 {
     book = Book.BookFromResources(Name);
     BookComponent.CurrentBook = book;
     loadCurrentPage();
     BookComponent.LoadScene();
     StartPageAnimation();
 }
    private void GoToNextPage()
    {
        bool success = BookComponent.GoToNextPage(true, () => {
            userInteractionEnabled = true;
            StartPageAnimation();
        });

        userInteractionEnabled = !success;
    }
        private void showMoveUpDownRemoveControls()
        {
            int oldIndex = book.CurrentPageIndex;

            GUILayout.BeginHorizontal();

            var moveUpEnabled = oldIndex > 0;

            GUI.enabled = moveUpEnabled;
            if (GUILayout.Button("Move page up"))
            {
                var page = book.Pages[oldIndex];
                book.Pages.RemoveAt(oldIndex);
                int newIndex = oldIndex - 1;
                book.Pages.Insert(newIndex, page);
                book.CurrentPageIndex       = newIndex;
                page.Number                 = newIndex + 1;
                book.Pages[oldIndex].Number = oldIndex + 1;
            }

            var moveDownEnabled = oldIndex < book.Pages.Count - 1;

            GUI.enabled = moveDownEnabled;
            if (GUILayout.Button("Move page down"))
            {
                var page = book.Pages[oldIndex];
                book.Pages.RemoveAt(oldIndex);
                int newIndex = oldIndex + 1;
                book.Pages.Insert(newIndex, page);
                book.CurrentPageIndex       = newIndex;
                page.Number                 = newIndex + 1;
                book.Pages[oldIndex].Number = oldIndex + 1;
            }

            var removeEnabled = book.Pages.Count > 1;

            GUI.enabled = removeEnabled;
            if (GUILayout.Button("Remove page"))
            {
                book.Pages.RemoveAt(oldIndex);
                if (oldIndex == book.Pages.Count)
                {
                    book.CurrentPageIndex = oldIndex - 1;
                }
                for (int i = 0; i < book.Pages.Count; i++)
                {
                    book.Pages [book.CurrentPageIndex + i].Number = book.CurrentPageIndex + i + 1;
                }
                BookComponent.ReloadScene();
            }

            GUI.enabled = true;

            GUILayout.EndHorizontal();
        }
示例#6
0
    public override bool Equals(object cmp)
    {
        BookComponent cmpObj = (BookComponent)cmp;

        if (this.Title.Equals(cmpObj.Title) && this.Author.Equals(cmpObj.Author))
        {
            return(true);
        }

        return(false);
    }
        private void showPageSelectionControls()
        {
            GUILayout.Label("Go to page", EditorStyles.boldLabel);
            pagesDescriptions = bookPagesDescriptionsArray(book);
            var index = book.CurrentPageIndex;

            book.CurrentPageIndex = EditorGUILayout.Popup(index, pagesDescriptions.ToArray());
            if (index != book.CurrentPageIndex)
            {
                BookComponent.ReloadScene();
            }
        }
        private void showColorControls()
        {
            GUILayout.Label("Color", EditorStyles.boldLabel);

            var color    = book.CurrentPage.Color.ToColor();
            var newColor = EditorGUILayout.ColorField(color);

//			if (color != newColor) {
            book.CurrentPage.Color = new Helpers.ABColor(newColor);
            BookComponent.UpdatePageColor();
//			}
        }
        public void OpenExistingBookButtonPressed()
        {
            Debug.Log("OpenExistingBookButtonPressed");
            var path = EditorUtility.OpenFilePanel(
                "Select a book to open",
                "",
                "xml");

            if (path.Length != 0 && File.Exists(path))
            {
                book     = Book.BookWithUrl(path);
                bookPath = path;
                Debug.Log(book);

                BookComponent.ReloadScene();
                PicturesWindow.UpdatePicturesList();
            }
        }
        void OnGUI()
        {
            GUILayout.Label("Pages", EditorStyles.boldLabel);

            if (GUILayout.Button("Add new page"))
            {
                var page = BookPage.EmptyPage(book.CurrentPageIndex + 2);
                book.Pages.Insert(book.CurrentPageIndex + 1, page);
                book.CurrentPageIndex++;
                BookComponent.ReloadScene();
            }

            if (book.Pages.Count > 0)
            {
                showPageSelectionControls();
                showMoveUpDownRemoveControls();
            }

            showColorControls();
        }
 public void GoToNextPage()
 {
     BookComponent.GoToNextPage(true);
 }
 public void GoToPreviousPage()
 {
     BookComponent.GoToPreviousPage(true);
 }
示例#13
0
 public BookController(BookComponent component)
 {
     this.component = component;
 }