MCPcopy Create free account
hub / github.com/crosspoint-reader/crosspoint-reader / render

Method render

src/activities/reader/TxtReaderActivity.cpp:319–351  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

317}
318
319void TxtReaderActivity::render(RenderLock&&) {
320 if (!txt) {
321 return;
322 }
323
324 // Initialize reader if not done
325 if (!initialized) {
326 initializeReader();
327 }
328
329 if (pageOffsets.empty()) {
330 renderer.clearScreen();
331 renderer.drawCenteredText(UI_12_FONT_ID, 300, tr(STR_EMPTY_FILE), true, EpdFontFamily::BOLD);
332 renderer.displayBuffer();
333 return;
334 }
335
336 // Bounds check
337 if (currentPage < 0) currentPage = 0;
338 if (currentPage >= totalPages) currentPage = totalPages - 1;
339
340 // Load current page content
341 size_t offset = pageOffsets[currentPage];
342 size_t nextOffset;
343 currentPageLines.clear();
344 loadPageAtOffset(offset, currentPageLines, nextOffset);
345
346 renderer.clearScreen();
347 renderPage();
348
349 // Save progress
350 saveProgress();
351}
352
353void TxtReaderActivity::renderPage() {
354 const int lineHeight = renderer.getLineHeight(cachedFontId);

Callers

nothing calls this directly

Calls 6

saveProgressFunction · 0.85
emptyMethod · 0.45
clearScreenMethod · 0.45
drawCenteredTextMethod · 0.45
displayBufferMethod · 0.45
clearMethod · 0.45

Tested by

no test coverage detected