@@ -34,14 +34,25 @@ public class Controller {
3434 @ SuppressWarnings ("unchecked" )
3535 @ FXML
3636 public void initialize () {
37- ObservableList iPhones = FXCollections .observableArrayList ("iPhone 5s (GSM)" , "iPhone 5s (Global)" ,
37+ ObservableList iPhones = FXCollections .observableArrayList ("iPhone 3G[S]" , "iPhone 4 (GSM)" ,
38+ "iPhone 4 (GSM 2012)" , "iPhone 4 (CDMA)" , "iPhone 4[S]" , "iPhone 5 (GSM)" , "iPhone 5 (Global)" ,
39+ "iPhone 5c (GSM)" , "iPhone 5c (Global)" , "iPhone 5s (GSM)" , "iPhone 5s (Global)" ,
3840 "iPhone 6+ " , "iPhone 6" , "iPhone 6s" , "iPhone 6s+" , "iPhone SE" , "iPhone 7 (Global)(iPhone9,1)" ,
3941 "iPhone 7+ (Global)(iPhone9,2)" , "iPhone 7 (GSM)(iPhone9,3)" , "iPhone 7+ (GSM)(iPhone9,4)" ,
40- "iPhone 8 (iPhone10,1)" , "iPhone 8+ (iPhone10,2)" , "iPhone X (iPhone10,3)" , "iPhone 8 (iPhone10,4)" , "iPhone 8+ (iPhone10,5)" , "iPhone X (iPhone10,6)" );
41- ObservableList iPods = FXCollections .observableArrayList ();
42- ObservableList iPads = FXCollections .observableArrayList ();
43- ObservableList AppleTVs = FXCollections .observableArrayList ();
44- deviceTypeChoiceBox .setItems (FXCollections .observableArrayList ("iPhone" , "iPod(not supported yet)" , "iPad(not supported yet)" , "AppleTV(not supported yet)" ));
42+ "iPhone 8 (iPhone10,1)" , "iPhone 8+ (iPhone10,2)" , "iPhone X (iPhone10,3)" , "iPhone 8 (iPhone10,4)" ,
43+ "iPhone 8+ (iPhone10,5)" , "iPhone X (iPhone10,6)" );
44+ ObservableList iPods = FXCollections .observableArrayList ("iPod Touch 3" , "iPod Touch 4" , "iPod Touch 5" , "iPod Touch 6" );
45+ ObservableList iPads = FXCollections .observableArrayList ("iPad 1" , "iPad 2 (WiFi)" , "iPad 2 (GSM)" ,
46+ "iPad 2 (CDMA)" , "iPad 2 (Mid 2012)" , "iPad Mini (Wifi)" , "iPad Mini (GSM)" , "iPad Mini (Global)" ,
47+ "iPad 3 (WiFi)" , "iPad 3 (CDMA)" , "iPad 3 (GSM)" , "iPad 4 (WiFi)" , "iPad 4 (GSM)" , "iPad 4 (Global)" ,
48+ "iPad Air (Wifi)" , "iPad Air (Cellular)" , "iPad Air (China)" , "iPad Mini 2 (WiFi)" , "iPad Mini 2 (Cellular)" ,
49+ "iPad Mini 2 (China)" , "iPad Mini 3 (WiFi)" , "iPad Mini 3 (Cellular)" , "iPad Mini 3 (China)" ,
50+ "iPad Mini 4 (Wifi)" , "iPad Mini 4 (Cellular)" , "iPad Air 2 (WiFi)" , "iPad Air 2 (Cellular)" ,
51+ "iPad Pro 9.7 (Wifi)" , "iPad Pro 9.7 (Cellular)" , "iPad Pro 12.9 (WiFi)" , "iPad Pro 12.9 (Cellular)" ,
52+ "iPad 5 (Wifi)" , "iPad 5 (Cellular)" , "iPad Pro 2 12.9 (WiFi)(iPad7,1)" , "iPad Pro 2 12.9 (Cellular)(iPad7,2)" ,
53+ "iPad Pro 10.5 (WiFi)(iPad7,3)" , "iPad 10.5 (Cellular)(iPad7,4)" , "iPad 6 (WiFi)(iPad 7,5)" , "iPad 6 (Cellular)(iPad7,6)" );
54+ ObservableList AppleTVs = FXCollections .observableArrayList ("Apple TV 2G" , "Apple TV 3" , "Apple TV 3 (2013)" , "Apple TV 4 (2015)" , "Apple TV 4K" );
55+ deviceTypeChoiceBox .setItems (FXCollections .observableArrayList ("iPhone" , "iPod" , "iPad" , "AppleTV" ));
4556
4657 deviceTypeChoiceBox .getSelectionModel ().selectedItemProperty ().addListener ((ObservableValue observable , Object oldValue , Object newValue ) -> {
4758 String v = (String ) newValue ;
@@ -50,15 +61,15 @@ public void initialize() {
5061 deviceModelChoiceBox .setItems (iPhones );
5162 versionLabel .setText ("iOS Version" );
5263 break ;
53- case "iPod(not supported yet) " :
64+ case "iPod" :
5465 deviceModelChoiceBox .setItems (iPods );
5566 versionLabel .setText ("iOS Version" );
5667 break ;
57- case "iPad(not supported yet) " :
68+ case "iPad" :
5869 deviceModelChoiceBox .setItems (iPads );
5970 versionLabel .setText ("iOS Version" );
6071 break ;
61- case "AppleTV(not supported yet) " :
72+ case "AppleTV" :
6273 deviceModelChoiceBox .setItems (AppleTVs );
6374 versionLabel .setText ("tvOS Version" );
6475 break ;
@@ -207,6 +218,33 @@ public void go() {
207218 }
208219 String deviceModel = (String ) deviceModelChoiceBox .getValue ();
209220 switch (deviceModel ) {
221+ case "iPhone 3G[S]" :
222+ run ("iPhone2,1" );
223+ break ;
224+ case "iPhone 4 (GSM)" :
225+ run ("iPhone3,1" );
226+ break ;
227+ case "iPhone 4 (GSM 2012)" :
228+ run ("iPhone3,2" );
229+ break ;
230+ case "iPhone 4 (CDMA)" :
231+ run ("iPhone3,3" );
232+ break ;
233+ case "iPhone 4[S]" :
234+ run ("iPhone4,1" );
235+ break ;
236+ case "iPhone 5 (GSM)" :
237+ run ("iPhone5,1" );
238+ break ;
239+ case "iPhone 5 (Global)" :
240+ run ("iPhone5,2" );
241+ break ;
242+ case "iPhone 5c (GSM)" :
243+ run ("iPhone5,3" );
244+ break ;
245+ case "iPhone 5c (Global)" :
246+ run ("iPhone5,4" );
247+ break ;
210248 case "iPhone 5s (GSM)" :
211249 run ("iPhone6,1" );
212250 break ;
@@ -257,8 +295,153 @@ public void go() {
257295 break ;
258296 case "iPhone X (iPhone10,6)" :
259297 run ("iPhone10,6" );
298+ break ;
299+ case "iPod Touch 3" :
300+ run ("iPod3,1" );
301+ break ;
302+ case "iPod Touch 4" :
303+ run ("iPod4,1" );
304+ break ;
305+ case "iPod Touch 5" :
306+ run ("iPod5,1" );
307+ break ;
308+ case "iPod Touch 6" :
309+ run ("iPod7,1" );
310+ break ;
311+ case "Apple TV 2G" :
312+ run ("AppleTV2,1" );
313+ break ;
314+ case "Apple TV 3" :
315+ run ("AppleTV3,1" );
316+ break ;
317+ case "Apple TV 3 (2013)" :
318+ run ("AppleTV3,2" );
319+ break ;
320+ case "Apple TV 4 (2015)" :
321+ run ("AppleTV5,3" );
322+ break ;
323+ case "Apple TV 4K" :
324+ run ("AppleTV6,2" );
325+ break ;
326+ case "iPad 1" :
327+ run ("iPad1,1" );
328+ break ;
329+ case "iPad 2 (WiFi)" :
330+ run ("iPad2,1" );
331+ break ;
332+ case "iPad 2 (GSM)" :
333+ run ("iPad2,2" );
334+ break ;
335+ case "iPad 2 (CDMA)" :
336+ run ("iPad2,3" );
337+ break ;
338+ case "iPad 2 (Mid 2012)" :
339+ run ("iPad2,4" );
340+ break ;
341+ case "iPad Mini (Wifi)" :
342+ run ("iPad2,5" );
343+ break ;
344+ case "iPad Mini (GSM)" :
345+ run ("iPad2,6" );
346+ break ;
347+ case "iPad Mini (Global)" :
348+ run ("iPad2,7" );
349+ break ;
350+ case "iPad 3 (WiFi)" :
351+ run ("iPad3,1" );
352+ break ;
353+ case "iPad 3 (CDMA)" :
354+ run ("iPad3,2" );
355+ break ;
356+ case "iPad 3 (GSM)" :
357+ run ("iPad3,3" );
358+ break ;
359+ case "iPad 4 (WiFi)" :
360+ run ("iPad3,4" );
361+ break ;
362+ case "iPad 4 (GSM)" :
363+ run ("iPad3,5" );
364+ break ;
365+ case "iPad 4 (Global)" :
366+ run ("iPad3,6" );
367+ break ;
368+ case "iPad Air (Wifi)" :
369+ run ("iPad4,1" );
370+ break ;
371+ case "iPad Air (Cellular)" :
372+ run ("iPad4,2" );
373+ break ;
374+ case "iPad Air (China)" :
375+ run ("iPad4,3" );
376+ break ;
377+ case "iPad Mini 2 (WiFi)" :
378+ run ("iPad4,4" );
379+ break ;
380+ case "iPad Mini 2 (Cellular)" :
381+ run ("iPad4,5" );
382+ break ;
383+ case "iPad Mini 2 (China)" :
384+ run ("iPad4,6" );
385+ break ;
386+ case "iPad Mini 3 (WiFi)" :
387+ run ("iPad4,7" );
388+ break ;
389+ case "iPad Mini 3 (Cellular)" :
390+ run ("iPad4,8" );
391+ break ;
392+ case "iPad Mini 3 (China)" :
393+ run ("iPad4,9" );
394+ break ;
395+ case "iPad Mini 4 (Wifi)" :
396+ run ("iPad5,1" );
397+ break ;
398+ case "iPad Mini 4 (Cellular)" :
399+ run ("iPad5,2" );
400+ break ;
401+ case "iPad Air 2 (WiFi)" :
402+ run ("iPad5,3" );
403+ break ;
404+ case "iPad Air 2 (Cellular)" :
405+ run ("iPad5,4" );
406+ break ;
407+ case "iPad Pro 9.7 (Wifi)" :
408+ run ("iPad6,3" );
409+ break ;
410+ case "iPad Pro 9.7 (Cellular)" :
411+ run ("iPad6,4" );
412+ break ;
413+ case "iPad Pro 12.9 (WiFi)" :
414+ run ("iPad6,7" );
415+ break ;
416+ case "iPad Pro 12.9 (Cellular)" :
417+ run ("iPad6,8" );
418+ break ;
419+ case "iPad 5 (Wifi)" :
420+ run ("iPad6,11" );
421+ break ;
422+ case "iPad 5 (Cellular)" :
423+ run ("iPad6,12" );
424+ break ;
425+ case "iPad Pro 2 12.9 (WiFi)(iPad7,1)" :
426+ run ("iPad7,1" );
427+ break ;
428+ case "iPad Pro 2 12.9 (Cellular)(iPad7,2)" :
429+ run ("iPad7,2" );
430+ break ;
431+ case "iPad Pro 10.5 (WiFi)(iPad7,3)" :
432+ run ("iPad7,3" );
433+ break ;
434+ case "iPad 10.5 (Cellular)(iPad7,4)" :
435+ run ("iPad7,4" );
436+ break ;
437+ case "iPad 6 (WiFi)(iPad 7,5)" :
438+ run ("iPad7,6" );
439+ break ;
440+ case "iPad 6 (Cellular)(iPad7,6)" :
441+ run ("iPad7,6" );
442+ break ;
260443 default :
261- System .out .print ("" );
444+ System .out .print ("" ); // TODO: Show an error
262445 break ;
263446 }
264447 }
0 commit comments