From 78d6e980eee9f879a33782ec4efa427623f75880 Mon Sep 17 00:00:00 2001 From: kamel5 Date: Wed, 29 Jul 2020 13:14:26 +0200 Subject: Wrap title in detailview header --- view.c | 13 +++++++++---- view.h | 1 + 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/view.c b/view.c index 31174bf..59e940b 100644 --- a/view.c +++ b/view.c @@ -113,12 +113,18 @@ void cView::DrawHeader(void) { } } //Date and Time, Title, Subtitle + int textWidthMax = headerWidth - xText - border / 2; + wrapper.Set(title.c_str(), fontHeaderLarge, textWidthMax); + int lineHeight = fontHeaderLarge->Height(); + int textLines = wrapper.Lines(); int yDateTime = border / 2; - int yTitle = (headerHeight - fontHeaderLarge->Height()) / 2; + int yTitle = (headerHeight - textLines * lineHeight) / 2; int ySubtitle = headerHeight - fontHeader->Height() - border / 3; - int textWidthMax = headerWidth - xText - border / 2; + pixmapHeader->DrawText(cPoint(xText, yDateTime), CutText(dateTime, textWidthMax, fontHeader).c_str(), theme.Color(clrFont), theme.Color(clrStatusHeader), fontHeader); - pixmapHeader->DrawText(cPoint(xText, yTitle), CutText(title, textWidthMax, fontHeaderLarge).c_str(), theme.Color(clrFont), theme.Color(clrStatusHeader), fontHeaderLarge); + for (int i = 0; i < textLines; i++) { + pixmapHeader->DrawText(cPoint(xText, yTitle + i * lineHeight), wrapper.GetLine(i), theme.Color(clrFont), theme.Color(clrStatusHeader), fontHeaderLarge); + } pixmapHeader->DrawText(cPoint(xText, ySubtitle), CutText(subTitle, textWidthMax, fontHeader).c_str(), theme.Color(clrFont), theme.Color(clrStatusHeader), fontHeader); //REC Icon eTimerMatch timerMatch = tmNone; @@ -481,7 +487,6 @@ bool cView::KeyUp(void) { if (!scrollable) return false; int aktHeight = pixmapContent->DrawPort().Point().Y(); -// int lineHeight = font->Height(); if (aktHeight >= 0) { return false; } diff --git a/view.h b/view.h index e3f2fe7..88b821d 100644 --- a/view.h +++ b/view.h @@ -51,6 +51,7 @@ protected: int contentHeight; int tabHeight; int scrollbarWidth; + cTextWrapper wrapper; std::vector tabs; std::string title; std::string subTitle; -- cgit v1.2.3