aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/Common/UI/UIScene_LanguageSelector.h
blob: b5c3d4c6ca46065b50f69183bfb020c34dfb8f27 (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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
#pragma once

#include "UIScene.h"

#define HAS_LANGUAGE_SYSTEM(exp) exp,

#define HAS_LANGUAGE_EN_US(exp)	exp,
#define HAS_LANGUAGE_DE_DE(exp)	exp,
#define HAS_LANGUAGE_ES_ES(exp)	exp,
#define HAS_LANGUAGE_ES_MX(exp)	exp,
#define HAS_LANGUAGE_FR_FR(exp)	exp,
#define HAS_LANGUAGE_IT_IT(exp)	exp,
#define HAS_LANGUAGE_PT_PT(exp)	exp,
#define HAS_LANGUAGE_PT_BR(exp)	exp,
#define HAS_LANGUAGE_JA_JP(exp)	exp,
#define HAS_LANGUAGE_KO_KR(exp)	exp,
#define HAS_LANGUAGE_CN_TW(exp)	exp,

#ifdef _DURANGO
#define HAS_LANGUAGE_CN_CN(exp)	exp,
#define HAS_LANGUAGE_SK_SK(exp)	exp,
#define HAS_LANGUAGE_CZ_CZ(exp)	exp,
#else
#define HAS_LANGUAGE_CN_CN(exp)
#define HAS_LANGUAGE_SK_SK(exp)
#define HAS_LANGUAGE_CZ_CZ(exp)
#endif

#define HAS_LANGUAGE_DA_DK(exp)	exp,
#define HAS_LANGUAGE_FI_FI(exp)	exp,
#define HAS_LANGUAGE_NL_NL(exp)	exp,
#define HAS_LANGUAGE_PL_PL(exp)	exp,
#define HAS_LANGUAGE_RU_RU(exp)	exp,
#define HAS_LANGUAGE_SV_SE(exp)	exp,
#define HAS_LANGUAGE_NB_NO(exp)	exp,
#define HAS_LANGUAGE_EL_GR(exp) exp,

#if defined(__ORBIS__) || defined(__PS3__) || defined(__PSVITA__)
#define HAS_LANGUAGE_TR_TR(exp) exp,
#else
#define HAS_LANGUAGE_TR_TR(exp)		
#endif

class UIScene_LanguageSelector : public UIScene
{
public:
	enum ELangButtons
	{
		eLanguageSelector_LabelNone	= -1,
		HAS_LANGUAGE_SYSTEM(eLanguageSelector_system)
		HAS_LANGUAGE_EN_US(eLanguageSelector_EN_US)
		HAS_LANGUAGE_DE_DE(eLanguageSelector_DE_DE)
		HAS_LANGUAGE_ES_ES(eLanguageSelector_ES_ES)
		HAS_LANGUAGE_ES_MX(eLanguageSelector_ES_MX)
		HAS_LANGUAGE_FR_FR(eLanguageSelector_FR_FR)
		HAS_LANGUAGE_IT_IT(eLanguageSelector_IT_IT)
		HAS_LANGUAGE_PT_PT(eLanguageSelector_PT_PT)
		HAS_LANGUAGE_PT_BR(eLanguageSelector_PT_BR)
		HAS_LANGUAGE_JA_JP(eLanguageSelector_JA_JP)
		HAS_LANGUAGE_KO_KR(eLanguageSelector_KO_KR)
		HAS_LANGUAGE_CN_TW(eLanguageSelector_CN_TW)
		HAS_LANGUAGE_CN_CN(eLanguageSelector_CN_CN)
		HAS_LANGUAGE_DA_DK(eLanguageSelector_DA_DK)
		HAS_LANGUAGE_FI_FI(eLanguageSelector_FI_FI)
		HAS_LANGUAGE_NL_NL(eLanguageSelector_NL_NL)
		HAS_LANGUAGE_PL_PL(eLanguageSelector_PL_PL)
		HAS_LANGUAGE_RU_RU(eLanguageSelector_RU_RU)
		HAS_LANGUAGE_SV_SE(eLanguageSelector_SV_SE)
		HAS_LANGUAGE_NB_NO(eLanguageSelector_NB_NO)
		HAS_LANGUAGE_SK_SK(eLanguageSelector_SK_SK)
		HAS_LANGUAGE_CZ_CZ(eLanguageSelector_CZ_CZ)
		HAS_LANGUAGE_EL_GR(eLanguageSelector_EL_GR)
		HAS_LANGUAGE_TR_TR(eLanguageSelector_TR_TR)
		eLanguageSelector_MAX
	};

private:
	enum EControls
	{
		eControl_Buttons,
	};
	
	static const unsigned int m_uiHTPButtonNameA[eLanguageSelector_MAX];

	UIControl_DynamicButtonList m_buttonListHowTo;
	UI_BEGIN_MAP_ELEMENTS_AND_NAMES(UIScene)
		UI_MAP_ELEMENT( m_buttonListHowTo, "HowToList")
	UI_END_MAP_ELEMENTS_AND_NAMES()

public:
	UIScene_LanguageSelector(int iPad, void *initData, UILayer *parentLayer);

	virtual EUIScene getSceneType() { return eUIScene_LanguageSelector; }
	
	virtual void updateTooltips();
	virtual void updateComponents();

	virtual void handleReload();
protected:
	// TODO: This should be pure virtual in this class
	virtual wstring getMoviePath();

public:
	// INPUT
	virtual void handleInput(int iPad, int key, bool repeat, bool pressed, bool released, bool &handled);

protected:
	void handlePress(F64 controlId, F64 childId);
};

const int uiLangMap[UIScene_LanguageSelector::eLanguageSelector_MAX] =
{
	HAS_LANGUAGE_SYSTEM(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_EN_US(XC_LANGUAGE_ENGLISH)
	HAS_LANGUAGE_DE_DE(XC_LANGUAGE_GERMAN)    
	HAS_LANGUAGE_ES_ES(XC_LANGUAGE_SPANISH)
	HAS_LANGUAGE_ES_MX(XC_LANGUAGE_SPANISH)
	HAS_LANGUAGE_FR_FR(XC_LANGUAGE_FRENCH)  
	HAS_LANGUAGE_IT_IT(XC_LANGUAGE_ITALIAN)   
	HAS_LANGUAGE_PT_PT(XC_LANGUAGE_PORTUGUESE)
	HAS_LANGUAGE_PT_BR(XC_LANGUAGE_PORTUGUESE)
	HAS_LANGUAGE_JA_JP(XC_LANGUAGE_JAPANESE)  
	HAS_LANGUAGE_KO_KR(XC_LANGUAGE_KOREAN)    
	HAS_LANGUAGE_CN_TW(XC_LANGUAGE_TCHINESE)  
	HAS_LANGUAGE_CN_CN(XC_LANGUAGE_SCHINESE)
	HAS_LANGUAGE_DA_DK(XC_LANGUAGE_DANISH)
	HAS_LANGUAGE_FI_FI(XC_LANGUAGE_FINISH)
	HAS_LANGUAGE_NL_NL(XC_LANGUAGE_DUTCH)     
	HAS_LANGUAGE_PL_PL(XC_LANGUAGE_POLISH)   
	HAS_LANGUAGE_RU_RU(XC_LANGUAGE_RUSSIAN)   
	HAS_LANGUAGE_SV_SE(XC_LANGUAGE_SWEDISH)   
	HAS_LANGUAGE_NB_NO(XC_LANGUAGE_BNORWEGIAN)
	HAS_LANGUAGE_SK_SK(XC_LANGUAGE_SLOVAK)
	HAS_LANGUAGE_CZ_CZ(XC_LANGUAGE_CZECH)	
	HAS_LANGUAGE_EL_GR(XC_LANGUAGE_GREEK)
	HAS_LANGUAGE_TR_TR(XC_LANGUAGE_TURKISH)
};

const int uiLocaleMap[UIScene_LanguageSelector::eLanguageSelector_MAX] = 
{
	HAS_LANGUAGE_SYSTEM(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_EN_US(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_DE_DE(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_ES_ES(XC_LOCALE_SPAIN)  
	HAS_LANGUAGE_ES_MX(XC_LOCALE_LATIN_AMERICA)  
	HAS_LANGUAGE_FR_FR(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_IT_IT(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_PT_PT(XC_LOCALE_PORTUGAL)					
	HAS_LANGUAGE_PT_BR(XC_LOCALE_BRAZIL)					
	HAS_LANGUAGE_JA_JP(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_KO_KR(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_CN_TW(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_CN_CN(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_DA_DK(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_FI_FI(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_NL_NL(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_PL_PL(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_RU_RU(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_SV_SE(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_NB_NO(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_SK_SK(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_CZ_CZ(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_EL_GR(MINECRAFT_LANGUAGE_DEFAULT)
	HAS_LANGUAGE_TR_TR(MINECRAFT_LANGUAGE_DEFAULT)
};