-
Notifications
You must be signed in to change notification settings - Fork 0
/
displaymenuview.h
88 lines (85 loc) · 3.43 KB
/
displaymenuview.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#ifndef __NOPACITY_DISPLAYMENUVIEW_H
#define __NOPACITY_DISPLAYMENUVIEW_H
#include "timers.h"
#include "menudetailview.h"
#include <vdr/skins.h>
#include <vdr/videodir.h>
#include "config.h"
#include "helpers.h"
#include "imagecache.h"
#include "imageloader.h"
#include "messagebox.h"
#include "volumebox.h"
class cNopacityDisplayMenuView {
private:
cOsd *osd;
cString lastDate;
int diskUsageAlert;
bool menuAdjustLeft;
int lastVolume;
time_t lastVolumeTime;
int itemWidth = 0;
cPixmap *pixmapHeader;
cPixmap *pixmapHeaderForeground;
cPixmap *pixmapHeaderLogo;
cPixmap *pixmapHeaderIcon;
cPixmap *pixmapHeaderLabel;
cPixmap *pixmapDate;
cPixmap *pixmapFooter;
cPixmap *pixmapFooterBack;
cPixmap *pixmapButtonsText;
cPixmap *pixmapContent;
cPixmap *pixmapScrollbar;
cPixmap *pixmapScrollbarBack;
cPixmap *pixmapDiskUsage;
cPixmap *pixmapDiskUsageIcon;
cPixmap *pixmapDiskUsageLabel;
cNopacityMessageBox *messageBox;
cNopacityVolumeBox *volumeBox;
int feedNameLength;
cRect textWindowSizeSchedules;
cRect textWindowSizeRecordings;
cRect textWindowSizeChannels;
cRect textWindowSizeTimers;
int GetContentWidth(eMenuCategory menuCat);
void SetDescriptionTextWindowSize(void);
void CreatePixmaps(void);
void DrawHeaderLogo(void);
void DrawBorderDecoration(void);
public:
cNopacityDisplayMenuView(cOsd *osd);
virtual ~cNopacityDisplayMenuView(void);
void SetAlpha(int Alpha = 0);
void GetMenuItemSize(eMenuCategory menuCat, cPoint *itemSize);
int GetMenuTop(int numItems, int itemHeight);
int GetMenuItemLeft(int itemWidth);
int mytabs[cSkinDisplayMenu::MaxTabs];
void SetTabs(int Tab1, int Tab2 = 0, int Tab3 = 0, int Tab4 = 0, int Tab5 = 0);
int GetEditableWidth(void);
int GetWidthDefaultMenu(void) {return geoManager->menuItemWidthDefault;};
int GetTextAreaWidth(void);
const cFont *GetTextAreaFont(bool FixedFont);
cRect *GetDescriptionTextWindowSize(eMenuCategory menuCat);
void AdjustContentBackground(eMenuCategory menuCat, eMenuCategory menuCatLast, cRect & vidWin);
int ShowHeaderLogo(bool show);
int DrawHeaderIcon(eMenuCategory menuCat, bool initial = false);
int ShowHeaderIconChannelLogo(const char *Title, bool initial = false);
void DestroyHeaderIcon(void);
void DrawHeaderLabel(int left, cString label);
void DrawDate(bool initial);
void DrawDiskUsage(void);
void ShowDiskUsage(bool show);
void DrawButton(const char *text, eSkinElementType seButton, tColor buttonColor, tColor borderColor, tColor fontColor, int num);
void ClearButton(void);
int GetTimersInitHeight(void);
int GetTimersMaxHeight(void);
cNopacityTimer *DrawTimerConflict(int numConflicts, int y);
cNopacityTimer *DrawTimer(const cTimer *Timer, int y);
void DrawScrollbar(double Height, double Offset);
void ClearScrollbar(void);
void DrawMessage(eMessageType Type, const char *Text);
void DrawVolume(void);
cPixmap *GetPixmapScrollbar(void) { return pixmapScrollbar; };
cPixmap *GetPixmapScrollbarBack(void) { return pixmapScrollbarBack; };
};
#endif //__NOPACITY_DISPLAYMENUVIEW_H