From 48f0aedfcb8adb8d10390bc837854fbd2d16c226 Mon Sep 17 00:00:00 2001 From: SeanOMik Date: Sun, 22 Sep 2019 13:45:18 -0500 Subject: [PATCH] Save book pages, add icon img --- Makefile | 7 ++++--- appstore_icon.jpg | Bin 0 -> 6033 bytes icon.jpg | Bin 0 -> 9066 bytes include/config.h | 2 ++ source/menus/book-chooser/MenuChooser.cpp | 2 +- source/menus/book/BookReader.cpp | 20 +++++++++++--------- source/menus/book/PageLayout.cpp | 2 +- source/menus/book/menu_book_reader.cpp | 1 - switch_screen_appstore.jpg | Bin 0 -> 45966 bytes 9 files changed, 19 insertions(+), 15 deletions(-) create mode 100644 appstore_icon.jpg create mode 100644 icon.jpg create mode 100644 switch_screen_appstore.jpg diff --git a/Makefile b/Makefile index 5f03d5d..575a284 100644 --- a/Makefile +++ b/Makefile @@ -46,11 +46,12 @@ ROMFS := romfs VERSION_MAJOR := 0 VERSION_MINOR := 2 -VERSION_MICRO := 0 +VERSION_MICRO := 1 APP_TITLE := eBookReader APP_AUTHOR := SeanOMik APP_VERSION := ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_MICRO}-beta +ICON := icon.jpg #--------------------------------------------------------------------------------- # options for code generation @@ -62,12 +63,12 @@ CFLAGS := -g -std=c++17 -Wall -O2 -ffunction-sections \ CFLAGS += -D__SWITCH__ $(INCLUDE) `sdl2-config --cflags` -CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions #-DDEBUG=1 #-DEXPERIMENTAL=1 +CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions -DDEBUG=1 #-DEXPERIMENTAL=1 ASFLAGS := -g $(ARCH) LDFLAGS = -specs=$(DEVKITPRO)/libnx/switch.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map) -LIBS := -lstdc++fs -lSDL2_ttf -lSDL2_image -lpng -ljpeg `sdl2-config --libs` -lfreetype -lwebp -lz -lbz2 -ltwili -lnx -lmupdf -lmupdf-third +LIBS := -lstdc++fs -lSDL2_ttf -lSDL2_image -lpng -ljpeg `sdl2-config --libs` -lfreetype -lwebp -lz -lbz2 -ltwili -lconfig -lnx -lmupdf -lmupdf-third #-lmupdf_core -lmupdf_thirdparty #--------------------------------------------------------------------------------- # list of directories containing libraries, this must be the top level containing diff --git a/appstore_icon.jpg b/appstore_icon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..199833e9d64f70b9c2e97b45d8a41e32211bac55 GIT binary patch literal 6033 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 b6JI~Pcd`#$JU|_T3*Z<6)qAC|hCcldH!W%( literal 0 HcmV?d00001 diff --git a/icon.jpg b/icon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fcb2a6a5e33704d8687e5ba6fe98714a2bd6421f GIT binary patch literal 9066 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 #include -//#include +#include extern "C" { #include "SDL_helper.h" @@ -14,13 +14,14 @@ extern "C" { fz_context *ctx = NULL; int windowX, windowY; -/*config_t *config = NULL; +config_t *config = NULL; +char* configFile = "/switch/eBookReader/saved_pages.cfg"; static int load_last_page(const char *book_name) { if (!config) { config = (config_t *)malloc(sizeof(config_t)); config_init(config); - config_read_file(config, "/switch/NX-Shell/last_book_pages.cfg"); + config_read_file(config, configFile); } config_setting_t *setting = config_setting_get_member(config_root_setting(config), book_name); @@ -41,9 +42,9 @@ static void save_last_page(const char *book_name, int current_page) { if (setting) { config_setting_set_int(setting, current_page); - config_write_file(config, "/switch/NX-Shell/last_book_pages.cfg"); + config_write_file(config, configFile); } -}*/ +} BookReader::BookReader(const char *path) { if (ctx == NULL) { @@ -60,10 +61,11 @@ BookReader::BookReader(const char *path) { book_name.erase(std::remove(book_name.begin(), book_name.end(), c), book_name.end()); } + std::cout << "fz_open_document" << std::endl; doc = fz_open_document(ctx, path); - //int current_page = load_last_page(book_name.c_str()); - int current_page = 0; + int current_page = load_last_page(book_name.c_str()); + //int current_page = 0; switch_current_page_layout(_currentPageLayout, current_page); if (current_page > 0) { @@ -80,13 +82,13 @@ BookReader::~BookReader() { void BookReader::previous_page(int n) { layout->previous_page(n); show_status_bar(); - //save_last_page(book_name.c_str(), layout->current_page()); + save_last_page(book_name.c_str(), layout->current_page()); } void BookReader::next_page(int n) { layout->next_page(n); show_status_bar(); - //save_last_page(book_name.c_str(), layout->current_page()); + save_last_page(book_name.c_str(), layout->current_page()); } void BookReader::zoom_in() { diff --git a/source/menus/book/PageLayout.cpp b/source/menus/book/PageLayout.cpp index 981230e..e00076d 100644 --- a/source/menus/book/PageLayout.cpp +++ b/source/menus/book/PageLayout.cpp @@ -74,7 +74,7 @@ void PageLayout::render_page_to_texture(int num, bool reset_zoom) { FreeTextureIfNeeded(&page_texture); _current_page = std::min(std::max(0, num), pages_count - 1); - + fz_page *page = fz_load_page(ctx, doc, _current_page); fz_rect bounds = fz_bound_page(ctx, page); diff --git a/source/menus/book/menu_book_reader.cpp b/source/menus/book/menu_book_reader.cpp index 76a0aea..1692b81 100644 --- a/source/menus/book/menu_book_reader.cpp +++ b/source/menus/book/menu_book_reader.cpp @@ -17,7 +17,6 @@ void Menu_OpenBook(char *path) { bool helpMenu = false; - while(appletMainLoop()) { reader->draw(helpMenu); diff --git a/switch_screen_appstore.jpg b/switch_screen_appstore.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ae19967d47c279a64f7676a3a6f2710c2580cd6a GIT binary patch literal 45966 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