From 78eebcb9f898be3c416c6c4e54ede4e71b084924 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jesu=CC=81s=20A=2E=20A=CC=81lvarez?= Date: Sat, 28 May 2016 23:32:58 +0200 Subject: [PATCH] workaround for loading icons with same name from different bundles --- Mini vMac.xcodeproj/project.pbxproj | 48 +++++++++--------- Mini vMac/MacII/{MacII.png => Icon.png} | Bin Mini vMac/MacII/{MacII@2x.png => Icon@2x.png} | Bin Mini vMac/MacII/{MacII@3x.png => Icon@3x.png} | Bin Mini vMac/MacII/Info.plist | 2 - Mini vMac/MacPlus4M/{MacPlus.png => Icon.png} | Bin .../MacPlus4M/{MacPlus@2x.png => Icon@2x.png} | Bin .../MacPlus4M/{MacPlus@3x.png => Icon@3x.png} | Bin Mini vMac/MacPlus4M/Info.plist | 2 - Mini vMac/SettingsViewController.m | 5 +- 10 files changed, 27 insertions(+), 30 deletions(-) rename Mini vMac/MacII/{MacII.png => Icon.png} (100%) rename Mini vMac/MacII/{MacII@2x.png => Icon@2x.png} (100%) rename Mini vMac/MacII/{MacII@3x.png => Icon@3x.png} (100%) rename Mini vMac/MacPlus4M/{MacPlus.png => Icon.png} (100%) rename Mini vMac/MacPlus4M/{MacPlus@2x.png => Icon@2x.png} (100%) rename Mini vMac/MacPlus4M/{MacPlus@3x.png => Icon@3x.png} (100%) diff --git a/Mini vMac.xcodeproj/project.pbxproj b/Mini vMac.xcodeproj/project.pbxproj index 6b62bac..cc7bd08 100644 --- a/Mini vMac.xcodeproj/project.pbxproj +++ b/Mini vMac.xcodeproj/project.pbxproj @@ -45,12 +45,12 @@ 283423E01CF9C66D0088B634 /* VIA2EMDV.c in Sources */ = {isa = PBXBuildFile; fileRef = 283423591CF9C0F10088B634 /* VIA2EMDV.c */; }; 283423E11CF9C66D0088B634 /* VIAEMDEV.c in Sources */ = {isa = PBXBuildFile; fileRef = 2834235B1CF9C0F10088B634 /* VIAEMDEV.c */; }; 283423E21CF9C66D0088B634 /* VIDEMDEV.c in Sources */ = {isa = PBXBuildFile; fileRef = 2834235D1CF9C0F10088B634 /* VIDEMDEV.c */; }; - 283423E91CFA32870088B634 /* MacPlus.png in Resources */ = {isa = PBXBuildFile; fileRef = 283423E31CFA32800088B634 /* MacPlus.png */; }; - 283423EA1CFA32870088B634 /* MacPlus@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 283423E41CFA32800088B634 /* MacPlus@2x.png */; }; - 283423EB1CFA32870088B634 /* MacPlus@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 283423E51CFA32800088B634 /* MacPlus@3x.png */; }; - 283423EF1CFA329C0088B634 /* MacII.png in Resources */ = {isa = PBXBuildFile; fileRef = 283423EC1CFA329C0088B634 /* MacII.png */; }; - 283423F01CFA329C0088B634 /* MacII@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 283423ED1CFA329C0088B634 /* MacII@2x.png */; }; - 283423F11CFA329C0088B634 /* MacII@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 283423EE1CFA329C0088B634 /* MacII@3x.png */; }; + 283423E91CFA32870088B634 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 283423E31CFA32800088B634 /* Icon.png */; }; + 283423EA1CFA32870088B634 /* Icon@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 283423E41CFA32800088B634 /* Icon@2x.png */; }; + 283423EB1CFA32870088B634 /* Icon@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 283423E51CFA32800088B634 /* Icon@3x.png */; }; + 283423EF1CFA329C0088B634 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 283423EC1CFA329C0088B634 /* Icon.png */; }; + 283423F01CFA329C0088B634 /* Icon@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 283423ED1CFA329C0088B634 /* Icon@2x.png */; }; + 283423F11CFA329C0088B634 /* Icon@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 283423EE1CFA329C0088B634 /* Icon@3x.png */; }; 28848B621CDE97D600B86C45 /* InsertDiskViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 28848B611CDE97D600B86C45 /* InsertDiskViewController.m */; }; 28848B651CDE97E900B86C45 /* SettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 28848B641CDE97E900B86C45 /* SettingsViewController.m */; }; 28BA897E1CE7315400A98104 /* KBKey.m in Sources */ = {isa = PBXBuildFile; fileRef = 28BA89751CE7315400A98104 /* KBKey.m */; }; @@ -225,12 +225,12 @@ 2834239A1CF9C5380088B634 /* CNFGRAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CNFGRAPI.h; sourceTree = ""; }; 2834239B1CF9C5380088B634 /* EMCONFIG.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EMCONFIG.h; sourceTree = ""; }; 2834239C1CF9C5380088B634 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 283423E31CFA32800088B634 /* MacPlus.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = MacPlus.png; sourceTree = ""; }; - 283423E41CFA32800088B634 /* MacPlus@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "MacPlus@2x.png"; sourceTree = ""; }; - 283423E51CFA32800088B634 /* MacPlus@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "MacPlus@3x.png"; sourceTree = ""; }; - 283423EC1CFA329C0088B634 /* MacII.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = MacII.png; sourceTree = ""; }; - 283423ED1CFA329C0088B634 /* MacII@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "MacII@2x.png"; sourceTree = ""; }; - 283423EE1CFA329C0088B634 /* MacII@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "MacII@3x.png"; sourceTree = ""; }; + 283423E31CFA32800088B634 /* Icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Icon.png; sourceTree = ""; }; + 283423E41CFA32800088B634 /* Icon@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon@2x.png"; sourceTree = ""; }; + 283423E51CFA32800088B634 /* Icon@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon@3x.png"; sourceTree = ""; }; + 283423EC1CFA329C0088B634 /* Icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Icon.png; sourceTree = ""; }; + 283423ED1CFA329C0088B634 /* Icon@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon@2x.png"; sourceTree = ""; }; + 283423EE1CFA329C0088B634 /* Icon@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon@3x.png"; sourceTree = ""; }; 28848B601CDE97D600B86C45 /* InsertDiskViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InsertDiskViewController.h; sourceTree = ""; }; 28848B611CDE97D600B86C45 /* InsertDiskViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InsertDiskViewController.m; sourceTree = ""; }; 28848B631CDE97E900B86C45 /* SettingsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SettingsViewController.h; sourceTree = ""; }; @@ -362,9 +362,9 @@ 283422E81CF8F1C80088B634 /* CNFGRAPI.h */, 283422E91CF8F1C80088B634 /* EMCONFIG.h */, 283422CE1CF8EF8C0088B634 /* Info.plist */, - 283423E31CFA32800088B634 /* MacPlus.png */, - 283423E41CFA32800088B634 /* MacPlus@2x.png */, - 283423E51CFA32800088B634 /* MacPlus@3x.png */, + 283423E31CFA32800088B634 /* Icon.png */, + 283423E41CFA32800088B634 /* Icon@2x.png */, + 283423E51CFA32800088B634 /* Icon@3x.png */, ); path = MacPlus4M; sourceTree = ""; @@ -466,9 +466,9 @@ 2834239A1CF9C5380088B634 /* CNFGRAPI.h */, 2834239B1CF9C5380088B634 /* EMCONFIG.h */, 2834239C1CF9C5380088B634 /* Info.plist */, - 283423EC1CFA329C0088B634 /* MacII.png */, - 283423ED1CFA329C0088B634 /* MacII@2x.png */, - 283423EE1CFA329C0088B634 /* MacII@3x.png */, + 283423EC1CFA329C0088B634 /* Icon.png */, + 283423ED1CFA329C0088B634 /* Icon@2x.png */, + 283423EE1CFA329C0088B634 /* Icon@3x.png */, ); path = MacII; sourceTree = ""; @@ -809,9 +809,9 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 283423E91CFA32870088B634 /* MacPlus.png in Resources */, - 283423EA1CFA32870088B634 /* MacPlus@2x.png in Resources */, - 283423EB1CFA32870088B634 /* MacPlus@3x.png in Resources */, + 283423E91CFA32870088B634 /* Icon.png in Resources */, + 283423EA1CFA32870088B634 /* Icon@2x.png in Resources */, + 283423EB1CFA32870088B634 /* Icon@3x.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -819,9 +819,9 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 283423EF1CFA329C0088B634 /* MacII.png in Resources */, - 283423F01CFA329C0088B634 /* MacII@2x.png in Resources */, - 283423F11CFA329C0088B634 /* MacII@3x.png in Resources */, + 283423EF1CFA329C0088B634 /* Icon.png in Resources */, + 283423F01CFA329C0088B634 /* Icon@2x.png in Resources */, + 283423F11CFA329C0088B634 /* Icon@3x.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Mini vMac/MacII/MacII.png b/Mini vMac/MacII/Icon.png similarity index 100% rename from Mini vMac/MacII/MacII.png rename to Mini vMac/MacII/Icon.png diff --git a/Mini vMac/MacII/MacII@2x.png b/Mini vMac/MacII/Icon@2x.png similarity index 100% rename from Mini vMac/MacII/MacII@2x.png rename to Mini vMac/MacII/Icon@2x.png diff --git a/Mini vMac/MacII/MacII@3x.png b/Mini vMac/MacII/Icon@3x.png similarity index 100% rename from Mini vMac/MacII/MacII@3x.png rename to Mini vMac/MacII/Icon@3x.png diff --git a/Mini vMac/MacII/Info.plist b/Mini vMac/MacII/Info.plist index ced6acd..6704a58 100644 --- a/Mini vMac/MacII/Info.plist +++ b/Mini vMac/MacII/Info.plist @@ -26,7 +26,5 @@ $(CURRENT_PROJECT_VERSION) NSPrincipalClass Emulator - CFBundleIconFile - MacII.png diff --git a/Mini vMac/MacPlus4M/MacPlus.png b/Mini vMac/MacPlus4M/Icon.png similarity index 100% rename from Mini vMac/MacPlus4M/MacPlus.png rename to Mini vMac/MacPlus4M/Icon.png diff --git a/Mini vMac/MacPlus4M/MacPlus@2x.png b/Mini vMac/MacPlus4M/Icon@2x.png similarity index 100% rename from Mini vMac/MacPlus4M/MacPlus@2x.png rename to Mini vMac/MacPlus4M/Icon@2x.png diff --git a/Mini vMac/MacPlus4M/MacPlus@3x.png b/Mini vMac/MacPlus4M/Icon@3x.png similarity index 100% rename from Mini vMac/MacPlus4M/MacPlus@3x.png rename to Mini vMac/MacPlus4M/Icon@3x.png diff --git a/Mini vMac/MacPlus4M/Info.plist b/Mini vMac/MacPlus4M/Info.plist index 721411f..1587422 100644 --- a/Mini vMac/MacPlus4M/Info.plist +++ b/Mini vMac/MacPlus4M/Info.plist @@ -26,7 +26,5 @@ $(CURRENT_PROJECT_VERSION) NSPrincipalClass Emulator - CFBundleIconFile - MacPlus.png diff --git a/Mini vMac/SettingsViewController.m b/Mini vMac/SettingsViewController.m index 9955817..f902550 100644 --- a/Mini vMac/SettingsViewController.m +++ b/Mini vMac/SettingsViewController.m @@ -169,8 +169,9 @@ typedef enum : NSInteger { cell = [tableView dequeueReusableCellWithIdentifier:@"machine" forIndexPath:indexPath]; cell.textLabel.text = [bundle objectForInfoDictionaryKey:@"CFBundleDisplayName"]; cell.detailTextLabel.text = [bundle objectForInfoDictionaryKey:@"CFBundleGetInfoString"]; - NSString *iconName = [bundle objectForInfoDictionaryKey:@"CFBundleIconFile"]; - cell.imageView.image = [UIImage imageNamed:iconName inBundle:bundle compatibleWithTraitCollection:nil]; + NSAssert([bundle.bundlePath hasPrefix:[NSBundle mainBundle].bundlePath], @"emulator bundle is in main bundle"); + NSString *iconName = [[bundle.bundlePath stringByAppendingPathComponent:@"Icon"] substringFromIndex:[NSBundle mainBundle].bundlePath.length+1]; + cell.imageView.image = [UIImage imageNamed:iconName]; BOOL selected = [[defaults stringForKey:@"machine"] isEqualToString:bundleName]; cell.accessoryType = selected ? UITableViewCellAccessoryCheckmark : UITableViewCellAccessoryNone; } else if (section == SettingsSectionAbout) {