appjam 0.1.8.9 → 0.1.8.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. data/lib/appjam/generators/templates/blank/EiffelApplication.xcodeproj/project.pbxproj +114 -0
  2. data/lib/appjam/generators/templates/blank/EiffelApplication.xcodeproj/project.xcworkspace/xcuserdata/eiffel.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  3. data/lib/appjam/generators/templates/blank/EiffelApplication/AppDelegate.m.tt +13 -1
  4. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/components/MyLauncher/CustomBadge.h +52 -0
  5. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/components/MyLauncher/CustomBadge.m +241 -0
  6. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/components/MyLauncher/MyLauncherItem.h +58 -0
  7. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/components/MyLauncher/MyLauncherItem.m +227 -0
  8. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/components/MyLauncher/MyLauncherPageControl.h +37 -0
  9. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/components/MyLauncher/MyLauncherPageControl.m +117 -0
  10. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/components/MyLauncher/MyLauncherScrollView.h +23 -0
  11. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/components/MyLauncher/MyLauncherScrollView.m +42 -0
  12. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/components/MyLauncher/MyLauncherView.h +70 -0
  13. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/components/MyLauncher/MyLauncherView.m +830 -0
  14. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/components/MyLauncher/MyLauncherViewController.h +38 -0
  15. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/components/MyLauncher/MyLauncherViewController.m +302 -0
  16. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/AESCrypt-ObjC/AESCrypt.h +37 -0
  17. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/AESCrypt-ObjC/AESCrypt.m +50 -0
  18. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/AESCrypt-ObjC/NSData+Base64.h +17 -0
  19. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/AESCrypt-ObjC/NSData+Base64.m +110 -0
  20. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/AESCrypt-ObjC/NSData+CommonCrypto.h +112 -0
  21. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/AESCrypt-ObjC/NSData+CommonCrypto.m +546 -0
  22. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/AESCrypt-ObjC/NSString+Base64.h +15 -0
  23. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/AESCrypt-ObjC/NSString+Base64.m +82 -0
  24. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/DCIntrospect/DCCrossHairView.h +16 -0
  25. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/DCIntrospect/DCCrossHairView.m +43 -0
  26. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/DCIntrospect/DCFrameView.h +55 -0
  27. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/DCIntrospect/DCFrameView.m +234 -0
  28. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/DCIntrospect/DCIntrospect.h +155 -0
  29. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/DCIntrospect/DCIntrospect.m +1654 -0
  30. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/DCIntrospect/DCIntrospectSettings.h +56 -0
  31. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/DCIntrospect/DCStatusBarOverlay.h +34 -0
  32. data/lib/appjam/generators/templates/blank/EiffelApplication/libs/toolkit/DCIntrospect/DCStatusBarOverlay.m +107 -0
  33. data/lib/appjam/version.rb +1 -1
  34. metadata +32 -3
@@ -55,6 +55,17 @@
55
55
  C54DA6841714126000457BF3 /* AFRESTClient.m in Sources */ = {isa = PBXBuildFile; fileRef = C54DA67D1714126000457BF3 /* AFRESTClient.m */; };
56
56
  C54DA6851714126000457BF3 /* NSString+InflectorKit.m in Sources */ = {isa = PBXBuildFile; fileRef = C54DA6801714126000457BF3 /* NSString+InflectorKit.m */; };
57
57
  C54DA6861714126000457BF3 /* TTTStringInflector.m in Sources */ = {isa = PBXBuildFile; fileRef = C54DA6821714126000457BF3 /* TTTStringInflector.m */; };
