c8c5dc60455b390e73f4c85d287516ede44a3a7b
[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   CrownMustang_Make,
29   Daewoo_Make,
30   Dell_Make,
31   Denon_Make,
32   DeutscheTelekom_Make,
33   DigitalStream_Make,
34   Directv_Make,
35   Dish_Make,
36   Dreambox_Make,
37   DSE_Make,
38   Dynex_Make,
39   Ei_Make,
40   Elgato_Make,
41   Emerson_Make,
42   Emtec_Make,
43   Epson_Make,
44   Fortec_Make,
45   Foxtel_Make,
46   Gadmei_Make,
47   Genius_Make,
48   GoldStar_Make,
49   Goodmans_Make,
50   Grundig_Make,
51   Haier_Make,
52   Hantarex_Make,
53   HarmanKardon_Make,
54   Hauppauge_Make,
55   Hitachi_Make,
56   Homecast_Make,
57   HP_Make,
58   Huawei_Make,
59   Humax_Make,
60   Hyundai_Make,
61   IRobot_Make,
62   JVC_Make,
63   Kaon_Make,
64   Kathrein_Make,
65   Kenwood_Make,
66   Keymat_Make,
67   Konka_Make,
68   Lexuz_Make,
69   LG_Make,
70   Lifetec_Make,
71   Loewe_Make,
72   Logitech_Make,
73   Magnavox_Make,
74   Magnum_Make,
75   Medion_Make,
76   Microsoft_Make,
77   Mitsubishi_Make,
78   Motorola_Make,
79   NAD_Make,
80   Nikon_Make,
81   Nokia_Make,
82   Octagon_Make,
83   Olympus_Make,
84   Onida_Make,
85   Onkyo_Make,
86   Orion_Make,
87   Panasonic_Make,
88   Pentax_Make,
89   Philco_Make,
90   Philips_Make,
91   Pinnacle_Make,
92   Pioneer_Make,
93   Proview_Make,
94   QNAP_Make,
95   Raite_Make,
96   RCA_Make,
97   Roku_Make,
98   Saba_Make,
99   Sagem_Make,
100   Samsung_Make,
101   Sanyo_Make,
102   Sharp_Make,
103   Sky_Make,
104   Sony_Make,
105   Starsat_Make,
106   Strong_Make,
107   Sylvania_Make,
108   Technics_Make,
109   Technisat_Make,
110   Telefunken_Make,
111   Telenet_Make,
112   Thomson_Make,
113   Tivo_Make,
114   Topfield_Make,
115   Toshiba_Make,
116   Triax_Make,
117   United_Make,
118   Universum_Make,
119   Vestel_Make,
120   Viewsat_Make,
121   Viewsonic_Make,
122   Virgin_Make,
123   Vizio_Make,
124   WD_Make,
125   Westinghouse_Make,
126   Wiwa_Make,
127   Xcruiser_Make,
128   Yamaha_Make,
129   Zenith_Make
130 };
131
132
133 // An object of convenience:
134
135 #include <map>
136 #include <QString>
137 typedef std::map<PIRMakeName, const char *> MakeCollection;
138 typedef std::map<QString, PIRMakeName> ReverseMakeCollection;
139
140 class PIRMakeMgr
141 {
142 public:
143   PIRMakeMgr();
144
145   const char *getMakeString(
146     PIRMakeName n);
147
148   PIRMakeName getMakeID(
149     QString name);
150
151   void populateComboBox(
152     QComboBox *cb);
153
154 private:
155   MakeCollection makes;
156   ReverseMakeCollection makeIDs;
157 };
158
159 #endif // PIRMAKENAMES_H