summaryrefslogtreecommitdiff
path: root/views/displaymenulistview.h
blob: 2d9d30f0208c6d0281adf396bf7a760d702dc845 (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
#ifndef __DISPLAYMENULISTVIEW_H
#define __DISPLAYMENULISTVIEW_H

#include "../libtemplate/template.h"
#include "view.h"
#include "displaymenuitemview.h"

class cDisplayMenuListView {
private:
    cTemplateViewList *tmplList;
    int itemCount;
    cDisplayMenuItemView **menuItems;
    int *tabs;
    int *tabWidths;
    bool oneColumn;
public:
    cDisplayMenuListView(cTemplateViewList *tmplList, int count = -1);
    virtual ~cDisplayMenuListView();
    void Clear(void);
    void SetTabs(int tab1, int tab2, int tab3, int tab4, int tab5);
    int GetMaxItems(void) { return itemCount; };
    int GetListWidth(void);
    void AddDefaultMenuItem(int index, string *tabTexts, bool current, bool selectable);
    void AddMainMenuItem(int index, const char *itemText, bool current, bool selectable);
    void AddSetupMenuItem(int index, const char *itemText, bool current, bool selectable);
    void AddSchedulesMenuItem(int index, const cEvent *event, const cChannel *channel, eTimerMatch timerMatch, eMenuCategory cat, bool current, bool selectable);
    void AddChannelsMenuItem(int index, const cChannel *channel, bool withProvider, bool current, bool selectable);
    void AddTimersMenuItem(int index, const cTimer *timer, bool current, bool selectable);
    void AddRecordingMenuItem(int index, const cRecording *recording, int level, int total, int isNew, bool current, bool selectable);
    void AddPluginMenuItem(map<string,string> *stringTokens, map<string,int> *intTokens, map<string, vector<map<string,string> > > *loopTokens, int index, bool current, bool selectable);
    void AddTracksMenuItem(int index, const char *title, bool current, bool selectable);
    void Render(void);
    void Debug(void);
};

#endif //__DISPLAYMENULISTVIEW_H