[Feature] skinengine subline timeout hide line for n seconds

builds on top of the file text patch to add hide timeouts to
subline text tags

this allows you to specify both a show time and hide time
for these elements

%t(show, hide)

also removes the 327 second limit for timeouts whne this form is used

Change-Id: If4598dcc24d0c7be4380e7595b7d91c7eba3a728
This commit is contained in:
William Wilgus 2024-12-07 14:58:35 -05:00 committed by William Wilgus
parent eb3e5eb2bf
commit 44bfffd7c5
33 changed files with 103 additions and 59 deletions

View file

@ -449,8 +449,12 @@ Subline related special characters and tags:
\begin{description}
\item[;] Split items on a line into separate sublines
\item[\%t] Set the subline display time. The
`\config{\%t}' is followed by either integer seconds (\config{\%t5}), or seconds
and tenths of a second within () e.g. (\config{\%t(3.5)}).
`\config{\%t}' is followed by either integer seconds (\config{\%t5[,timehide]}), or seconds
and tenths of a second within () e.g. (\config{\%t(3.5)[,timehide]}).
specify timehide to set number of seconds before tag will be displayed again.
when using timehide the message is displayed for timeshow and not displayed again for timehide seconds.
``Note:'' the max timeout allowed in themes is about 655 seconds (~10 minutes) going over will result in a timeout less than 10 minutes.
\%t(ts,th) supports longer timeouts (~100 minutes)
\end{description}
Each alternating subline can still be optionally scrolled while it is
@ -464,6 +468,12 @@ Example subline definition:
Display current and remaining track time
for 3 seconds,
repeat...
%s%t(4, 30)%Ia;%s%It;%t(3)%sId; : Display next id3 artist for 4 seconds,
Display next id3 title for 2 seconds,
Display next id3 album for 3 seconds
For the next 30 seconds - display title for 2 seconds and album for 3 seconds
repeat...
\end{example}
Conditionals can be used with sublines to display a different set and/or number

View file

@ -559,11 +559,13 @@ Examples of the \%if tag:\\
\section{Subline Tags}
\begin{tagmap}
\config{\%t(time)}
& Set the subline display cycle time (\%t(5) or \%t(3.4) formats) \\
\config{;}
& Split items on a line into separate sublines \\
\config{\%t(timeshow [,timehide])} & Set the subline display cycle time.\\
\end{tagmap}
Use this tag to set the time a subline is displayed and optionally the amount of time to hide the line before line will be displayed again
\begin{description}
\item[timeshow] -- how many seconds to display the line (\%t(5) or \%t(3.4) formats).
\item[timehide] -- OPTIONAL, how many seconds to wait before displaying the line again.
\end{description}
Allows grouping of several items (sublines) onto one line, with the
display cycling round the defined sublines. See