Im skin flatPlus in displayreplay.c habe ich das Problem, dass in SetRecording der Shorttext wenn er zu lang ist die Format-Symbole überlappt, bzw. drunter duchscheit.
In der Funktion ResolutionAspectDraw() werden die Symbole ermittelt und gezeichnet.
cString info("");
if (recInfo->ShortText())
info = cString::sprintf("%s %s - %s", *ShortDateString(recording->Start()), *TimeString(recording->Start()),
recInfo->ShortText());
else
info = cString::sprintf("%s %s", *ShortDateString(recording->Start()), *TimeString(recording->Start()));
// TODO: Handle very long shorttext. How to get width of aspect and format icons?
// Substract 'left' in case of displayed recording icon
// Substract 'fontSmlHeight' in case of recordingerror icon is displayed later
// Substract width of aspect and format icons (ResolutionAspectDraw()) ???
labelPixmap->DrawText(cPoint(left, fontHeight), info, Theme.Color(clrReplayFont), Theme.Color(clrReplayBg), fontSml,
osdWidth - left - fontSmlHeight - Config.decorBorderReplaySize * 2);
Display More
Mir ist auch nicht ganz klar in welcher Reihen folge das aufgerufen wird. Man (ich) könnte auch einfach schätzen wie groß die Symbole eventuell werden und den Wert mit abziehen.
Oder irgendwie über eine globale Variable. Das macht aber nur Sinn, wenn AspecrResolutionDraw() vorher aufgerufen wird
Beispiel mit Shorttext, der passt:

Rechts sind die Format Symbole