Skip to content

YaregBel/eBookReader

Repository files navigation

eBookExpress

Нашей задачей было создание приложения, направленного на чтение электронных книг, различных форматов, при этом предоставляя пользователю возможность настроить процесс чтения на удобную для него волну.

Структура проекта

Проект имеет стандартную структуру для приложения основанного на C++, QML и Aurora OS.

  • ru.auroraos.eBooksReader.pro файл описывает структуру проекта для его сборки, используя утилиту для сборки приложения - qmake.
  • icons директория, содержащая иконки приложений для различных разрешений экрана.
  • qml директория, содержащая исходный код QML и ресурсы пользовательского интерфейса.
    • cover директория, содержащая варианты, обложек приложения.
    • icons директория, содержащая дополнительные иконки для интерфейса.
    • pages директория, содержащая страницы приложения.
    • ru.auroraos.eBooksReader.qml файл, который представляет собой реализацию окна приложения.
  • rpm директория, содержащая настройка сборки rpm-пакета.
  • src директория, содержащая исходники C++ кода.
  • translations директория содержит файлы перевода пользовательского интерфейса.
  • ru.auroraos.eBooksReader.desktop файл, определяющий как файл будет отображаться и его параметры для запуска приложения.

Совместимость

Проект совместим с версией Aurora 5.0.0.60-base и новее.

Как работает

  • При запуске приложения, подгружается страница MainPage.qml
  • После полной загрузки страницы MainPage.qml, срабатывает метод listFiles, класса FileReader.
  • После возвращается список файлов, расположенных в директории ~/Documents/ и уже исходя из длины этого списка, генерируется нужное количество записей, необходимых для отображения книг на книжной полке.
  • Далее при долгом нажатии на запись, появляется выпадающее меню, в котором можно, выбрав пункт - "Открыть книгу", перейти на страницу TextPage.qml.
  • Одновременно с открытием страницы, происходит считывание файла с книгой, по индексу 0 и вывод этой книги в элемент Text. При этом происходит обработка всех тегов и пагинация страниц.
  • На странице TextPage.qml, пользователь может перелистывать страницы книги и увеличивать или уменьшать размер шрифта, а также выйти обратно, на главный экран, смахнув вправо или нажав на нужную для этого кнопку

Скриншоты

image image image image

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •