Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

inital import

  • Loading branch information...
commit 2f389f624cd2b426af2589c7164bbd0f339d7881 1 parent e81cc3f
@weissi authored
View
BIN  Croatia.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  Czech_Republic.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  Denmark.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  England.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
206 EuroCopaInfo.xcodeproj/project.pbxproj
@@ -13,19 +13,101 @@
DA722ABA15592B9600006D36 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = DA722AB815592B9600006D36 /* InfoPlist.strings */; };
DA722ABC15592B9600006D36 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = DA722ABB15592B9600006D36 /* main.m */; };
DA722AC015592B9600006D36 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = DA722ABF15592B9600006D36 /* AppDelegate.m */; };
+ DA722AD515592C1100006D36 /* InfoCategoriesViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DA722AD415592C1100006D36 /* InfoCategoriesViewController.m */; };
+ DA722AD615592D0300006D36 /* libFRLayeredNavigationController.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DA722AD015592BB700006D36 /* libFRLayeredNavigationController.a */; settings = {ATTRIBUTES = (Required, ); }; };
+ DA722ADC15592E3100006D36 /* StadiumsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DA722ADB15592E3100006D36 /* StadiumsViewController.m */; };
+ DA722ADF15592EB100006D36 /* Stadiums.plist in Resources */ = {isa = PBXBuildFile; fileRef = DA722ADE15592EB100006D36 /* Stadiums.plist */; };
+ DA722AE21559305F00006D36 /* TablePListDAO.m in Sources */ = {isa = PBXBuildFile; fileRef = DA722AE11559305F00006D36 /* TablePListDAO.m */; };
+ DA722AE71559387700006D36 /* URLWebViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DA722AE61559387700006D36 /* URLWebViewController.m */; };
+ DA84BDF815597BBE00C7D7A2 /* Croatia.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDE815597BBE00C7D7A2 /* Croatia.png */; };
+ DA84BDF915597BBF00C7D7A2 /* Denmark.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDE915597BBE00C7D7A2 /* Denmark.png */; };
+ DA84BDFA15597BBF00C7D7A2 /* England.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDEA15597BBE00C7D7A2 /* England.png */; };
+ DA84BDFB15597BBF00C7D7A2 /* France.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDEB15597BBE00C7D7A2 /* France.png */; };
+ DA84BDFC15597BBF00C7D7A2 /* Germany.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDEC15597BBE00C7D7A2 /* Germany.png */; };
+ DA84BDFD15597BBF00C7D7A2 /* Greece.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDED15597BBE00C7D7A2 /* Greece.png */; };
+ DA84BDFE15597BBF00C7D7A2 /* Ireland.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDEE15597BBE00C7D7A2 /* Ireland.png */; };
+ DA84BDFF15597BBF00C7D7A2 /* Italy.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDEF15597BBE00C7D7A2 /* Italy.png */; };
+ DA84BE0015597BBF00C7D7A2 /* Poland.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDF015597BBE00C7D7A2 /* Poland.png */; };
+ DA84BE0115597BBF00C7D7A2 /* Portugal.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDF115597BBE00C7D7A2 /* Portugal.png */; };
+ DA84BE0215597BBF00C7D7A2 /* Russia.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDF215597BBE00C7D7A2 /* Russia.png */; };
+ DA84BE0315597BBF00C7D7A2 /* Spain.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDF315597BBE00C7D7A2 /* Spain.png */; };
+ DA84BE0415597BBF00C7D7A2 /* Sweden.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDF415597BBE00C7D7A2 /* Sweden.png */; };
+ DA84BE0515597BBF00C7D7A2 /* Czech_Republic.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDF515597BBE00C7D7A2 /* Czech_Republic.png */; };
+ DA84BE0615597BBF00C7D7A2 /* Netherlands.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDF615597BBE00C7D7A2 /* Netherlands.png */; };
+ DA84BE0715597BBF00C7D7A2 /* Ukraine.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BDF715597BBE00C7D7A2 /* Ukraine.png */; };
+ DA84BE0915597C1500C7D7A2 /* Teams.plist in Resources */ = {isa = PBXBuildFile; fileRef = DA84BE0815597C1500C7D7A2 /* Teams.plist */; };
+ DA84BE0D15597E7F00C7D7A2 /* TeamsViewController.h in Resources */ = {isa = PBXBuildFile; fileRef = DA84BE0C15597E7F00C7D7A2 /* TeamsViewController.h */; };
+ DA84BE0F15597E9400C7D7A2 /* TeamsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DA84BE0E15597E9400C7D7A2 /* TeamsViewController.m */; };
+ DA84BE15155989D200C7D7A2 /* teams.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BE13155989D200C7D7A2 /* teams.png */; };
+ DA84BE16155989D200C7D7A2 /* stadiums.png in Resources */ = {isa = PBXBuildFile; fileRef = DA84BE14155989D200C7D7A2 /* stadiums.png */; };
/* End PBXBuildFile section */
+/* Begin PBXContainerItemProxy section */
+ DA722ACF15592BB700006D36 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = DA722AC615592BB600006D36 /* FRLayeredNavigationController.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = DA4FACC615591AB300D85A7E;
+ remoteInfo = FRLayeredNavigationController;
+ };
+ DA722AD115592BB700006D36 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = DA722AC615592BB600006D36 /* FRLayeredNavigationController.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = DA4FAD0215591BD500D85A7E;
+ remoteInfo = FRLayeredNavigationControllerDemo;
+ };
+ DA722AE31559340F00006D36 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = DA722AC615592BB600006D36 /* FRLayeredNavigationController.xcodeproj */;
+ proxyType = 1;
+ remoteGlobalIDString = DA4FACC515591AB300D85A7E;
+ remoteInfo = FRLayeredNavigationController;
+ };
+/* End PBXContainerItemProxy section */
+
/* Begin PBXFileReference section */
DA722AAB15592B9600006D36 /* EuroCopaInfo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = EuroCopaInfo.app; sourceTree = BUILT_PRODUCTS_DIR; };
DA722AAF15592B9600006D36 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
DA722AB115592B9600006D36 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
DA722AB315592B9600006D36 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
- DA722AB715592B9600006D36 /* EuroCopaInfo-Info.plist */ = {isa = PBXFileReference; path = "EuroCopaInfo-Info.plist"; sourceTree = "<group>"; };
+ DA722AB715592B9600006D36 /* EuroCopaInfo-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "EuroCopaInfo-Info.plist"; sourceTree = "<group>"; };
DA722AB915592B9600006D36 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
DA722ABB15592B9600006D36 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
- DA722ABD15592B9600006D36 /* EuroCopaInfo-Prefix.pch */ = {isa = PBXFileReference; path = "EuroCopaInfo-Prefix.pch"; sourceTree = "<group>"; };
- DA722ABE15592B9600006D36 /* AppDelegate.h */ = {isa = PBXFileReference; path = AppDelegate.h; sourceTree = "<group>"; };
+ DA722ABD15592B9600006D36 /* EuroCopaInfo-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "EuroCopaInfo-Prefix.pch"; sourceTree = "<group>"; };
+ DA722ABE15592B9600006D36 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
DA722ABF15592B9600006D36 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
+ DA722AC615592BB600006D36 /* FRLayeredNavigationController.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = FRLayeredNavigationController.xcodeproj; path = ../FRLayeredNavigationController/FRLayeredNavigationController.xcodeproj; sourceTree = "<group>"; };
+ DA722AD315592C1100006D36 /* InfoCategoriesViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InfoCategoriesViewController.h; sourceTree = "<group>"; };
+ DA722AD415592C1100006D36 /* InfoCategoriesViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InfoCategoriesViewController.m; sourceTree = "<group>"; };
+ DA722ADA15592E3100006D36 /* StadiumsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StadiumsViewController.h; sourceTree = "<group>"; };
+ DA722ADB15592E3100006D36 /* StadiumsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StadiumsViewController.m; sourceTree = "<group>"; };
+ DA722ADE15592EB100006D36 /* Stadiums.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Stadiums.plist; sourceTree = "<group>"; };
+ DA722AE01559305F00006D36 /* TablePListDAO.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TablePListDAO.h; sourceTree = "<group>"; };
+ DA722AE11559305F00006D36 /* TablePListDAO.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TablePListDAO.m; sourceTree = "<group>"; };
+ DA722AE51559387700006D36 /* URLWebViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = URLWebViewController.h; path = ../../FactisApp/Classes/URLWebViewController.h; sourceTree = "<group>"; };
+ DA722AE61559387700006D36 /* URLWebViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = URLWebViewController.m; path = ../../FactisApp/Classes/URLWebViewController.m; sourceTree = "<group>"; };
+ DA84BDE815597BBE00C7D7A2 /* Croatia.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Croatia.png; sourceTree = "<group>"; };
+ DA84BDE915597BBE00C7D7A2 /* Denmark.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Denmark.png; sourceTree = "<group>"; };
+ DA84BDEA15597BBE00C7D7A2 /* England.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = England.png; sourceTree = "<group>"; };
+ DA84BDEB15597BBE00C7D7A2 /* France.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = France.png; sourceTree = "<group>"; };
+ DA84BDEC15597BBE00C7D7A2 /* Germany.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Germany.png; sourceTree = "<group>"; };
+ DA84BDED15597BBE00C7D7A2 /* Greece.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Greece.png; sourceTree = "<group>"; };
+ DA84BDEE15597BBE00C7D7A2 /* Ireland.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ireland.png; sourceTree = "<group>"; };
+ DA84BDEF15597BBE00C7D7A2 /* Italy.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Italy.png; sourceTree = "<group>"; };
+ DA84BDF015597BBE00C7D7A2 /* Poland.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Poland.png; sourceTree = "<group>"; };
+ DA84BDF115597BBE00C7D7A2 /* Portugal.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Portugal.png; sourceTree = "<group>"; };
+ DA84BDF215597BBE00C7D7A2 /* Russia.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Russia.png; sourceTree = "<group>"; };
+ DA84BDF315597BBE00C7D7A2 /* Spain.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spain.png; sourceTree = "<group>"; };
+ DA84BDF415597BBE00C7D7A2 /* Sweden.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Sweden.png; sourceTree = "<group>"; };
+ DA84BDF515597BBE00C7D7A2 /* Czech_Republic.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Czech_Republic.png; sourceTree = "<group>"; };
+ DA84BDF615597BBE00C7D7A2 /* Netherlands.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Netherlands.png; sourceTree = "<group>"; };
+ DA84BDF715597BBE00C7D7A2 /* Ukraine.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ukraine.png; sourceTree = "<group>"; };
+ DA84BE0815597C1500C7D7A2 /* Teams.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Teams.plist; sourceTree = "<group>"; };
+ DA84BE0C15597E7F00C7D7A2 /* TeamsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TeamsViewController.h; sourceTree = "<group>"; };
+ DA84BE0E15597E9400C7D7A2 /* TeamsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TeamsViewController.m; sourceTree = "<group>"; };
+ DA84BE13155989D200C7D7A2 /* teams.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = teams.png; sourceTree = "<group>"; };
+ DA84BE14155989D200C7D7A2 /* stadiums.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = stadiums.png; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@@ -33,6 +115,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
+ DA722AD615592D0300006D36 /* libFRLayeredNavigationController.a in Frameworks */,
DA722AB015592B9600006D36 /* UIKit.framework in Frameworks */,
DA722AB215592B9600006D36 /* Foundation.framework in Frameworks */,
DA722AB415592B9600006D36 /* CoreGraphics.framework in Frameworks */,
@@ -45,9 +128,11 @@
DA722AA015592B9600006D36 = {
isa = PBXGroup;
children = (
+ DA722AC615592BB600006D36 /* FRLayeredNavigationController.xcodeproj */,
DA722AB515592B9600006D36 /* EuroCopaInfo */,
DA722AAE15592B9600006D36 /* Frameworks */,
DA722AAC15592B9600006D36 /* Products */,
+ DA722ADD15592E8D00006D36 /* Resources */,
);
sourceTree = "<group>";
};
@@ -75,6 +160,16 @@
DA722ABE15592B9600006D36 /* AppDelegate.h */,
DA722ABF15592B9600006D36 /* AppDelegate.m */,
DA722AB615592B9600006D36 /* Supporting Files */,
+ DA722AD315592C1100006D36 /* InfoCategoriesViewController.h */,
+ DA722AD415592C1100006D36 /* InfoCategoriesViewController.m */,
+ DA722ADA15592E3100006D36 /* StadiumsViewController.h */,
+ DA722ADB15592E3100006D36 /* StadiumsViewController.m */,
+ DA84BE0C15597E7F00C7D7A2 /* TeamsViewController.h */,
+ DA84BE0E15597E9400C7D7A2 /* TeamsViewController.m */,
+ DA722AE01559305F00006D36 /* TablePListDAO.h */,
+ DA722AE11559305F00006D36 /* TablePListDAO.m */,
+ DA722AE51559387700006D36 /* URLWebViewController.h */,
+ DA722AE61559387700006D36 /* URLWebViewController.m */,
);
path = EuroCopaInfo;
sourceTree = "<group>";
@@ -90,6 +185,42 @@
name = "Supporting Files";
sourceTree = "<group>";
};
+ DA722AC715592BB600006D36 /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ DA722AD015592BB700006D36 /* libFRLayeredNavigationController.a */,
+ DA722AD215592BB700006D36 /* FRLayeredNavigationControllerDemo.app */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ DA722ADD15592E8D00006D36 /* Resources */ = {
+ isa = PBXGroup;
+ children = (
+ DA84BE13155989D200C7D7A2 /* teams.png */,
+ DA84BE14155989D200C7D7A2 /* stadiums.png */,
+ DA84BDE815597BBE00C7D7A2 /* Croatia.png */,
+ DA84BDE915597BBE00C7D7A2 /* Denmark.png */,
+ DA84BDEA15597BBE00C7D7A2 /* England.png */,
+ DA84BDEB15597BBE00C7D7A2 /* France.png */,
+ DA84BDEC15597BBE00C7D7A2 /* Germany.png */,
+ DA84BDED15597BBE00C7D7A2 /* Greece.png */,
+ DA84BDEE15597BBE00C7D7A2 /* Ireland.png */,
+ DA84BDEF15597BBE00C7D7A2 /* Italy.png */,
+ DA84BDF015597BBE00C7D7A2 /* Poland.png */,
+ DA84BDF115597BBE00C7D7A2 /* Portugal.png */,
+ DA84BDF215597BBE00C7D7A2 /* Russia.png */,
+ DA84BDF315597BBE00C7D7A2 /* Spain.png */,
+ DA84BDF415597BBE00C7D7A2 /* Sweden.png */,
+ DA84BDF515597BBE00C7D7A2 /* Czech_Republic.png */,
+ DA84BDF615597BBE00C7D7A2 /* Netherlands.png */,
+ DA84BDF715597BBE00C7D7A2 /* Ukraine.png */,
+ DA722ADE15592EB100006D36 /* Stadiums.plist */,
+ DA84BE0815597C1500C7D7A2 /* Teams.plist */,
+ );
+ name = Resources;
+ sourceTree = "<group>";
+ };
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
@@ -104,6 +235,7 @@
buildRules = (
);
dependencies = (
+ DA722AE41559340F00006D36 /* PBXTargetDependency */,
);
name = EuroCopaInfo;
productName = EuroCopaInfo;
@@ -128,6 +260,12 @@
mainGroup = DA722AA015592B9600006D36;
productRefGroup = DA722AAC15592B9600006D36 /* Products */;
projectDirPath = "";
+ projectReferences = (
+ {
+ ProductGroup = DA722AC715592BB600006D36 /* Products */;
+ ProjectRef = DA722AC615592BB600006D36 /* FRLayeredNavigationController.xcodeproj */;
+ },
+ );
projectRoot = "";
targets = (
DA722AAA15592B9600006D36 /* EuroCopaInfo */,
@@ -135,12 +273,50 @@
};
/* End PBXProject section */
+/* Begin PBXReferenceProxy section */
+ DA722AD015592BB700006D36 /* libFRLayeredNavigationController.a */ = {
+ isa = PBXReferenceProxy;
+ fileType = archive.ar;
+ path = libFRLayeredNavigationController.a;
+ remoteRef = DA722ACF15592BB700006D36 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ DA722AD215592BB700006D36 /* FRLayeredNavigationControllerDemo.app */ = {
+ isa = PBXReferenceProxy;
+ fileType = wrapper.application;
+ path = FRLayeredNavigationControllerDemo.app;
+ remoteRef = DA722AD115592BB700006D36 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+/* End PBXReferenceProxy section */
+
/* Begin PBXResourcesBuildPhase section */
DA722AA915592B9600006D36 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
DA722ABA15592B9600006D36 /* InfoPlist.strings in Resources */,
+ DA722ADF15592EB100006D36 /* Stadiums.plist in Resources */,
+ DA84BDF815597BBE00C7D7A2 /* Croatia.png in Resources */,
+ DA84BDF915597BBF00C7D7A2 /* Denmark.png in Resources */,
+ DA84BDFA15597BBF00C7D7A2 /* England.png in Resources */,
+ DA84BDFB15597BBF00C7D7A2 /* France.png in Resources */,
+ DA84BDFC15597BBF00C7D7A2 /* Germany.png in Resources */,
+ DA84BDFD15597BBF00C7D7A2 /* Greece.png in Resources */,
+ DA84BDFE15597BBF00C7D7A2 /* Ireland.png in Resources */,
+ DA84BDFF15597BBF00C7D7A2 /* Italy.png in Resources */,
+ DA84BE0015597BBF00C7D7A2 /* Poland.png in Resources */,
+ DA84BE0115597BBF00C7D7A2 /* Portugal.png in Resources */,
+ DA84BE0215597BBF00C7D7A2 /* Russia.png in Resources */,
+ DA84BE0315597BBF00C7D7A2 /* Spain.png in Resources */,
+ DA84BE0415597BBF00C7D7A2 /* Sweden.png in Resources */,
+ DA84BE0515597BBF00C7D7A2 /* Czech_Republic.png in Resources */,
+ DA84BE0615597BBF00C7D7A2 /* Netherlands.png in Resources */,
+ DA84BE0715597BBF00C7D7A2 /* Ukraine.png in Resources */,
+ DA84BE0915597C1500C7D7A2 /* Teams.plist in Resources */,
+ DA84BE0D15597E7F00C7D7A2 /* TeamsViewController.h in Resources */,
+ DA84BE15155989D200C7D7A2 /* teams.png in Resources */,
+ DA84BE16155989D200C7D7A2 /* stadiums.png in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -153,11 +329,24 @@
files = (
DA722ABC15592B9600006D36 /* main.m in Sources */,
DA722AC015592B9600006D36 /* AppDelegate.m in Sources */,
+ DA722AD515592C1100006D36 /* InfoCategoriesViewController.m in Sources */,
+ DA722ADC15592E3100006D36 /* StadiumsViewController.m in Sources */,
+ DA722AE21559305F00006D36 /* TablePListDAO.m in Sources */,
+ DA722AE71559387700006D36 /* URLWebViewController.m in Sources */,
+ DA84BE0F15597E9400C7D7A2 /* TeamsViewController.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
+/* Begin PBXTargetDependency section */
+ DA722AE41559340F00006D36 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ name = FRLayeredNavigationController;
+ targetProxy = DA722AE31559340F00006D36 /* PBXContainerItemProxy */;
+ };
+/* End PBXTargetDependency section */
+
/* Begin PBXVariantGroup section */
DA722AB815592B9600006D36 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
@@ -222,7 +411,12 @@
buildSettings = {
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "EuroCopaInfo/EuroCopaInfo-Prefix.pch";
+ HEADER_SEARCH_PATHS = ../FRLayeredNavigationController;
INFOPLIST_FILE = "EuroCopaInfo/EuroCopaInfo-Info.plist";
+ OTHER_LDFLAGS = (
+ "-ObjC",
+ "-all_load",
+ );
PRODUCT_NAME = "$(TARGET_NAME)";
WRAPPER_EXTENSION = app;
};
@@ -233,7 +427,12 @@
buildSettings = {
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "EuroCopaInfo/EuroCopaInfo-Prefix.pch";
+ HEADER_SEARCH_PATHS = ../FRLayeredNavigationController;
INFOPLIST_FILE = "EuroCopaInfo/EuroCopaInfo-Info.plist";
+ OTHER_LDFLAGS = (
+ "-ObjC",
+ "-all_load",
+ );
PRODUCT_NAME = "$(TARGET_NAME)";
WRAPPER_EXTENSION = app;
};
@@ -258,6 +457,7 @@
DA722AC515592B9600006D36 /* Release */,
);
defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
View
12 EuroCopaInfo/AppDelegate.m
@@ -8,6 +8,9 @@
#import "AppDelegate.h"
+#import "FRLayeredNavigationController/FRLayeredNavigationController.h"
+#import "InfoCategoriesViewController.h"
+
@implementation AppDelegate
@synthesize window = _window;
@@ -15,8 +18,13 @@ @implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
- // Override point for customization after application launch.
- self.window.backgroundColor = [UIColor whiteColor];
+ self.window.backgroundColor = [UIColor scrollViewTexturedBackgroundColor];
+
+ InfoCategoriesViewController *icvc = [[InfoCategoriesViewController alloc] init];
+ FRLayeredNavigationController *lnc = [[FRLayeredNavigationController alloc] initWithRootViewController:icvc configuration:^(FRLayeredNavigationItem *item) {
+ item.nextItemDistance = 49;
+ }];
+ self.window.rootViewController = lnc;
[self.window makeKeyAndVisible];
return YES;
}
View
13 EuroCopaInfo/InfoCategoriesViewController.h
@@ -0,0 +1,13 @@
+//
+// InfoCategoriesViewController.h
+// EuroCopaInfo
+//
+// Created by Johannes Weiß on 5/8/12.
+// Copyright (c) 2012 __MyCompanyName__. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+
+@interface InfoCategoriesViewController : UITableViewController
+
+@end
View
177 EuroCopaInfo/InfoCategoriesViewController.m
@@ -0,0 +1,177 @@
+//
+// InfoCategoriesViewController.m
+// EuroCopaInfo
+//
+// Created by Johannes Weiß on 5/8/12.
+// Copyright (c) 2012 __MyCompanyName__. All rights reserved.
+//
+
+#import "InfoCategoriesViewController.h"
+#import "StadiumsViewController.h"
+#import "TeamsViewController.h"
+
+#import "FRLayeredNavigationController/FRLayeredNavigation.h"
+
+@interface InfoCategoriesViewController ()
+
+@end
+
+@implementation InfoCategoriesViewController
+
+- (id)initWithStyle:(UITableViewStyle)style
+{
+ self = [super initWithStyle:style];
+ if (self) {
+ }
+ return self;
+}
+
+- (void)viewDidLoad
+{
+ [super viewDidLoad];
+
+ UITableView *tv = (UITableView *)self.view;
+ tv.backgroundColor = [UIColor scrollViewTexturedBackgroundColor];
+ tv.separatorColor = [UIColor darkGrayColor];
+}
+
+- (void)viewDidUnload
+{
+ [super viewDidUnload];
+ // Release any retained subviews of the main view.
+ // e.g. self.myOutlet = nil;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
+{
+ return YES;
+}
+
+#pragma mark - Table view data source
+
+- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
+{
+ return 2;
+}
+
+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
+{
+ if (section == 0) {
+ return 1;
+ } else {
+ return 2;
+ }
+}
+
+- (NSString *)tableTextAtIndexPath:(NSIndexPath *)indexPath
+{
+ if (indexPath.row == 0) {
+ return @"Stadiums";
+ } else {
+ return @"Teams";
+ }
+}
+
+- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ if (indexPath.section == 0) {
+ return 100;
+ } else {
+ return 64;
+ }
+}
+
+- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ static NSString *TitleCellIdentifier = @"TitleCell";
+ static NSString *ContentCellIdentifier = @"Cell";
+ UITableViewCell *cell;
+
+ if (indexPath.section > 0) {
+ cell = [tableView dequeueReusableCellWithIdentifier:ContentCellIdentifier];
+
+ if (cell == nil) {
+ cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
+ reuseIdentifier:ContentCellIdentifier];
+ }
+ cell.textLabel.text = [self tableTextAtIndexPath:indexPath];
+ NSString *path = [[NSBundle mainBundle] pathForResource:[self tableTextAtIndexPath:indexPath].lowercaseString
+ ofType:@"png"];
+ UIImage *i = [UIImage imageWithContentsOfFile:path];
+ cell.imageView.image = i;
+ } else {
+ cell = [tableView dequeueReusableCellWithIdentifier:TitleCellIdentifier];
+
+ if (cell == nil) {
+ cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
+ reuseIdentifier:ContentCellIdentifier];
+ cell.selectionStyle = UITableViewCellSelectionStyleNone;
+ cell.textLabel.font = [UIFont boldSystemFontOfSize:30];
+ cell.textLabel.textColor = [UIColor whiteColor];
+ cell.textLabel.textAlignment = UITextAlignmentCenter;
+ }
+
+ cell.textLabel.text = @"Euro Copa Info";
+ }
+ return cell;
+}
+
+/*
+// Override to support conditional editing of the table view.
+- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ // Return NO if you do not want the specified item to be editable.
+ return YES;
+}
+*/
+
+/*
+// Override to support editing the table view.
+- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ if (editingStyle == UITableViewCellEditingStyleDelete) {
+ // Delete the row from the data source
+ [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
+ }
+ else if (editingStyle == UITableViewCellEditingStyleInsert) {
+ // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view
+ }
+}
+*/
+
+/*
+// Override to support rearranging the table view.
+- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath
+{
+}
+*/
+
+/*
+// Override to support conditional rearranging of the table view.
+- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ // Return NO if you do not want the item to be re-orderable.
+ return YES;
+}
+*/
+
+#pragma mark - Table view delegate
+
+- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ if (indexPath.section > 0) {
+ UIViewController *vc;
+
+ if (indexPath.row == 0) {
+ vc = [[StadiumsViewController alloc] init];
+ } else {
+ vc = [[TeamsViewController alloc] init];
+ }
+
+ [self.layeredNavigationController pushViewController:vc inFrontOf:self maximumWidth:NO animated:YES configuration:^(FRLayeredNavigationItem *item) {
+ item.nextItemDistance = 44;
+ }];
+ }
+}
+
+@end
View
17 EuroCopaInfo/StadiumsViewController.h
@@ -0,0 +1,17 @@
+//
+// StadiumsViewController.h
+// EuroCopaInfo
+//
+// Created by Johannes Weiß on 5/8/12.
+// Copyright (c) 2012 __MyCompanyName__. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+
+#import "TablePListDAO.h"
+
+@interface StadiumsViewController : UITableViewController {
+ TablePListDAO *dao;
+}
+
+@end
View
152 EuroCopaInfo/StadiumsViewController.m
@@ -0,0 +1,152 @@
+//
+// StadiumsViewController.m
+// EuroCopaInfo
+//
+// Created by Johannes Weiß on 5/8/12.
+// Copyright (c) 2012 __MyCompanyName__. All rights reserved.
+//
+
+#import "StadiumsViewController.h"
+
+#import "URLWebViewController.h"
+#import "FRLayeredNavigationController/FRLayeredNavigation.h"
+
+@interface StadiumsViewController ()
+
+@property (nonatomic, readwrite, retain) TablePListDAO *dao;
+
+@end
+
+@implementation StadiumsViewController
+
+- (id)initWithStyle:(UITableViewStyle)style
+{
+ self = [super initWithStyle:style];
+ if (self) {
+ self.dao = nil;
+ self.title = @"Stadiums";
+ }
+ return self;
+}
+
+- (void)viewDidLoad
+{
+ [super viewDidLoad];
+
+ // Uncomment the following line to preserve selection between presentations.
+ // self.clearsSelectionOnViewWillAppear = NO;
+
+ // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
+ // self.navigationItem.rightBarButtonItem = self.editButtonItem;
+}
+
+- (void)viewDidUnload
+{
+ [super viewDidUnload];
+ // Release any retained subviews of the main view.
+ // e.g. self.myOutlet = nil;
+}
+
+- (void)viewWillAppear:(BOOL)animated {
+ if (self.dao == nil) {
+ self.dao = [[TablePListDAO alloc] initWithLibraryName:@"Stadiums"];
+ }
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
+{
+ return YES;
+}
+
+#pragma mark - Table view data source
+
+- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
+{
+ return [self.dao sectionName:section];
+}
+
+- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
+{
+ return [self.dao sectionCount];
+}
+
+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
+{
+ return [self.dao childrenCountAtSection:section];
+}
+
+- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ static NSString *CellIdentifier = @"Cell";
+ UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
+
+ if (cell == nil) {
+ cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
+ }
+
+ NSDictionary *stadium = [self.dao childItemAtIndexPath:indexPath];
+
+ cell.textLabel.text = [NSString stringWithFormat:@"%@ %@ (%@)",
+ [stadium valueForKey:@"name"],
+ [stadium valueForKey:@"city"],
+ [stadium valueForKey:@"capacity"]];
+
+ return cell;
+}
+
+/*
+// Override to support conditional editing of the table view.
+- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ // Return NO if you do not want the specified item to be editable.
+ return YES;
+}
+*/
+
+/*
+// Override to support editing the table view.
+- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ if (editingStyle == UITableViewCellEditingStyleDelete) {
+ // Delete the row from the data source
+ [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
+ }
+ else if (editingStyle == UITableViewCellEditingStyleInsert) {
+ // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view
+ }
+}
+*/
+
+/*
+// Override to support rearranging the table view.
+- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath
+{
+}
+*/
+
+/*
+// Override to support conditional rearranging of the table view.
+- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ // Return NO if you do not want the item to be re-orderable.
+ return YES;
+}
+*/
+
+#pragma mark - Table view delegate
+
+- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ NSDictionary *stadium = [self.dao childItemAtIndexPath:indexPath];
+ NSURL *url = [NSURL URLWithString:[stadium valueForKey:@"wikipedia-url"]];
+ NSString *name = [NSString stringWithFormat:@"Wikipedia: %@ %@",
+ [stadium valueForKey:@"name"], [stadium valueForKey:@"city"]];
+ URLWebViewController *wvc = [[URLWebViewController alloc] initWithURL:url];
+ wvc.title = name;
+ NSLog(@"stadium url = %@", url);
+ [self.layeredNavigationController pushViewController:wvc inFrontOf:self maximumWidth:YES animated:YES];
+}
+
+@synthesize dao;
+
+@end
View
25 EuroCopaInfo/TablePListDAO.h
@@ -0,0 +1,25 @@
+//
+// StadiumsDAO.h
+// EuroCopaInfo
+//
+// Created by Johannes Weiß on 5/8/12.
+// Copyright (c) 2012 __MyCompanyName__. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+@interface TablePListDAO : NSObject {
+ NSString *plistFile;
+ NSArray *children;
+}
+
+@property (nonatomic, readonly, retain) NSString *plistFile;
+@property (nonatomic, readonly, retain) NSArray *children;
+
+- (id)initWithLibraryName:(NSString *)name;
+- (NSDictionary *)childItemAtIndexPath:(NSIndexPath *)indexPath;
+- (NSInteger)childrenCountAtSection:(NSInteger)section;
+- (NSInteger)sectionCount;
+- (NSString *)sectionName:(NSInteger)section;
+
+@end
View
66 EuroCopaInfo/TablePListDAO.m
@@ -0,0 +1,66 @@
+//
+// StadiumsDAO.m
+// EuroCopaInfo
+//
+// Created by Johannes Weiß on 5/8/12.
+// Copyright (c) 2012 __MyCompanyName__. All rights reserved.
+//
+
+#import "TablePListDAO.h"
+
+@interface TablePListDAO ()
+
+@property (nonatomic, readwrite, retain) NSString *plistFile;
+@property (nonatomic, readwrite, retain) NSArray *children;
+
+@end
+
+@implementation TablePListDAO
+
+- (id)initWithLibraryName:(NSString *)name
+{
+ if (self = [super init]) {
+ self.plistFile = name;
+ self.children = [[NSArray alloc] initWithContentsOfFile:
+ [[NSBundle mainBundle] pathForResource:self.plistFile
+ ofType:@"plist"]];
+ NSLog(@"path: %@", [[NSBundle mainBundle] pathForResource:self.plistFile ofType:@"plist"]);
+ NSAssert(self.children != nil, @"children are nil!?!");
+ }
+ return self;
+}
+
+- (NSDictionary *)sectionItem:(NSInteger)section
+{
+ return [self.children objectAtIndex:section];
+}
+
+- (NSArray *)childrenOfSection:(NSInteger)section
+{
+ return [[self sectionItem:section] valueForKey:@"children"];
+}
+
+- (NSDictionary *)childItemAtIndexPath:(NSIndexPath *)indexPath
+{
+ return [[self childrenOfSection:indexPath.section] objectAtIndex:indexPath.row];
+}
+
+- (NSInteger)childrenCountAtSection:(NSInteger)section
+{
+ return [[self childrenOfSection:section] count];
+}
+
+- (NSInteger)sectionCount
+{
+ return [self.children count];
+}
+
+- (NSString *)sectionName:(NSInteger)section
+{
+ return [[self sectionItem:section] valueForKey:@"name"];
+}
+
+@synthesize plistFile;
+@synthesize children;
+
+@end
View
17 EuroCopaInfo/TeamsViewController.h
@@ -0,0 +1,17 @@
+//
+// TeamsViewController.h
+// EuroCopaInfo
+//
+// Created by Johannes Weiß on 5/8/12.
+// Copyright (c) 2012 __MyCompanyName__. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+
+#import "TablePListDAO.h"
+
+@interface TeamsViewController : UITableViewController {
+ TablePListDAO *dao;
+}
+
+@end
View
149 EuroCopaInfo/TeamsViewController.m
@@ -0,0 +1,149 @@
+//
+// TeamsViewController.m
+// EuroCopaInfo
+//
+// Created by Johannes Weiß on 5/8/12.
+// Copyright (c) 2012 __MyCompanyName__. All rights reserved.
+//
+
+#import "TeamsViewController.h"
+
+#import "URLWebViewController.h"
+#import "FRLayeredNavigationController/FRLayeredNavigation.h"
+
+@interface TeamsViewController ()
+
+@property (nonatomic, readwrite, retain) TablePListDAO *dao;
+
+@end
+
+@implementation TeamsViewController
+
+- (id)initWithStyle:(UITableViewStyle)style
+{
+ self = [super initWithStyle:style];
+ if (self) {
+ self.dao = nil;
+ self.title = @"Teams";
+ }
+ return self;
+}
+
+- (void)viewDidLoad
+{
+ [super viewDidLoad];
+
+ // Uncomment the following line to preserve selection between presentations.
+ // self.clearsSelectionOnViewWillAppear = NO;
+
+ // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
+ // self.navigationItem.rightBarButtonItem = self.editButtonItem;
+}
+
+- (void)viewDidUnload
+{
+ [super viewDidUnload];
+ // Release any retained subviews of the main view.
+ // e.g. self.myOutlet = nil;
+}
+
+- (void)viewWillAppear:(BOOL)animated {
+ if (self.dao == nil) {
+ self.dao = [[TablePListDAO alloc] initWithLibraryName:@"Teams"];
+ }
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
+{
+ return YES;
+}
+
+#pragma mark - Table view data source
+
+- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
+{
+ return [self.dao sectionName:section];
+}
+
+- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
+{
+ return [self.dao sectionCount];
+}
+
+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
+{
+ return [self.dao childrenCountAtSection:section];
+}
+
+- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ static NSString *CellIdentifier = @"Cell";
+ UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
+
+ if (cell == nil) {
+ cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
+ }
+
+ NSDictionary *item = [self.dao childItemAtIndexPath:indexPath];
+
+ cell.textLabel.text = [item valueForKey:@"name"];
+ NSString *path = [[NSBundle mainBundle] pathForResource:[item valueForKey:@"icon"] ofType:@""];
+ UIImage *i = [UIImage imageWithContentsOfFile:path];
+ cell.imageView.image = i;
+ return cell;
+}
+
+/*
+// Override to support conditional editing of the table view.
+- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ // Return NO if you do not want the specified item to be editable.
+ return YES;
+}
+*/
+
+/*
+// Override to support editing the table view.
+- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ if (editingStyle == UITableViewCellEditingStyleDelete) {
+ // Delete the row from the data source
+ [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
+ }
+ else if (editingStyle == UITableViewCellEditingStyleInsert) {
+ // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view
+ }
+}
+*/
+
+/*
+// Override to support rearranging the table view.
+- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath
+{
+}
+*/
+
+/*
+// Override to support conditional rearranging of the table view.
+- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ // Return NO if you do not want the item to be re-orderable.
+ return YES;
+}
+*/
+
+#pragma mark - Table view delegate
+
+- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
+{
+ NSDictionary *stadium = [self.dao childItemAtIndexPath:indexPath];
+ NSURL *url = [NSURL URLWithString:[stadium valueForKey:@"wikipedia-url"]];
+ NSString *name = [NSString stringWithFormat:@"Wikipedia: %@ national football team", [stadium valueForKey:@"name"]];
+ URLWebViewController *wvc = [[URLWebViewController alloc] initWithURL:url];
+ wvc.title = name;
+ [self.layeredNavigationController pushViewController:wvc inFrontOf:self maximumWidth:YES animated:YES];
+}
+
+@synthesize dao;
+
+@end
View
BIN  France.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  Germany.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  Greece.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  Ireland.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  Italy.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  Netherlands.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  Poland.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  Portugal.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  Russia.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  Spain.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
100 Stadiums.plist
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<array>
+ <dict>
+ <key>name</key>
+ <string>Poland</string>
+ <key>children</key>
+ <array>
+ <dict>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/National_Stadium,_Warsaw</string>
+ <key>name</key>
+ <string>National Stadium</string>
+ <key>city</key>
+ <string>Warsaw</string>
+ <key>capacity</key>
+ <integer>50000</integer>
+ </dict>
+ <dict>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/PGE_Arena_Gda%C5%84sk</string>
+ <key>name</key>
+ <string>PGE Arena</string>
+ <key>city</key>
+ <string>Gdańsk</string>
+ <key>capacity</key>
+ <integer>40000</integer>
+ </dict>
+ <dict>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Stadion_Miejski_(Wroc%C5%82aw)</string>
+ <key>name</key>
+ <string>Municipal Stadium</string>
+ <key>city</key>
+ <string>Wrocław</string>
+ <key>capacity</key>
+ <integer>40000</integer>
+ </dict>
+ <dict>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Stadion_Miejski_(Pozna%C5%84)</string>
+ <key>name</key>
+ <string>Municipal Stadium</string>
+ <key>city</key>
+ <string>Poznań</string>
+ <key>capacity</key>
+ <integer>40000</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>Ukraine</string>
+ <key>children</key>
+ <array>
+ <dict>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Olimpiysky_National_Sports_Complex</string>
+ <key>name</key>
+ <string>Olympic Stadium</string>
+ <key>city</key>
+ <string>Kiev</string>
+ <key>capacity</key>
+ <integer>60000</integer>
+ </dict>
+ <dict>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Donbass_Arena</string>
+ <key>name</key>
+ <string>Donbass Arena</string>
+ <key>city</key>
+ <string>Donetsk</string>
+ <key>capacity</key>
+ <integer>50000</integer>
+ </dict>
+ <dict>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Metalist_Stadium</string>
+ <key>name</key>
+ <string>Metalist Stadium</string>
+ <key>city</key>
+ <string>Kharkiv</string>
+ <key>capacity</key>
+ <integer>35000</integer>
+ </dict>
+ <dict>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Arena_Lviv</string>
+ <key>name</key>
+ <string>Arena Lviv</string>
+ <key>city</key>
+ <string>Lviv</string>
+ <key>capacity</key>
+ <integer>30000</integer>
+ </dict>
+ </array>
+ </dict>
+</array>
+</plist>
View
BIN  Sweden.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
162 Teams.plist
@@ -0,0 +1,162 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<array>
+ <dict>
+ <key>name</key>
+ <string>Group A</string>
+ <key>children</key>
+ <array>
+ <dict>
+ <key>name</key>
+ <string>Poland</string>
+ <key>icon</key>
+ <string>Poland.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Poland_national_football_team</string>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>Greece</string>
+ <key>icon</key>
+ <string>Greece.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Greece_national_football_team</string>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>Russia</string>
+ <key>icon</key>
+ <string>Russia.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Russia_national_football_team</string>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>Czech Republic</string>
+ <key>icon</key>
+ <string>Czech_Republic.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Czech_Republic_national_football_team</string>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>Group B</string>
+ <key>children</key>
+ <array>
+ <dict>
+ <key>name</key>
+ <string>Netherlands</string>
+ <key>icon</key>
+ <string>Netherlands.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Netherlands_national_football_team</string>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>Denmark</string>
+ <key>icon</key>
+ <string>Denmark.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Denmark_national_football_team</string>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>Germany</string>
+ <key>icon</key>
+ <string>Germany.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Germany_national_football_team</string>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>Portugal</string>
+ <key>icon</key>
+ <string>Portugal.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Portugal_national_football_team</string>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>children</key>
+ <array>
+ <dict>
+ <key>name</key>
+ <string>Spain</string>
+ <key>icon</key>
+ <string>Spain.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Spain_national_football_team</string>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>Italy</string>
+ <key>icon</key>
+ <string>Italy.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Italy_national_football_team</string>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>Republic of Ireland</string>
+ <key>icon</key>
+ <string>Ireland.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Republic_of_Ireland_national_football_team</string>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>Croatia</string>
+ <key>icon</key>
+ <string>Croatia.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Croatia_national_football_team</string>
+ </dict>
+ </array>
+ <key>name</key>
+ <string>Group C</string>
+ </dict>
+ <dict>
+ <key>children</key>
+ <array>
+ <dict>
+ <key>name</key>
+ <string>Ukraine</string>
+ <key>icon</key>
+ <string>Ukraine.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Ukraine_national_football_team</string>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>Sweden</string>
+ <key>icon</key>
+ <string>Sweden.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/Sweden_national_football_team</string>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>France</string>
+ <key>icon</key>
+ <string>France.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/France_national_football_team</string>
+ </dict>
+ <dict>
+ <key>name</key>
+ <string>England</string>
+ <key>icon</key>
+ <string>England.png</string>
+ <key>wikipedia-url</key>
+ <string>http://en.wikipedia.org/wiki/England_national_football_team</string>
+ </dict>
+ </array>
+ <key>name</key>
+ <string>Group D</string>
+ </dict>
+</array>
+</plist>
View
BIN  Ukraine.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  stadiums.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  teams.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Please sign in to comment.
Something went wrong with that request. Please try again.