summaryrefslogtreecommitdiff
path: root/displaymenu.h
blob: 002f3a124af2e68dfd34293f118c371112f03062 (plain)
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
#ifndef __NOPACITY_DISPLAYMENU_H
#define __NOPACITY_DISPLAYMENU_H

class cNopacityDisplayMenu : public cSkinDisplayMenu , cThread {
private:
	cNopacityDisplayMenuView *menuView;
	cNopacityMenuDetailView *detailView;
	cOsd *osd;
	eMenuCategory menuCategoryLast;
	eMenuSubCategory menuSubCategory;
	eMenuSubCategory menuSubCategoryLast;
	int FrameTime;
	int FadeTime;
	bool initial;
	bool initMenu;
	bool diskUsageDrawn;
	int lastDiskUsageState;
	int lastTimersState;
	bool timersDrawn;
	int menuItemIndexLast;
	int currentNumItems;
	bool menuHasIcons;
	bool contentNarrow, contentNarrowLast;
	cList<cNopacityTimer> timers;
	cList<cNopacityMenuItem> menuItems;
	int handleBackgrounds[6];
	int handleButtons[4];
	void DrawDisk(void);
	void DrawTimers(void);
	void SplitItem(const char *Text, cString *strItems, int *tabItems);
	virtual void Action(void);
protected:
	int Tab(int n);
public:
	cNopacityDisplayMenu(void);
	virtual ~cNopacityDisplayMenu();
	virtual void Scroll(bool Up, bool Page);
	virtual int MaxItems(void);
	virtual void Clear(void);
	virtual void SetMenuCategory(eMenuCategory MenuCategory);
	virtual void SetTitle(const char *Title);
	virtual void SetButtons(const char *Red, const char *Green = NULL, const char *Yellow = NULL, const char *Blue = NULL);
	virtual void SetMessage(eMessageType Type, const char *Text);
	virtual void SetItem(const char *Text, int Index, bool Current, bool Selectable);
	virtual void SetScrollbar(int Total, int Offset);
	virtual void SetEvent(const cEvent *Event);
	virtual void SetRecording(const cRecording *Recording);
	virtual void SetText(const char *Text, bool FixedFont);
	virtual void Flush(void);
	virtual void SetTabs(int Tab1, int Tab2 = 0, int Tab3 = 0, int Tab4 = 0, int Tab5 = 0);
	virtual int GetTextAreaWidth(void) const;
	virtual const cFont *GetTextAreaFont(bool FixedFont) const;
};

#endif //__NOPACITY_DISPLAYMENU_H