summaryrefslogtreecommitdiff
path: root/dxr3.h
blob: 2eb9eb7ea94a3b012b55d4b458b27977a93e675c (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
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
89
#ifndef _DXR3_H_
#define _DXR3_H_

#include <vdr/i18n.h>

static const char MAINMENUENTRY[] = trNOOP("DXR3 Functions");

// --- cMenuSetupDxr3 -------------------------------------------------------

// ==================================
// setup screen
class cMenuSetupDxr3 : public cMenuSetupPage
{
public:
    cMenuSetupDxr3();

protected:
    virtual void Store();

private:
    int newUseDigitalOut;
    int newDxr3Card;
    int newVideoMode;
    const char *menuVideoModes[3];
    int newUseWSS;
    int newHideMenu;
    int newOsdFlushRate;
    int newBrightness;
    int newContrast;
    int newSaturation;
};


// ==================================
enum eDxr3OsdItem
{
    DXR3_RESET_HARDWARE,
    DXR3_FORCE_LETTER_BOX,
    DXR3_DIGITAL_OUT,
    DXR3_ANALOG_OUT
};

// ==================================
// osd item
class cDxr3OsdItem : public cOsdItem
{
public:
    cDxr3OsdItem(const char* text, eDxr3OsdItem item) :
	cOsdItem(text), m_item(item) {}

    // process fb input
    eOSState ProcessKey(eKeys Key);

protected:
    eDxr3OsdItem m_item;
};

// ==================================
// main screen
class cDxr3OsdMenu : public cOsdMenu
{
public:
    cDxr3OsdMenu(): cOsdMenu(tr(MAINMENUENTRY))
    {
	Clear();
	SetHasHotkeys();
	Add(new cDxr3OsdItem(hk(tr("Reset DXR3 hardware")),
			     DXR3_RESET_HARDWARE));
	Add(new cDxr3OsdItem(hk(tr("Toggle force letterbox")),
			     DXR3_FORCE_LETTER_BOX));

        if (cSettings::instance()->useDigitalOut())
	    Add(new cDxr3OsdItem(hk(tr("Switch to analog audio output")),
				 DXR3_ANALOG_OUT));
	else
	    Add(new cDxr3OsdItem(hk(tr("Switch to digital audio output")),
				 DXR3_DIGITAL_OUT));
    }
};

#endif /*_DXR3_H_*/

// Local variables:
// mode: c++
// c-file-style: "stroustrup"
// c-file-offsets: ((inline-open . 0))
// tab-width: 4;
// indent-tabs-mode: nil
// End: