ac3136c4f71be0b3a716757d0aa8e6c3169aca6c
[pierogi] / pirmakenames.h
1 #ifndef PIRMAKENAMES_H
2 #define PIRMAKENAMES_H
3
4 class QComboBox;
5
6 // The list of brands currently known by Pierogi:
7 enum PIRMakeName{
8   Any_Make,
9   Acer_Make,
10   ADB_Make,
11   Admiral_Make,
12   Aiwa_Make,
13   Anitech_Make,
14   AOC_Make,
15   Apple_Make,
16   Arcam_Make,
17   Beko_Make,
18   BenQ_Make,
19   Blaupunkt_Make,
20   Bose_Make,
21   Bush_Make,
22   Cambridge_Make,
23   Canon_Make,
24   Cisco_Make,
25   Compro_Make,
26   Creative_Make,
27   Crown_Make,
28   Daewoo_Make,
29   Dell_Make,
30   Denon_Make,
31   DeutscheTelekom_Make,
32   DigitalStream_Make,
33   Directv_Make,
34   Dish_Make,
35   Dreambox_Make,
36   DSE_Make,
37   Dynex_Make,
38   Ei_Make,
39   Elgato_Make,
40   Emerson_Make,
41   Emtec_Make,
42   Epson_Make,
43   Fortec_Make,
44   Foxtel_Make,
45   Gadmei_Make,
46   Genius_Make,
47   GoldStar_Make,
48   Goodmans_Make,
49   Grundig_Make,
50   Haier_Make,
51   HarmanKardon_Make,
52   Hauppauge_Make,
53   Hitachi_Make,
54   Homecast_Make,
55   HP_Make,
56   Huawei_Make,
57   Humax_Make,
58   Hyundai_Make,
59   IRobot_Make,
60   JVC_Make,
61   Kaon_Make,
62   Kathrein_Make,
63   Kenwood_Make,
64   Lexuz_Make,
65   LG_Make,
66   Lifetec_Make,
67   Loewe_Make,
68   Logitech_Make,
69   Magnavox_Make,
70   Magnum_Make,
71   Medion_Make,
72   Microsoft_Make,
73   Mitsubishi_Make,
74   Motorola_Make,
75   NAD_Make,
76   Nikon_Make,
77   Nokia_Make,
78   Octagon_Make,
79   Olympus_Make,
80   Onida_Make,
81   Onkyo_Make,
82   Orion_Make,
83   Panasonic_Make,
84   Pentax_Make,
85   Philco_Make,
86   Philips_Make,
87   Pinnacle_Make,
88   Pioneer_Make,
89   Proview_Make,
90   QNAP_Make,
91   Raite_Make,
92   RCA_Make,
93   Roku_Make,
94   Saba_Make,
95   Sagem_Make,
96   Samsung_Make,
97   Sanyo_Make,
98   Sharp_Make,
99   Sky_Make,
100   Sony_Make,
101   Starsat_Make,
102   Strong_Make,
103   Sylvania_Make,
104   Technics_Make,
105   Technisat_Make,
106   Telefunken_Make,
107   Telenet_Make,
108   Thomson_Make,
109   Tivo_Make,
110   Topfield_Make,
111   Toshiba_Make,
112   Triax_Make,
113   United_Make,
114   Universum_Make,
115   Vestel_Make,
116   Viewsat_Make,
117   Viewsonic_Make,
118   Virgin_Make,
119   Vizio_Make,
120   WD_Make,
121   Westinghouse_Make,
122   Xcruiser_Make,
123   Yamaha_Make,
124   Zenith_Make
125 };
126
127
128 // An object of convenience:
129
130 #include <map>
131 #include <QString>
132 typedef std::map<PIRMakeName, const char *> MakeCollection;
133 typedef std::map<QString, PIRMakeName> ReverseMakeCollection;
134
135 class PIRMakeMgr
136 {
137 public:
138   PIRMakeMgr();
139
140   const char *getMakeString(
141     PIRMakeName n);
142
143   PIRMakeName getMakeID(
144     QString name);
145
146   void populateComboBox(
147     QComboBox *cb);
148
149 private:
150   MakeCollection makes;
151   ReverseMakeCollection makeIDs;
152 };
153
154 #endif // PIRMAKENAMES_H