17 #define ScrollWidth (Setup.FontOsdSize / 4)
18 #define TextFrame (Setup.FontOsdSize / 10)
19 #define TextSpacing (Setup.FontOsdSize / 4)
90 virtual void Flush(
void);
95 int Lines = WithInfo ? 5 : 1;
127 for (
int i = 0; i < 2; i++) {
128 const cEvent *e = !i ? Present : Following;
157 int w = font->
Width(date);
178 void DrawScrollbar(
int Total,
int Offset,
int Shown,
int Top,
int Height,
bool CanScrollUp,
bool CanScrollDown);
183 virtual void Scroll(
bool Up,
bool Page);
185 virtual void Clear(
void);
186 virtual void SetTitle(
const char *Title);
187 virtual void SetButtons(
const char *Red,
const char *Green = NULL,
const char *Yellow = NULL,
const char *Blue = NULL);
189 virtual void SetItem(
const char *Text,
int Index,
bool Current,
bool Selectable);
193 virtual void SetText(
const char *Text,
bool FixedFont);
196 virtual void Flush(
void);
241 if (Total > 0 && Total > Shown) {
243 int yb = yt + Height;
246 int th =
max(
int((sb - st) *
double(Shown) / Total + 0.5),
ScrollWidth);
247 int tt =
min(
int(st + (sb - st) *
double(Offset) / Total + 0.5), sb - th);
248 int tb =
min(tt + th, sb);
294 const char *lutText[] = { Red, Green, Yellow, Blue };
295 tColor lutFg[] = { clrButtonRedFg, clrButtonGreenFg, clrButtonYellowFg, clrButtonBlueFg };
296 tColor lutBg[] = { clrButtonRedBg, clrButtonGreenBg, clrButtonYellowBg, clrButtonBlueBg };
323 ColorFg = Theme.
Color(clrMenuItemCurrentFg);
324 ColorBg = Theme.
Color(clrMenuItemCurrentBg);
327 ColorFg = Theme.
Color(Selectable ? clrMenuItemSelectable : clrMenuItemNonSelectable);
331 for (
int i = 0; i <
MaxTabs; i++) {
334 int xt =
x0 +
Tab(i);
361 int w = font->Width(buffer);
368 int w = font->Width(buffer);
401 int w = font->Width(buffer);
405 const char *Title = Info->
Title();
407 Title = Recording->
Name();
445 int w = font->
Width(date);
464 virtual void SetTitle(
const char *Title);
465 virtual void SetMode(
bool Play,
bool Forward,
int Speed);
468 virtual void SetTotal(
const char *Total);
469 virtual void SetJump(
const char *Jump);
471 virtual void Flush(
void);
477 int lineHeight = font->
Height();
510 if (Speed == -1) Mode = Play ?
" > " :
" || ";
511 else if (Play) Mode = Forward ?
" X>> " :
" <<X ";
512 else Mode = Forward ?
" X|> " :
" <|X ";
515 char *p = strchr(buf,
'X');
517 *p = Speed > 0 ?
'1' + Speed - 1 :
' ';
531 int w = font->
Width(Current);
539 int w = font->
Width(Total);
573 virtual void Flush(
void);
579 int lineHeight = font->
Height();
604 const char *Prompt =
tr(
"Volume ");
605 int l = font->
Width(Prompt);
606 int p = (
osd->
Width() - l) * Current / Total;
631 virtual void SetTrack(
int Index,
const char *
const *Tracks);
633 virtual void Flush(
void);
641 int ItemsWidth = font->
Width(Title);
642 for (
int i = 0; i < NumTracks; i++)
643 ItemsWidth =
max(ItemsWidth, font->
Width(Tracks[i]));
648 if (d > ItemsWidth) {
649 d = (d - ItemsWidth) & ~0x07;
664 for (
int i = 0; i < NumTracks; i++)
678 ColorFg = Theme.
Color(clrMenuItemCurrentFg);
679 ColorBg = Theme.
Color(clrMenuItemCurrentBg);
683 ColorFg = Theme.
Color(clrMenuItemSelectable);
694 SetItem(Tracks[Index], Index,
true);
711 virtual void Flush(
void);
717 int lineHeight = font->
Height();
747 :
cSkin(
"classic", &::Theme)
753 return tr(
"Classic VDR");