Esempio n. 1
0
File: Book.cs Progetto: ernado/Owl
 public virtual void RemovePage(Page page)
 {
     if (Pages.Contains(page))
     {
         Pages.Remove(page);
     }
 }
Esempio n. 2
0
        public void CanAddNewBook()
        {
            var page = new Page { FileName = "test_filename", Number = 1};
            page.AddLine(new Line {Number = 1});
            var book = new Book { Directory = "test", Name = "test"};
            book.AddPage(page);
            var repository = new BookRepository(DbFile);
            repository.Add(book);

            using (var session = _sessionFactory.OpenSession())
            {
                var fromDb = session.Get<Book>(book.UID);

                Assert.IsNotNull(fromDb);
                Assert.AreNotSame(book, fromDb);
                Assert.AreEqual(book.Name, fromDb.Name);
                Assert.AreEqual(book.Directory, fromDb.Directory);
                Assert.AreEqual(book.Pages[0].Number, fromDb.Pages[0].Number);
                Assert.AreEqual(book.Pages[0].FileName, fromDb.Pages[0].FileName);
                Assert.AreEqual(book.Pages[0].Lines[0].Number, fromDb.Pages[0].Lines[0].Number);
            }
        }
Esempio n. 3
0
File: Layout.cs Progetto: ernado/Owl
 public Layout(Page page, Graphics canvas)
 {
     Canvas = canvas;
     //throw new NotImplementedException();
 }
Esempio n. 4
0
File: Book.cs Progetto: ernado/Owl
 /// <summary>
 /// Добавить страницу к документу
 /// </summary>
 /// <param name="page">Страница</param>
 public virtual void AddPage(Page page)
 {
     page.Book = this; //указываем документ как родительский для страницы
     Pages.Add(page); //добавляем страницу в список страниц документа
 }
Esempio n. 5
0
 public void LoadPage(Page page)
 {
     MainGlyph = new CanvasGlyph(WordConfig) { Redactor = _redactor, ParentVectorRedactor = this };
     foreach (var line in page.Lines)
     {
         var lineGlyph = MainGlyph.InsertNewLineGlyph(line);
         foreach (var word in line.Words)
             lineGlyph.InsertNewWordGlyph(word);
     }
 }
Esempio n. 6
0
        public void DeleteElement(Page page)
        {
            var document = page.Book;

            Book.RemovePage(page);

            if (Page == page)
            {
                Page = null;
                ResetPageView();
            }

            ProcessElementChanges(document);
        }
Esempio n. 7
0
        private void UpdateElementView(Page page)
        {
            lineListBox.Items.Clear();
            linesCountsLink.Text = page.Lines.Count().ToString();
            pageNumberNumeric.Value = page.Number;

            if (page.Lines.Count > 0)
            {
                foreach (var line in page.Lines)
                {
                    var s = line.Number.ToString();
                    if (line.Words.Count == 0)
                        s += " (Пустая)";
                    else
                        s += String.Format(" (Слов: {0})", line.Words.Count);

                    lineListBox.Items.Add(s);
                }
            }
            UpdateElementView(Book);
        }
Esempio n. 8
0
 public void ProcessElementChanges(Page page)
 {
     ProcessDocumentChanges();
     savePageButton.Enabled = true;
     UpdateElementView(page);
 }
Esempio n. 9
0
        public void LoadElement(Page page)
        {
            Page = page;
            var image = new Bitmap(Book.Directory + "//" + page.FileName);
            interfaceBox.BackgroundImage = image;
            interfaceBox.Image = new Bitmap(image.Width, image.Height);
            centeredInterfaceHolderPanel.Visible = true;

            lineTabPanel.Enabled = true;
            pageEditGroupBox.Enabled = true;

            documentTabControl.SelectedIndex = 1;

            var pages = Book.Pages as List<Page>;
            if ((pages != null && !pages.Contains(Page)) || pages == null)
                saveBookMenuItem.Enabled = true;

            _vectorRedactor = new VectorRedactorRepository(GetCanvas(), this, _vectorRedactorConfig);
            _vectorRedactor.LoadPage(Page);

            UpdateElementView(page);
        }
Esempio n. 10
0
        public AnalyzablePage(Page page)
        {
            if (page == null)
                throw new Exception("�������� �� ���������");

            string imageFilePath = page.Book.Directory + "/" + page.FileName;

            if (!File.Exists(imageFilePath))
                throw new Exception("������ ������ �����������");

            _original = new Bitmap(imageFilePath);

            _bit = Functions.BinarizeImage(_original);

            _height = _original.Height;
            _width = _original.Width;
        }
Esempio n. 11
0
 private void PageListSelectedIndexChanged(object sender, EventArgs e)
 {
     _selectedPage = _pages[PageList.SelectedIndex];
 }