diff options
Diffstat (limited to 'displaymenuview.h')
-rw-r--r-- | displaymenuview.h | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/displaymenuview.h b/displaymenuview.h new file mode 100644 index 0000000..28ec7ec --- /dev/null +++ b/displaymenuview.h @@ -0,0 +1,107 @@ +#ifndef __NOPACITY_DISPLAYMENUVIEW_H +#define __NOPACITY_DISPLAYMENUVIEW_H + +enum eDetailViewType {dvEvent = 0, dvRecording, dvText}; + +class cNopacityTimer : public cListObject { + private: + cOsd *osd; + public: + cNopacityTimer(cOsd *osd); + virtual ~cNopacityTimer(void); + void SetAlpha(int alpha) {pixmap->SetAlpha(alpha);} + void SetLayer(int layer) {pixmap->SetLayer(layer);} + cPixmap *pixmap; +}; + +class cNopacityDisplayMenuView { + private: + cOsd *osd; + cString lastDate; + int diskUsageAlert; + cPixmap *pixmapHeader; + cPixmap *pixmapHeaderLogo; + cPixmap *pixmapHeaderIcon; + cPixmap *pixmapHeaderLabel; + cPixmap *pixmapDate; + cPixmap *pixmapFooter; + cPixmap *pixmapContent; + cPixmap *pixmapScrollbar; + cPixmap *pixmapDiskUsage; + cPixmap *pixmapDiskUsageIcon; + cPixmap *pixmapDiskUsageLabel; + cPixmap *pixmapStatus; + cFont *fontHeader; + cFont *fontDate; + cFont *fontMenuitemLarge; + cFont *fontMenuitemSchedule; + cFont *fontMenuitemDefault; + cFont *fontDiskUsage; + cFont *fontTimers; + cFont *fontTimersHead; + cFont *fontButtons; + cFont *fontMessage; + int osdWidth, osdHeight; + int osdLeft, osdTop; + int screenWidth, screenHeight; + double aspect; + int widthScrollbar; + int dateWidth; + int headerHeight, footerHeight, contentHeight; + int contentWidthNarrow, contentWidthFull; + int menuItemWidthDefault, menuItemHeightDefault; + int menuItemWidthMain, menuItemHeightMain; + int menuItemHeightSchedule; + int diskUsageWidth, diskUsageHeight; + int timersWidth; + int buttonsBorder, buttonWidth, buttonHeight; + int messageWidth, messageHeight; + int avrgFontWidth; + public: + cNopacityDisplayMenuView(); + virtual ~cNopacityDisplayMenuView(void); + cOsd *createOsd(void); + void SetGeometry(void); + void CreatePixmaps(void); + void SetPixmapAlpha(int Alpha); + void CreateFonts(void); + cFont *GetMenuItemFont(eMenuCategory menuCat); + void GetMenuItemSize(eMenuCategory menuCat, cPoint *itemSize); + int GetMaxItems(eMenuCategory menuCat); + int GetMenuTop(int numItems, int itemHeight); + void SetAvrgFontWidth(void); + 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 menuItemWidthDefault;}; + int GetTextAreaWidth(void); + const cFont *GetTextAreaFont(bool FixedFont); + void CreateBackgroundImages(int *handleBackgrounds, int *handleButtons); + void AdjustContentBackground(bool contentNarrow, bool contentNarrowLast); + void DrawBorderDecoration(void); + int ShowHeaderLogo(bool show); + void DrawHeaderLogo(void); + int DrawHeaderIcon(eMenuCategory menuCat); + int ShowHeaderIconChannelLogo(const char *Title); + 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, int handleImage, tColor borderColor, int num); + void ClearButton(int num); + int GetTimersInitHeight(void); + int GetTimersMaxHeight(void); + cNopacityTimer *DrawTimer(const cTimer *Timer, int y); + void DrawScrollbar(double Height, double Offset); + void ClearScrollbar(void); + void DrawMessage(eMessageType Type, const char *Text); + void ClearMessage(void); + void SetDetailViewSize(eDetailViewType detailViewType, cNopacityMenuDetailView *detailView); + void ScalePreserveAspect(tArea & videoWindowDest, const double & videoAspect, const tArea & availableArea); + int spaceMenu; +}; + + + +#endif //__NOPACITY_DISPLAYMENUVIEW_H
\ No newline at end of file |