58
+ C5BD358B1728B2A700509984 /* DCCrossHairView.m in Sources */ = {isa = PBXBuildFile; fileRef = C5BD35831728B2A700509984 /* DCCrossHairView.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
59
+ C5BD358C1728B2A700509984 /* DCFrameView.m in Sources */ = {isa = PBXBuildFile; fileRef = C5BD35851728B2A700509984 /* DCFrameView.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
60
+ C5BD358D1728B2A700509984 /* DCIntrospect.m in Sources */ = {isa = PBXBuildFile; fileRef = C5BD35871728B2A700509984 /* DCIntrospect.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
61
+ C5BD358E1728B2A700509984 /* DCStatusBarOverlay.m in Sources */ = {isa = PBXBuildFile; fileRef = C5BD358A1728B2A700509984 /* DCStatusBarOverlay.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
62
+ C5E068471728E4190056F1DD /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C5E068461728E4190056F1DD /* OpenAL.framework */; };
63
+ C5E068B41728E6640056F1DD /* CustomBadge.m in Sources */ = {isa = PBXBuildFile; fileRef = C5E068A91728E6640056F1DD /* CustomBadge.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
64
+ C5E068B51728E6640056F1DD /* MyLauncherItem.m in Sources */ = {isa = PBXBuildFile; fileRef = C5E068AB1728E6640056F1DD /* MyLauncherItem.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
65
+ C5E068B61728E6640056F1DD /* MyLauncherPageControl.m in Sources */ = {isa = PBXBuildFile; fileRef = C5E068AD1728E6640056F1DD /* MyLauncherPageControl.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
66
+ C5E068B71728E6640056F1DD /* MyLauncherScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = C5E068AF1728E6640056F1DD /* MyLauncherScrollView.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
67
+ C5E068B81728E6640056F1DD /* MyLauncherView.m in Sources */ = {isa = PBXBuildFile; fileRef = C5E068B11728E6640056F1DD /* MyLauncherView.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
68
+ C5E068B91728E6640056F1DD /* MyLauncherViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = C5E068B31728E6640056F1DD /* MyLauncherViewController.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
58
69
  C5FAFE11170B0EC300D83034 /* AwesomeMenu.m in Sources */ = {isa = PBXBuildFile; fileRef = C5FAFCCB170B0EC300D83034 /* AwesomeMenu.m */; };
59
70
  C5FAFE12170B0EC300D83034 /* AwesomeMenuItem.m in Sources */ = {isa = PBXBuildFile; fileRef = C5FAFCCD170B0EC300D83034 /* AwesomeMenuItem.m */; };
60
71
  C5FAFE13170B0EC300D83034 /* bg-addbutton-highlighted.png in Resources */ = {isa = PBXBuildFile; fileRef = C5FAFCCF170B0EC300D83034 /* bg-addbutton-highlighted.png */; };
@@ -207,6 +218,10 @@
207
218
  C5FAFEB3170B1A9700D83034 /* TFHpple.m in Sources */ = {isa = PBXBuildFile; fileRef = C5FAFEAE170B1A9700D83034 /* TFHpple.m */; };
208
219
  C5FAFEB4170B1A9700D83034 /* TFHppleElement.m in Sources */ = {isa = PBXBuildFile; fileRef = C5FAFEB0170B1A9700D83034 /* TFHppleElement.m */; };
209
220
  C5FAFEB5170B1A9700D83034 /* XPathQuery.m in Sources */ = {isa = PBXBuildFile; fileRef = C5FAFEB2170B1A9700D83034 /* XPathQuery.m */; };
221
+ C5FCC4751728DAA300D5E07F /* AESCrypt.m in Sources */ = {isa = PBXBuildFile; fileRef = C5FCC46D1728DAA300D5E07F /* AESCrypt.m */; };
222
+ C5FCC4761728DAA300D5E07F /* NSData+Base64.m in Sources */ = {isa = PBXBuildFile; fileRef = C5FCC46F1728DAA300D5E07F /* NSData+Base64.m */; };
223
+ C5FCC4771728DAA300D5E07F /* NSData+CommonCrypto.m in Sources */ = {isa = PBXBuildFile; fileRef = C5FCC4711728DAA300D5E07F /* NSData+CommonCrypto.m */; };
224
+ C5FCC4781728DAA300D5E07F /* NSString+Base64.m in Sources */ = {isa = PBXBuildFile; fileRef = C5FCC4731728DAA300D5E07F /* NSString+Base64.m */; };
210
225
  /* End PBXBuildFile section */
211
226
 
212
227
  /* Begin PBXContainerItemProxy section */
@@ -277,6 +292,28 @@
277
292
  C54DA6801714126000457BF3 /* NSString+InflectorKit.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+InflectorKit.m"; sourceTree = "<group>"; };
278
293
  C54DA6811714126000457BF3 /* TTTStringInflector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TTTStringInflector.h; sourceTree = "<group>"; };
279
294
  C54DA6821714126000457BF3 /* TTTStringInflector.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TTTStringInflector.m; sourceTree = "<group>"; };
295
+ C5BD35821728B2A700509984 /* DCCrossHairView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCCrossHairView.h; sourceTree = "<group>"; };
296
+ C5BD35831728B2A700509984 /* DCCrossHairView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCCrossHairView.m; sourceTree = "<group>"; };
297
+ C5BD35841728B2A700509984 /* DCFrameView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCFrameView.h; sourceTree = "<group>"; };
298
+ C5BD35851728B2A700509984 /* DCFrameView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCFrameView.m; sourceTree = "<group>"; };
299
+ C5BD35861728B2A700509984 /* DCIntrospect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCIntrospect.h; sourceTree = "<group>"; };
300
+ C5BD35871728B2A700509984 /* DCIntrospect.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCIntrospect.m; sourceTree = "<group>"; };
301
+ C5BD35881728B2A700509984 /* DCIntrospectSettings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCIntrospectSettings.h; sourceTree = "<group>"; };
302
+ C5BD35891728B2A700509984 /* DCStatusBarOverlay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DCStatusBarOverlay.h; sourceTree = "<group>"; };
303
+ C5BD358A1728B2A700509984 /* DCStatusBarOverlay.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DCStatusBarOverlay.m; sourceTree = "<group>"; };
304
+ C5E068461728E4190056F1DD /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = System/Library/Frameworks/OpenAL.framework; sourceTree = SDKROOT; };
305
+ C5E068A81728E6640056F1DD /* CustomBadge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CustomBadge.h; sourceTree = "<group>"; };
306
+ C5E068A91728E6640056F1DD /* CustomBadge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomBadge.m; sourceTree = "<group>"; };
307
+ C5E068AA1728E6640056F1DD /* MyLauncherItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MyLauncherItem.h; sourceTree = "<group>"; };
308
+ C5E068AB1728E6640056F1DD /* MyLauncherItem.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MyLauncherItem.m; sourceTree = "<group>"; };
309
+ C5E068AC1728E6640056F1DD /* MyLauncherPageControl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MyLauncherPageControl.h; sourceTree = "<group>"; };
310
+ C5E068AD1728E6640056F1DD /* MyLauncherPageControl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MyLauncherPageControl.m; sourceTree = "<group>"; };
311
+ C5E068AE1728E6640056F1DD /* MyLauncherScrollView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MyLauncherScrollView.h; sourceTree = "<group>"; };
312
+ C5E068AF1728E6640056F1DD /* MyLauncherScrollView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MyLauncherScrollView.m; sourceTree = "<group>"; };
313
+ C5E068B01728E6640056F1DD /* MyLauncherView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MyLauncherView.h; sourceTree = "<group>"; };
314
+ C5E068B11728E6640056F1DD /* MyLauncherView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MyLauncherView.m; sourceTree = "<group>"; };
315
+ C5E068B21728E6640056F1DD /* MyLauncherViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MyLauncherViewController.h; sourceTree = "<group>"; };
316
+ C5E068B31728E6640056F1DD /* MyLauncherViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MyLauncherViewController.m; sourceTree = "<group>"; };
280
317
  C5FAFCCA170B0EC300D83034 /* AwesomeMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AwesomeMenu.h; sourceTree = "<group>"; };
281
318
  C5FAFCCB170B0EC300D83034 /* AwesomeMenu.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AwesomeMenu.m; sourceTree = "<group>"; };
282
319
  C5FAFCCC170B0EC300D83034 /* AwesomeMenuItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AwesomeMenuItem.h; sourceTree = "<group>"; };
@@ -565,6 +602,14 @@
565
602
  C5FAFEB0170B1A9700D83034 /* TFHppleElement.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TFHppleElement.m; sourceTree = "<group>"; };
566
603
  C5FAFEB1170B1A9700D83034 /* XPathQuery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XPathQuery.h; sourceTree = "<group>"; };
567
604
  C5FAFEB2170B1A9700D83034 /* XPathQuery.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XPathQuery.m; sourceTree = "<group>"; };
605
+ C5FCC46C1728DAA300D5E07F /* AESCrypt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AESCrypt.h; sourceTree = "<group>"; };
606
+ C5FCC46D1728DAA300D5E07F /* AESCrypt.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AESCrypt.m; sourceTree = "<group>"; };
607
+ C5FCC46E1728DAA300D5E07F /* NSData+Base64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+Base64.h"; sourceTree = "<group>"; };
608
+ C5FCC46F1728DAA300D5E07F /* NSData+Base64.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+Base64.m"; sourceTree = "<group>"; };
609
+ C5FCC4701728DAA300D5E07F /* NSData+CommonCrypto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+CommonCrypto.h"; sourceTree = "<group>"; };
610
+ C5FCC4711728DAA300D5E07F /* NSData+CommonCrypto.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+CommonCrypto.m"; sourceTree = "<group>"; };
611
+ C5FCC4721728DAA300D5E07F /* NSString+Base64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+Base64.h"; sourceTree = "<group>"; };
612
+ C5FCC4731728DAA300D5E07F /* NSString+Base64.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+Base64.m"; sourceTree = "<group>"; };
568
613
  /* End PBXFileReference section */
569
614
 
570
615
  /* Begin PBXFrameworksBuildPhase section */
@@ -572,6 +617,7 @@
572
617
  isa = PBXFrameworksBuildPhase;
573
618
  buildActionMask = 2147483647;
574
619
  files = (
620
+ C5E068471728E4190056F1DD /* OpenAL.framework in Frameworks */,
575
621
  C52562981705AE2000AC76A2 /* libsqlite3.dylib in Frameworks */,
576
622
  C52562991705AE2000AC76A2 /* libxml2.dylib in Frameworks */,
577
623
  C525629A1705AE2000AC76A2 /* libz.dylib in Frameworks */,
@@ -644,6 +690,7 @@
644
690
  C52562951705AE2000AC76A2 /* libsqlite3.dylib */,
645
691
  C52562961705AE2000AC76A2 /* libxml2.dylib */,
646
692
  C52562971705AE2000AC76A2 /* libz.dylib */,
693
+ C5E068461728E4190056F1DD /* OpenAL.framework */,
647
694
  C54DA67317140B0B00457BF3 /* CoreFoundation.framework */,
648
695
  C52562691705ADF000AC76A2 /* Accelerate.framework */,
649
696
  C525626A1705ADF000AC76A2 /* AudioToolbox.framework */,
@@ -778,9 +825,45 @@
778
825
  path = InflectorKit;
779
826
  sourceTree = "<group>";
780
827
  };
828
+ C5BD35811728B2A700509984 /* DCIntrospect */ = {
829
+ isa = PBXGroup;
830
+ children = (
831
+ C5BD35821728B2A700509984 /* DCCrossHairView.h */,
832
+ C5BD35831728B2A700509984 /* DCCrossHairView.m */,
833
+ C5BD35841728B2A700509984 /* DCFrameView.h */,
834
+ C5BD35851728B2A700509984 /* DCFrameView.m */,
835
+ C5BD35861728B2A700509984 /* DCIntrospect.h */,
836
+ C5BD35871728B2A700509984 /* DCIntrospect.m */,
837
+ C5BD35881728B2A700509984 /* DCIntrospectSettings.h */,
838
+ C5BD35891728B2A700509984 /* DCStatusBarOverlay.h */,
839
+ C5BD358A1728B2A700509984 /* DCStatusBarOverlay.m */,
840
+ );
841
+ path = DCIntrospect;
842
+ sourceTree = "<group>";
843
+ };
844
+ C5E068A71728E6640056F1DD /* MyLauncher */ = {
845
+ isa = PBXGroup;
846
+ children = (
847
+ C5E068A81728E6640056F1DD /* CustomBadge.h */,
848
+ C5E068A91728E6640056F1DD /* CustomBadge.m */,
849
+ C5E068AA1728E6640056F1DD /* MyLauncherItem.h */,
850
+ C5E068AB1728E6640056F1DD /* MyLauncherItem.m */,
851
+ C5E068AC1728E6640056F1DD /* MyLauncherPageControl.h */,
852
+ C5E068AD1728E6640056F1DD /* MyLauncherPageControl.m */,
853
+ C5E068AE1728E6640056F1DD /* MyLauncherScrollView.h */,
854
+ C5E068AF1728E6640056F1DD /* MyLauncherScrollView.m */,
855
+ C5E068B01728E6640056F1DD /* MyLauncherView.h */,
856
+ C5E068B11728E6640056F1DD /* MyLauncherView.m */,
857
+ C5E068B21728E6640056F1DD /* MyLauncherViewController.h */,
858
+ C5E068B31728E6640056F1DD /* MyLauncherViewController.m */,
859
+ );
860
+ path = MyLauncher;
861
+ sourceTree = "<group>";
862
+ };
781
863
  C5FAFCC8170B0EC300D83034 /* components */ = {
782
864
  isa = PBXGroup;
783
865
  children = (
866
+ C5E068A71728E6640056F1DD /* MyLauncher */,
784
867
  C54DA67517140C7000457BF3 /* FXLabel */,
785
868
  C5FAFCC9170B0EC300D83034 /* AwesomeMenu */,
786
869
  C5FAFCDD170B0EC300D83034 /* CMPopTipView */,
@@ -1043,6 +1126,8 @@
1043
1126
  C5FAFD59170B0EC300D83034 /* toolkit */ = {
1044
1127
  isa = PBXGroup;
1045
1128
  children = (
1129
+ C5FCC46A1728DAA300D5E07F /* AESCrypt-ObjC */,
1130
+ C5BD35811728B2A700509984 /* DCIntrospect */,
1046
1131
  C5FAFEAC170B1A9700D83034 /* hpple */,
1047
1132
  C5FAFD5A170B0EC300D83034 /* CocoaAsyncSocket */,
1048
1133
  C5FAFD5D170B0EC300D83034 /* CocoaHTTPServer */,
@@ -1402,6 +1487,21 @@
1402
1487
  path = hpple;
1403
1488
  sourceTree = "<group>";
1404
1489
  };
1490
+ C5FCC46A1728DAA300D5E07F /* AESCrypt-ObjC */ = {
1491
+ isa = PBXGroup;
1492
+ children = (
1493
+ C5FCC46C1728DAA300D5E07F /* AESCrypt.h */,
1494
+ C5FCC46D1728DAA300D5E07F /* AESCrypt.m */,
1495
+ C5FCC46E1728DAA300D5E07F /* NSData+Base64.h */,
1496
+ C5FCC46F1728DAA300D5E07F /* NSData+Base64.m */,
1497
+ C5FCC4701728DAA300D5E07F /* NSData+CommonCrypto.h */,
1498
+ C5FCC4711728DAA300D5E07F /* NSData+CommonCrypto.m */,
1499
+ C5FCC4721728DAA300D5E07F /* NSString+Base64.h */,
1500
+ C5FCC4731728DAA300D5E07F /* NSString+Base64.m */,
1501
+ );
1502
+ path = "AESCrypt-ObjC";
1503
+ sourceTree = "<group>";
1504
+ };
1405
1505
  /* End PBXGroup section */
1406
1506
 
1407
1507
  /* Begin PBXNativeTarget section */
@@ -1671,6 +1771,20 @@
1671
1771
  C54DA6841714126000457BF3 /* AFRESTClient.m in Sources */,
1672
1772
  C54DA6851714126000457BF3 /* NSString+InflectorKit.m in Sources */,
1673
1773
  C54DA6861714126000457BF3 /* TTTStringInflector.m in Sources */,
1774
+ C5BD358B1728B2A700509984 /* DCCrossHairView.m in Sources */,
1775
+ C5BD358C1728B2A700509984 /* DCFrameView.m in Sources */,
1776
+ C5BD358D1728B2A700509984 /* DCIntrospect.m in Sources */,
1777
+ C5BD358E1728B2A700509984 /* DCStatusBarOverlay.m in Sources */,
1778
+ C5FCC4751728DAA300D5E07F /* AESCrypt.m in Sources */,
1779
+ C5FCC4761728DAA300D5E07F /* NSData+Base64.m in Sources */,
1780
+ C5FCC4771728DAA300D5E07F /* NSData+CommonCrypto.m in Sources */,
1781
+ C5FCC4781728DAA300D5E07F /* NSString+Base64.m in Sources */,
1782
+ C5E068B41728E6640056F1DD /* CustomBadge.m in Sources */,
1783
+ C5E068B51728E6640056F1DD /* MyLauncherItem.m in Sources */,
1784
+ C5E068B61728E6640056F1DD /* MyLauncherPageControl.m in Sources */,
1785
+ C5E068B71728E6640056F1DD /* MyLauncherScrollView.m in Sources */,
1786
+ C5E068B81728E6640056F1DD /* MyLauncherView.m in Sources */,
1787
+ C5E068B91728E6640056F1DD /* MyLauncherViewController.m in Sources */,
1674
1788
  );
1675
1789
  runOnlyForDeploymentPostprocessing = 0;
1676
1790
  };
@@ -7,6 +7,7 @@
7
7
  //
8
8
 
9
9
  #import "AppDelegate.h"
10
+ #import "DCIntrospect.h"
10
11
 
11
12
  @implementation AppDelegate
12
13
 
@@ -23,10 +24,21 @@ static const int ddLogLevel = LOG_LEVEL_VERBOSE;
23
24
 
24
25
  DDLogVerbose(@"Start App");
25
26
  DLog(@"didFinishLaunching...");
27
+
26
28
  self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
27
- // Override point for customization after application launch.
28
29
  self.window.backgroundColor = [UIColor whiteColor];
29
30
  [self.window makeKeyAndVisible];
31
+
32
+ // press space bar to toggle debug state
33
+ // press '?' to show help
34
+ // press 'o' to show outline
35
+ // press 'O' to show background
36
+ // press 'p' to show view properties
37
+
38
+ #if TARGET_IPHONE_SIMULATOR
39
+ [[DCIntrospect sharedIntrospector] start];
40
+ #endif
41
+
30
42
  return YES;
31
43
  }
32
44
 
@@ -0,0 +1,52 @@
1
+ /*
2
+ CustomBadge.h
3
+
4
+ *** Description: ***
5
+ With this class you can draw a typical iOS badge indicator with a custom text on any view.
6
+ Please use the allocator customBadgeWithString the create a new badge.
7
+ In this version you can modfiy the color inside the badge (insetColor),
8
+ the color of the frame (frameColor), the color of the text and you can
9
+ tell the class if you want a frame around the badge.
10
+
11
+ *** License & Copyright ***
12
+ Created by Sascha Marc Paulus www.spaulus.com on 04/2011. Version 2.0
13
+ This tiny class can be used for free in private and commercial applications.
14
+ Please feel free to modify, extend or distribution this class.
15
+ If you modify it: Please send me your modified version of the class.
16
+ A commercial distribution of this class is not allowed.
17
+
18
+ If you have any questions please feel free to contact me (open@spaulus.com).
19
+ */
20
+
21
+
22
+ #import <UIKit/UIKit.h>
23
+ #import <QuartzCore/QuartzCore.h>
24
+
25
+ @interface CustomBadge : UIView {
26
+
27
+ NSString *badgeText;
28
+ UIColor *badgeTextColor;
29
+ UIColor *badgeInsetColor;
30
+ UIColor *badgeFrameColor;
31
+ BOOL badgeFrame;
32
+ BOOL badgeShining;
33
+ CGFloat badgeCornerRoundness;
34
+ CGFloat badgeScaleFactor;
35
+ }
36
+
37
+ @property(nonatomic,strong) NSString *badgeText;
38
+ @property(nonatomic,strong) UIColor *badgeTextColor;
39
+ @property(nonatomic,strong) UIColor *badgeInsetColor;
40
+ @property(nonatomic,strong) UIColor *badgeFrameColor;
41
+
42
+ @property(nonatomic,readwrite) BOOL badgeFrame;
43
+ @property(nonatomic,readwrite) BOOL badgeShining;
44
+
45
+ @property(nonatomic,readwrite) CGFloat badgeCornerRoundness;
46
+ @property(nonatomic,readwrite) CGFloat badgeScaleFactor;
47
+
48
+ + (CustomBadge*) customBadgeWithString:(NSString *)badgeString;
49
+ + (CustomBadge*) customBadgeWithString:(NSString *)badgeString withStringColor:(UIColor*)stringColor withInsetColor:(UIColor*)insetColor withBadgeFrame:(BOOL)badgeFrameYesNo withBadgeFrameColor:(UIColor*)frameColor withScale:(CGFloat)scale withShining:(BOOL)shining;
50
+ - (void) autoBadgeSizeWithString:(NSString *)badgeString;
51
+
52
+ @end
@@ -0,0 +1,241 @@
1
+ /*
2
+ CustomBadge.m
3
+
4
+ *** Description: ***
5
+ With this class you can draw a typical iOS badge indicator with a custom text on any view.
6
+ Please use the allocator customBadgeWithString the create a new badge.
7
+ In this version you can modfiy the color inside the badge (insetColor),
8
+ the color of the frame (frameColor), the color of the text and you can
9
+ tell the class if you want a frame around the badge.
10
+
11
+ *** License & Copyright ***
12
+ Created by Sascha Marc Paulus www.spaulus.com on 04/2011. Version 2.0
13
+ This tiny class can be used for free in private and commercial applications.
14
+ Please feel free to modify, extend or distribution this class.
15
+ If you modify it: Please send me your modified version of the class.
16
+ A commercial distribution of this class is not allowed.
17
+
18
+ If you have any questions please feel free to contact me (open@spaulus.com).
19
+ */
20
+
21
+
22
+ #import "CustomBadge.h"
23
+
24
+ @interface CustomBadge()
25
+ - (void) drawRoundedRectWithContext:(CGContextRef)context withRect:(CGRect)rect;
26
+ - (void) drawFrameWithContext:(CGContextRef)context withRect:(CGRect)rect;
27
+ @end
28
+
29
+ @implementation CustomBadge
30
+
31
+ @synthesize badgeText;
32
+ @synthesize badgeTextColor;
33
+ @synthesize badgeInsetColor;
34
+ @synthesize badgeFrameColor;
35
+ @synthesize badgeFrame;
36
+ @synthesize badgeCornerRoundness;
37
+ @synthesize badgeScaleFactor;
38
+ @synthesize badgeShining;
39
+
40
+ // I recommend to use the allocator customBadgeWithString
41
+ - (id) initWithString:(NSString *)badgeString withScale:(CGFloat)scale withShining:(BOOL)shining
42
+ {
43
+ self = [super initWithFrame:CGRectMake(0, 0, 25, 25)];
44
+ if(self!=nil) {
45
+ self.contentScaleFactor = [[UIScreen mainScreen] scale];
46
+ self.backgroundColor = [UIColor clearColor];
47
+ self.badgeText = badgeString;
48
+ self.badgeTextColor = [UIColor whiteColor];
49
+ self.badgeFrame = YES;
50
+ self.badgeFrameColor = [UIColor whiteColor];
51
+ self.badgeInsetColor = [UIColor redColor];
52
+ self.badgeCornerRoundness = 0.4;
53
+ self.badgeScaleFactor = scale;
54
+ self.badgeShining = shining;
55
+ [self autoBadgeSizeWithString:badgeString];
56
+ }
57
+ return self;
58
+ }
59
+
60
+ // I recommend to use the allocator customBadgeWithString
61
+ - (id) initWithString:(NSString *)badgeString withStringColor:(UIColor*)stringColor withInsetColor:(UIColor*)insetColor withBadgeFrame:(BOOL)badgeFrameYesNo withBadgeFrameColor:(UIColor*)frameColor withScale:(CGFloat)scale withShining:(BOOL)shining
62
+ {
63
+ self = [super initWithFrame:CGRectMake(0, 0, 25, 25)];
64
+ if(self!=nil) {
65
+ self.contentScaleFactor = [[UIScreen mainScreen] scale];
66
+ self.backgroundColor = [UIColor clearColor];
67
+ self.badgeText = badgeString;
68
+ self.badgeTextColor = stringColor;
69
+ self.badgeFrame = badgeFrameYesNo;
70
+ self.badgeFrameColor = frameColor;
71
+ self.badgeInsetColor = insetColor;
72
+ self.badgeCornerRoundness = 0.40;
73
+ self.badgeScaleFactor = scale;
74
+ self.badgeShining = shining;
75
+ [self autoBadgeSizeWithString:badgeString];
76
+ }
77
+ return self;
78
+ }
79
+
80
+
81
+ // Use this method if you want to change the badge text after the first rendering
82
+ - (void) autoBadgeSizeWithString:(NSString *)badgeString
83
+ {
84
+ CGSize retValue;
85
+ CGFloat rectWidth, rectHeight;
86
+ CGSize stringSize = [badgeString sizeWithFont:[UIFont boldSystemFontOfSize:12]];
87
+ CGFloat flexSpace;
88
+ if ([badgeString length]>=2) {
89
+ flexSpace = [badgeString length];
90
+ rectWidth = 25 + (stringSize.width + flexSpace); rectHeight = 25;
91
+ retValue = CGSizeMake(rectWidth*badgeScaleFactor, rectHeight*badgeScaleFactor);
92
+ } else {
93
+ retValue = CGSizeMake(25*badgeScaleFactor, 25*badgeScaleFactor);
94
+ }
95
+ self.frame = CGRectMake(self.frame.origin.x, self.frame.origin.y, retValue.width, retValue.height);
96
+ self.badgeText = badgeString;
97
+ [self setNeedsDisplay];
98
+ }
99
+
100
+
101
+ // Creates a Badge with a given Text
102
+ + (CustomBadge*) customBadgeWithString:(NSString *)badgeString
103
+ {
104
+ return [[self alloc] initWithString:badgeString withScale:1.0 withShining:YES];
105
+ }
106
+
107
+
108
+ // Creates a Badge with a given Text, Text Color, Inset Color, Frame (YES/NO) and Frame Color
109
+ + (CustomBadge*) customBadgeWithString:(NSString *)badgeString withStringColor:(UIColor*)stringColor withInsetColor:(UIColor*)insetColor withBadgeFrame:(BOOL)badgeFrameYesNo withBadgeFrameColor:(UIColor*)frameColor withScale:(CGFloat)scale withShining:(BOOL)shining
110
+ {
111
+ return [[self alloc] initWithString:badgeString withStringColor:stringColor withInsetColor:insetColor withBadgeFrame:badgeFrameYesNo withBadgeFrameColor:frameColor withScale:scale withShining:shining];
112
+ }
113
+
114
+
115
+
116
+
117
+
118
+ // Draws the Badge with Quartz
119
+ -(void) drawRoundedRectWithContext:(CGContextRef)context withRect:(CGRect)rect
120
+ {
121
+ CGContextSaveGState(context);
122
+
123
+ CGFloat radius = CGRectGetMaxY(rect)*self.badgeCornerRoundness;
124
+ CGFloat puffer = CGRectGetMaxY(rect)*0.10;
125
+ CGFloat maxX = CGRectGetMaxX(rect) - puffer;
126
+ CGFloat maxY = CGRectGetMaxY(rect) - puffer;
127
+ CGFloat minX = CGRectGetMinX(rect) + puffer;
128
+ CGFloat minY = CGRectGetMinY(rect) + puffer;
129
+
130
+ CGContextBeginPath(context);
131
+ CGContextSetFillColorWithColor(context, [self.badgeInsetColor CGColor]);
132
+ CGContextAddArc(context, maxX-radius, minY+radius, radius, M_PI+(M_PI/2), 0, 0);
133
+ CGContextAddArc(context, maxX-radius, maxY-radius, radius, 0, M_PI/2, 0);
134
+ CGContextAddArc(context, minX+radius, maxY-radius, radius, M_PI/2, M_PI, 0);
135
+ CGContextAddArc(context, minX+radius, minY+radius, radius, M_PI, M_PI+M_PI/2, 0);
136
+ CGContextSetShadowWithColor(context, CGSizeMake(1.0,1.0), 3, [[UIColor blackColor] CGColor]);
137
+ CGContextClosePath(context);
138
+ CGContextFillPath(context);
139
+
140
+ CGContextRestoreGState(context);
141
+
142
+ }
143
+
144
+ // Draws the Badge Shine with Quartz
145
+ -(void) drawShineWithContext:(CGContextRef)context withRect:(CGRect)rect
146
+ {
147
+ CGContextSaveGState(context);
148
+
149
+ CGFloat radius = CGRectGetMaxY(rect)*self.badgeCornerRoundness;
150
+ CGFloat puffer = CGRectGetMaxY(rect)*0.10;
151
+ CGFloat maxX = CGRectGetMaxX(rect) - puffer;
152
+ CGFloat maxY = CGRectGetMaxY(rect) - puffer;
153
+ CGFloat minX = CGRectGetMinX(rect) + puffer;
154
+ CGFloat minY = CGRectGetMinY(rect) + puffer;
155
+ CGContextBeginPath(context);
156
+ CGContextAddArc(context, maxX-radius, minY+radius, radius, M_PI+(M_PI/2), 0, 0);
157
+ CGContextAddArc(context, maxX-radius, maxY-radius, radius, 0, M_PI/2, 0);
158
+ CGContextAddArc(context, minX+radius, maxY-radius, radius, M_PI/2, M_PI, 0);
159
+ CGContextAddArc(context, minX+radius, minY+radius, radius, M_PI, M_PI+M_PI/2, 0);
160
+ CGContextClip(context);
161
+ //CGContextClosePath(context);
162
+
163
+
164
+ size_t num_locations = 2;
165
+ CGFloat locations[2] = { 0.0, 0.4 };
166
+ CGFloat components[8] = { 0.92, 0.92, 0.92, 1.0, 0.82, 0.82, 0.82, 0.4 };
167
+
168
+ CGColorSpaceRef cspace;
169
+ CGGradientRef gradient;
170
+ cspace = CGColorSpaceCreateDeviceRGB();
171
+ gradient = CGGradientCreateWithColorComponents (cspace, components, locations, num_locations);
172
+
173
+ CGPoint sPoint, ePoint;
174
+ sPoint.x = 0;
175
+ sPoint.y = 0;
176
+ ePoint.x = 0;
177
+ ePoint.y = maxY;
178
+ CGContextDrawLinearGradient (context, gradient, sPoint, ePoint, 0);
179
+
180
+ CGColorSpaceRelease(cspace);
181
+ CGGradientRelease(gradient);
182
+
183
+ CGContextRestoreGState(context);
184
+ }
185
+
186
+
187
+ // Draws the Badge Frame with Quartz
188
+ -(void) drawFrameWithContext:(CGContextRef)context withRect:(CGRect)rect
189
+ {
190
+ CGFloat radius = CGRectGetMaxY(rect)*self.badgeCornerRoundness;
191
+ CGFloat puffer = CGRectGetMaxY(rect)*0.10;
192
+
193
+ CGFloat maxX = CGRectGetMaxX(rect) - puffer;
194
+ CGFloat maxY = CGRectGetMaxY(rect) - puffer;
195
+ CGFloat minX = CGRectGetMinX(rect) + puffer;
196
+ CGFloat minY = CGRectGetMinY(rect) + puffer;
197
+
198
+
199
+ CGContextBeginPath(context);
200
+ CGFloat lineSize = 2;
201
+ if(self.badgeScaleFactor>1) {
202
+ lineSize += self.badgeScaleFactor*0.25;
203
+ }
204
+ CGContextSetLineWidth(context, lineSize);
205
+ CGContextSetStrokeColorWithColor(context, [self.badgeFrameColor CGColor]);
206
+ CGContextAddArc(context, maxX-radius, minY+radius, radius, M_PI+(M_PI/2), 0, 0);
207
+ CGContextAddArc(context, maxX-radius, maxY-radius, radius, 0, M_PI/2, 0);
208
+ CGContextAddArc(context, minX+radius, maxY-radius, radius, M_PI/2, M_PI, 0);
209
+ CGContextAddArc(context, minX+radius, minY+radius, radius, M_PI, M_PI+M_PI/2, 0);
210
+ CGContextClosePath(context);
211
+ CGContextStrokePath(context);
212
+ }
213
+
214
+
215
+ - (void)drawRect:(CGRect)rect {
216
+
217
+ CGContextRef context = UIGraphicsGetCurrentContext();
218
+ [self drawRoundedRectWithContext:context withRect:rect];
219
+
220
+ if(self.badgeShining) {
221
+ [self drawShineWithContext:context withRect:rect];
222
+ }
223
+
224
+ if (self.badgeFrame) {
225
+ [self drawFrameWithContext:context withRect:rect];
226
+ }
227
+
228
+ if ([self.badgeText length]>0) {
229
+ [badgeTextColor set];
230
+ CGFloat sizeOfFont = 13.5*badgeScaleFactor;
231
+ if ([self.badgeText length]<2) {
232
+ sizeOfFont += sizeOfFont*0.20;
233
+ }
234
+ UIFont *textFont = [UIFont boldSystemFontOfSize:sizeOfFont];
235
+ CGSize textSize = [self.badgeText sizeWithFont:textFont];
236
+ [self.badgeText drawAtPoint:CGPointMake((rect.size.width/2-textSize.width/2), (rect.size.height/2-textSize.height/2)) withFont:textFont];
237
+ }
238
+
239
+ }
240
+
241
+ @end