Skip to content
Browse files

Import the SSToolkit example. Last thing to do is add a way to copy r…

…esources.
  • Loading branch information...
1 parent 18f6fe2 commit ee70447153eb641e8be1f5181177035dd7084f5d @alloy alloy committed Oct 19, 2011
Showing with 2,109 additions and 0 deletions.
  1. +13 −0 examples/SSCatalog/Classes/SCAddressBarDemoViewController.h
  2. +157 −0 examples/SSCatalog/Classes/SCAddressBarDemoViewController.m
  3. +14 −0 examples/SSCatalog/Classes/SCAppDelegate.h
  4. +51 −0 examples/SSCatalog/Classes/SCAppDelegate.m
  5. +13 −0 examples/SSCatalog/Classes/SCBadgeTableViewCellDemoViewController.h
  6. +116 −0 examples/SSCatalog/Classes/SCBadgeTableViewCellDemoViewController.m
  7. +13 −0 examples/SSCatalog/Classes/SCCollectionViewDemoViewController.h
  8. +100 −0 examples/SSCatalog/Classes/SCCollectionViewDemoViewController.m
  9. +16 −0 examples/SSCatalog/Classes/SCGradientViewDemoViewController.h
  10. +102 −0 examples/SSCatalog/Classes/SCGradientViewDemoViewController.m
  11. +16 −0 examples/SSCatalog/Classes/SCHUDViewDemoViewController.h
  12. +71 −0 examples/SSCatalog/Classes/SCHUDViewDemoViewController.m
  13. +15 −0 examples/SSCatalog/Classes/SCImageCollectionViewItem.h
  14. +54 −0 examples/SSCatalog/Classes/SCImageCollectionViewItem.m
  15. +13 −0 examples/SSCatalog/Classes/SCLineViewDemoViewController.h
  16. +57 −0 examples/SSCatalog/Classes/SCLineViewDemoViewController.m
  17. +13 −0 examples/SSCatalog/Classes/SCLoadingViewDemoViewController.h
  18. +43 −0 examples/SSCatalog/Classes/SCLoadingViewDemoViewController.m
  19. +15 −0 examples/SSCatalog/Classes/SCPickerDemoViewController.h
  20. +99 −0 examples/SSCatalog/Classes/SCPickerDemoViewController.m
  21. +10 −0 examples/SSCatalog/Classes/SCPickerDetailViewController.h
  22. +54 −0 examples/SSCatalog/Classes/SCPickerDetailViewController.m
  23. +15 −0 examples/SSCatalog/Classes/SCPieProgressViewDemoViewController.h
  24. +102 −0 examples/SSCatalog/Classes/SCPieProgressViewDemoViewController.m
  25. +11 −0 examples/SSCatalog/Classes/SCRootViewController.h
  26. +125 −0 examples/SSCatalog/Classes/SCRootViewController.m
  27. +15 −0 examples/SSCatalog/Classes/SCSegmentedControlDemoViewController.h
  28. +100 −0 examples/SSCatalog/Classes/SCSegmentedControlDemoViewController.m
  29. +14 −0 examples/SSCatalog/Classes/SCSwitchDemoViewController.h
  30. +97 −0 examples/SSCatalog/Classes/SCSwitchDemoViewController.m
  31. +13 −0 examples/SSCatalog/Classes/SSRatingDemoViewController.h
  32. +27 −0 examples/SSCatalog/Classes/SSRatingDemoViewController.m
  33. +14 −0 examples/SSCatalog/Other Sources/SSCatalog_Prefix.pch
  34. +15 −0 examples/SSCatalog/Other Sources/main.m
  35. +5 −0 examples/SSCatalog/Podfile
  36. BIN examples/SSCatalog/Resources/Default-Landscape~ipad.png
  37. BIN examples/SSCatalog/Resources/Default-Portrait~ipad.png
  38. BIN examples/SSCatalog/Resources/Default.png
  39. BIN examples/SSCatalog/Resources/Default@2x.png
  40. BIN examples/SSCatalog/Resources/Icon-114.png
  41. BIN examples/SSCatalog/Resources/Icon-29.png
  42. BIN examples/SSCatalog/Resources/Icon-48.png
  43. BIN examples/SSCatalog/Resources/Icon-72.png
  44. BIN examples/SSCatalog/Resources/Icon.png
  45. +59 −0 examples/SSCatalog/Resources/SSCatalog-Info.plist
  46. BIN examples/SSCatalog/Resources/SamLogo.png
  47. BIN examples/SSCatalog/Resources/SamLogo@2x.png
  48. BIN examples/SSCatalog/Resources/iTunesArtwork
  49. +432 −0 examples/SSCatalog/SSCatalog.xcodeproj/project.pbxproj
  50. +10 −0 examples/SSCatalog/SSCatalog.xcworkspace/contents.xcworkspacedata
View
13 examples/SSCatalog/Classes/SCAddressBarDemoViewController.h
@@ -0,0 +1,13 @@
+//
+// SCAddressBarDemoViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 2/8/11.
+// Copyright 2011 Sam Soffes. All rights reserved.
+//
+
+@interface SCAddressBarDemoViewController : UIViewController <UITextFieldDelegate, SSWebViewDelegate>
+
++ (NSString *)title;
+
+@end
View
157 examples/SSCatalog/Classes/SCAddressBarDemoViewController.m
@@ -0,0 +1,157 @@
+//
+// SCAddressBarDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 2/8/11.
+// Copyright 2011 Sam Soffes. All rights reserved.
+//
+
+#import "SCAddressBarDemoViewController.h"
+
+@implementation SCAddressBarDemoViewController {
+ SSGradientView *_headerView;
+ UILabel *_titleLabel;
+ SSAddressBarTextField *_addressBar;
+ SSWebView *_webView;
+}
+
+
+#pragma mark - Class Methods
+
++ (NSString *)title {
+ return @"Address bar";
+}
+
+
+#pragma mark - NSObject
+
+- (void)dealloc {
+ _webView.delegate = nil;
+ [_webView release];
+ [_headerView release];
+ [_titleLabel release];
+ [_addressBar release];
+ [super dealloc];
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = [[self class] title];
+ self.view.backgroundColor = [UIColor colorWithRed:0.851f green:0.859f blue:0.882f alpha:1.0f];
+
+ CGSize size = self.view.frame.size;
+
+ _headerView = [[SSGradientView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, size.width, 58.0f)];
+ _headerView.autoresizingMask = UIViewAutoresizingFlexibleWidth;
+ _headerView.topColor = [UIColor colorWithWhite:0.957f alpha:1.0f];
+ _headerView.bottomColor = [UIColor colorWithWhite:0.827f alpha:1.0f];
+ _headerView.bottomBorderColor = [UIColor colorWithWhite:0.369f alpha:1.0f];
+
+ _titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(10.0f, 0.0f, size.width - 20.0f, 21.0f)];
+ _titleLabel.autoresizingMask = UIViewAutoresizingFlexibleWidth;
+ _titleLabel.backgroundColor = [UIColor clearColor];
+ _titleLabel.textColor = [UIColor colorWithWhite:0.404f alpha:1.0f];
+ _titleLabel.textAlignment = UITextAlignmentCenter;
+ _titleLabel.font = [UIFont boldSystemFontOfSize:12.0f];
+ _titleLabel.shadowColor = [UIColor whiteColor];
+ _titleLabel.shadowOffset = CGSizeMake(0.0f, 1.0f);
+ [_headerView addSubview:_titleLabel];
+
+ _addressBar = [[SSAddressBarTextField alloc] initWithFrame:CGRectMake(10.0f, 21.0f, size.width - 20.0f, 31.0f)];
+ _addressBar.autoresizingMask = UIViewAutoresizingFlexibleWidth;
+ _addressBar.delegate = self;
+ [_headerView addSubview:_addressBar];
+
+ [self.view addSubview:_headerView];
+
+ _webView = [[SSWebView alloc] initWithFrame:CGRectMake(0.0f, 58.0f, size.width, size.height - 58.0f)];
+ _webView.autoresizingMask = UIViewAutoresizingFlexibleWidth;
+ _webView.scalesPageToFit = YES;
+ _webView.delegate = self;
+ [self.view addSubview:_webView];
+
+ [_addressBar.reloadButton addTarget:_webView action:@selector(reload) forControlEvents:UIControlEventTouchUpInside];
+ [_addressBar.stopButton addTarget:_webView action:@selector(stopLoading) forControlEvents:UIControlEventTouchUpInside];
+
+ [_webView loadURLString:@"http://samsoff.es"];
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+
+#pragma mark - UITextFieldDelegate
+
+- (void)textFieldDidBeginEditing:(UITextField *)textField {
+ [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(_removeGrayView) object:nil];
+
+ // Gray Button
+// UIButton *aGrayButton = [UIButton buttonWithType:UIButtonTypeCustom];
+// aGrayButton.frame = _webView.frame;
+// aGrayButton.backgroundColor = [UIColor colorWithRed:0.0f green:0.0f blue:0.0f alpha:0.5f];
+// aGrayButton.alpha = 0.0f;
+// aGrayButton.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
+// [aGrayButton addTarget:textField action:@selector(resignFirstResponder) forControlEvents:UIControlEventTouchDown];
+// self.grayButton = aGrayButton;
+// [self.view addSubview:grayButton];
+// [grayButton fadeIn];
+}
+
+
+- (void)textFieldDidEndEditing:(UITextField *)textField {
+// [self performSelector:@selector(_removeGrayView) withObject:nil afterDelay:0.1];
+}
+
+
+- (BOOL)textFieldShouldReturn:(UITextField *)textField {
+ [_webView loadURLString:textField.text];
+ [textField resignFirstResponder];
+ return YES;
+}
+
+
+#pragma mark - SSWebViewDelegate
+
+- (void)webViewDidStartLoadingPage:(SSWebView *)aWebView {
+ _addressBar.loading = YES;
+ [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];
+
+ NSString *urlString = [[[_webView lastRequest] mainDocumentURL] absoluteString];
+
+ static NSRegularExpression *regularExpression = nil;
+ if (!regularExpression) {
+ regularExpression = [[NSRegularExpression alloc] initWithPattern:@"^https?://" options:NSRegularExpressionCaseInsensitive error:nil];
+ }
+
+ NSString *addressBarUrlString = [regularExpression stringByReplacingMatchesInString:urlString options:0 range:NSMakeRange(0, [urlString length]) withTemplate:@""];
+ _addressBar.text = addressBarUrlString;
+ _titleLabel.text = urlString;
+}
+
+
+- (void)webViewDidFinishLoadingPage:(SSWebView *)aWebView {
+ _addressBar.loading = NO;
+ [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];
+
+ NSString *title = [_webView stringByEvaluatingJavaScriptFromString:@"document.title"];
+ if (title) {
+ _titleLabel.text = title;
+ }
+}
+
+
+- (void)webView:(SSWebView *)aWebView didFailLoadWithError:(NSError *)error {
+ _addressBar.loading = NO;
+ [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];
+}
+
+
+@end
View
14 examples/SSCatalog/Classes/SCAppDelegate.h
@@ -0,0 +1,14 @@
+//
+// SCAppDelegate.h
+// SSCatalog
+//
+// Created by Sam Soffes on 9/21/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+@interface SCAppDelegate : NSObject <UIApplicationDelegate>
+
+@property (nonatomic, retain) UIWindow *window;
+@property (nonatomic, retain) UINavigationController *navigationController;
+
+@end
View
51 examples/SSCatalog/Classes/SCAppDelegate.m
@@ -0,0 +1,51 @@
+//
+// SCAppDelegate.m
+// SSCatalog
+//
+// Created by Sam Soffes on 9/21/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+#import "SCAppDelegate.h"
+#import "SCRootViewController.h"
+
+@implementation SCAppDelegate {
+ UIWindow *_window;
+ UINavigationController *_navigationController;
+}
+
+
+#pragma mark - Accessors
+
+@synthesize window = _window;
+@synthesize navigationController = _navigationController;
+
+
+#pragma mark - NSObject
+
+- (void)dealloc {
+ [_navigationController release];
+ [_window release];
+ [super dealloc];
+}
+
+
+#pragma mark - UIApplicationDelegate
+
+- (void)applicationDidFinishLaunching:(UIApplication *)application {
+
+ _window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
+
+ SCRootViewController *viewController = [[SCRootViewController alloc] initWithStyle:UITableViewStyleGrouped];
+ UINavigationController *aNavigationController = [[UINavigationController alloc] initWithRootViewController:viewController];
+
+ self.navigationController = aNavigationController;
+
+ [viewController release];
+ [aNavigationController release];
+
+ [_window addSubview:_navigationController.view];
+ [_window makeKeyAndVisible];
+}
+
+@end
View
13 examples/SSCatalog/Classes/SCBadgeTableViewCellDemoViewController.h
@@ -0,0 +1,13 @@
+//
+// SCBadgeTableViewCellDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 01/29/11.
+// Copyright 2011 Sam Soffes, Inc. All rights reserved.
+//
+
+@interface SCBadgeTableViewCellDemoViewController : UITableViewController
+
++ (NSString *)title;
+
+@end
View
116 examples/SSCatalog/Classes/SCBadgeTableViewCellDemoViewController.m
@@ -0,0 +1,116 @@
+//
+// SCBadgeTableViewCellDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 01/29/11.
+// Copyright 2011 Sam Soffes, Inc. All rights reserved.
+//
+
+#import "SCBadgeTableViewCellDemoViewController.h"
+
+@implementation SCBadgeTableViewCellDemoViewController
+
+#pragma mark - Class Methods
+
++ (NSString *)title {
+ return @"Badge Table View Cell";
+}
+
+
+#pragma mark - NSObject
+
+- (id)init {
+ return self = [super initWithStyle:UITableViewStyleGrouped];
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = [[self class] title];
+}
+
+
+- (void)viewWillAppear:(BOOL)animated {
+ [super viewWillAppear:animated];
+ [self.tableView reloadData];
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+
+#pragma mark - UITableViewDataSource
+
+- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
+ return 2;
+}
+
+
+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
+ return (section == 0) ? 4 : 12;
+}
+
+
+- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
+ static NSString *cellIdentifier = @"cell";
+
+ SSBadgeTableViewCell *cell = (SSBadgeTableViewCell *)[tableView dequeueReusableCellWithIdentifier:cellIdentifier];
+ if (cell == nil) {
+ cell = [[[SSBadgeTableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:cellIdentifier] autorelease];
+ }
+
+ if (indexPath.section == 0) {
+ switch (indexPath.row) {
+ case 0: {
+ cell.textLabel.text = @"Default Badge View";
+ cell.badgeView.textLabel.text = @"0";
+ cell.badgeView.badgeColor = [SSBadgeView defaultBadgeColor];
+ break;
+ }
+
+ case 1: {
+ cell.textLabel.text = @"Unread Count";
+ cell.badgeView.textLabel.text = @"3";
+ cell.badgeView.badgeColor = [UIColor colorWithRed:0.969f green:0.082f blue:0.078f alpha:1.0f];
+ break;
+ }
+
+ case 2: {
+ cell.textLabel.text = @"Text Badge";
+ cell.badgeView.textLabel.text = @"New";
+ cell.badgeView.badgeColor = [UIColor colorWithRed:0.388f green:0.686f blue:0.239f alpha:1.0f];
+ break;
+ }
+
+ case 3: {
+ cell.textLabel.text = @"Nil value";
+ cell.badgeView.textLabel.text = nil;
+ cell.badgeView.badgeColor = [SSBadgeView defaultBadgeColor];
+ break;
+ }
+ }
+ } else {
+ NSNumber *number = [NSNumber numberWithInteger:indexPath.row * 256];
+ cell.textLabel.text = [[NSNumberFormatter localizedStringFromNumber:number numberStyle:NSNumberFormatterSpellOutStyle] capitalizedString];
+ cell.badgeView.textLabel.text = [NSNumberFormatter localizedStringFromNumber:number numberStyle:NSNumberFormatterDecimalStyle];
+ cell.badgeView.badgeColor = [SSBadgeView defaultBadgeColor];
+ }
+
+ return cell;
+}
+
+
+#pragma mark - UITableViewDelegate
+
+- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
+ [tableView deselectRowAtIndexPath:indexPath animated:YES];
+}
+
+@end
View
13 examples/SSCatalog/Classes/SCCollectionViewDemoViewController.h
@@ -0,0 +1,13 @@
+//
+// SCCollectionViewDemoViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 8/24/10.
+// Copyright 2010 Sam Soffes. All rights reserved.
+//
+
+@interface SCCollectionViewDemoViewController : SSCollectionViewController
+
++ (NSString *)title;
+
+@end
View
100 examples/SSCatalog/Classes/SCCollectionViewDemoViewController.m
@@ -0,0 +1,100 @@
+//
+// SCCollectionViewDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 8/24/10.
+// Copyright 2010 Sam Soffes. All rights reserved.
+//
+
+#import "SCCollectionViewDemoViewController.h"
+#import "SCImageCollectionViewItem.h"
+
+@implementation SCCollectionViewDemoViewController
+
+#pragma mark - Class Methods
+
++ (NSString *)title {
+ return @"Collection View";
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = [[self class] title];
+
+ self.collectionView.extremitiesStyle = SSCollectionViewExtremitiesStyleScrolling;
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+
+#pragma mark - SSCollectionViewDataSource
+
+- (NSUInteger)numberOfSectionsInCollectionView:(SSCollectionView *)aCollectionView {
+ return 10;
+}
+
+
+- (NSUInteger)collectionView:(SSCollectionView *)aCollectionView numberOfItemsInSection:(NSUInteger)section {
+ return 50;
+}
+
+
+- (SSCollectionViewItem *)collectionView:(SSCollectionView *)aCollectionView itemForIndexPath:(NSIndexPath *)indexPath {
+ static NSString *const itemIdentifier = @"itemIdentifier";
+
+ SCImageCollectionViewItem *item = (SCImageCollectionViewItem *)[aCollectionView dequeueReusableItemWithIdentifier:itemIdentifier];
+ if (item == nil) {
+ item = [[[SCImageCollectionViewItem alloc] initWithReuseIdentifier:itemIdentifier] autorelease];
+ }
+
+ CGFloat size = 80.0f * [[UIScreen mainScreen] scale];
+ NSInteger i = (50 * indexPath.section) + indexPath.row;
+ item.imageURL = [NSURL URLWithString:[NSString stringWithFormat:@"http://www.gravatar.com/avatar/%i?s=%0.f&d=identicon", i, size]];
+
+ return item;
+}
+
+
+- (UIView *)collectionView:(SSCollectionView *)aCollectionView viewForHeaderInSection:(NSUInteger)section {
+ SSLabel *header = [[SSLabel alloc] initWithFrame:CGRectMake(0.0f, 0.0f, self.view.frame.size.width, 40.0f)];
+ header.autoresizingMask = UIViewAutoresizingFlexibleWidth;
+ header.text = [NSString stringWithFormat:@"Section %i", section + 1];
+ header.textEdgeInsets = UIEdgeInsetsMake(0.0f, 19.0f, 0.0f, 19.0f);
+ header.shadowColor = [UIColor whiteColor];
+ header.shadowOffset = CGSizeMake(0.0f, 1.0f);
+ header.backgroundColor = [UIColor colorWithWhite:1.0f alpha:0.8f];
+ return [header autorelease];
+}
+
+
+#pragma mark - SSCollectionViewDelegate
+
+- (CGSize)collectionView:(SSCollectionView *)aCollectionView itemSizeForSection:(NSUInteger)section {
+ return CGSizeMake(80.0f, 80.0f);
+}
+
+
+- (void)collectionView:(SSCollectionView *)aCollectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
+ NSString *title = [NSString stringWithFormat:@"You selected item %i in section %i!",
+ indexPath.row + 1, indexPath.section + 1];
+ UIAlertView *alert = [[UIAlertView alloc] initWithTitle:title message:nil delegate:nil
+ cancelButtonTitle:@"Oh, awesome!" otherButtonTitles:nil];
+ [alert show];
+ [alert release];
+}
+
+
+- (CGFloat)collectionView:(SSCollectionView *)aCollectionView heightForHeaderInSection:(NSUInteger)section {
+ return 40.0f;
+}
+
+@end
View
16 examples/SSCatalog/Classes/SCGradientViewDemoViewController.h
@@ -0,0 +1,16 @@
+//
+// SCGradientViewDemoViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 10/27/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+@interface SCGradientViewDemoViewController : UIViewController
+
++ (NSString *)title;
+
+- (void)changeColor:(id)sender;
+- (void)updateScale:(id)sender;
+
+@end
View
102 examples/SSCatalog/Classes/SCGradientViewDemoViewController.m
@@ -0,0 +1,102 @@
+//
+// SCGradientViewDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 10/27/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+#import "SCGradientViewDemoViewController.h"
+
+@implementation SCGradientViewDemoViewController {
+ BOOL _blue;
+ SSGradientView *_gradientView;
+}
+
+
+#pragma mark - Class Methods
+
++ (NSString *)title {
+ return @"Gradient View";
+}
+
+
+#pragma mark - NSObject
+
+- (void)dealloc {
+ [_gradientView release];
+ [super dealloc];
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = [[self class] title];
+ self.view.backgroundColor = [UIColor whiteColor];
+
+ // Gradient view
+ _gradientView = [[SSGradientView alloc] initWithFrame:CGRectMake(20.0f, 20.0f, 280.0f, 280.0f)];
+ _gradientView.autoresizingMask = UIViewAutoresizingFlexibleWidth;
+ _gradientView.topBorderColor = [UIColor colorWithRed:0.558f green:0.599f blue:0.643f alpha:1.0f];
+ _gradientView.topInsetColor = [UIColor colorWithWhite:1.0f alpha:0.3f];
+ _gradientView.colors = [NSArray arrayWithObjects:
+ [UIColor colorWithRed:0.676f green:0.722f blue:0.765f alpha:1.0f],
+ [UIColor colorWithRed:0.514f green:0.568f blue:0.617f alpha:1.0f],
+ nil];
+ _gradientView.bottomBorderColor = [UIColor colorWithRed:0.428f green:0.479f blue:0.520f alpha:1.0f];
+ [self.view addSubview:_gradientView];
+
+ // Change color button
+ UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
+ button.frame = CGRectMake(20.0f, 320.0f, 280.0f, 37.0f);
+ [button setTitle:@"Change Color" forState:UIControlStateNormal];
+ [button addTarget:self action:@selector(changeColor:) forControlEvents:UIControlEventTouchUpInside];
+ [self.view addSubview:button];
+
+ // Scale slider
+ UISlider *scaleSlider = [[UISlider alloc] initWithFrame:CGRectMake(20.0f, 377.0f, 280.0f, 20.0f)];
+ scaleSlider.value = 1.0f;
+ scaleSlider.minimumValue = 0.0f;
+ scaleSlider.maximumValue = 1.0f;
+ [scaleSlider addTarget:self action:@selector(updateScale:) forControlEvents:UIControlEventValueChanged];
+ [self.view addSubview:scaleSlider];
+ [scaleSlider release];
+
+ _blue = YES;
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+
+#pragma mark - Actions
+
+- (void)changeColor:(id)sender {
+ if (_blue) {
+ _gradientView.colors = [NSArray arrayWithObjects:
+ [UIColor redColor],
+ [UIColor orangeColor],
+ nil];
+ } else {
+ _gradientView.colors = [NSArray arrayWithObjects:
+ [UIColor colorWithRed:0.676f green:0.722f blue:0.765f alpha:1.0f],
+ [UIColor colorWithRed:0.514f green:0.568f blue:0.617f alpha:1.0f],
+ nil];
+ }
+
+ _blue = !_blue;
+}
+
+
+- (void)updateScale:(id)sender {
+ _gradientView.gradientScale = [(UISlider *)sender value];
+}
+
+@end
View
16 examples/SSCatalog/Classes/SCHUDViewDemoViewController.h
@@ -0,0 +1,16 @@
+//
+// SCHUDViewDemoViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 11/18/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+@interface SCHUDViewDemoViewController : UIViewController
+
++ (NSString *)title;
+
+- (void)complete:(id)sender;
+- (void)pop:(id)sender;
+
+@end
View
71 examples/SSCatalog/Classes/SCHUDViewDemoViewController.m
@@ -0,0 +1,71 @@
+//
+// SCHUDViewDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 11/18/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+#import "SCHUDViewDemoViewController.h"
+
+@implementation SCHUDViewDemoViewController {
+ SSHUDView *_hud;
+}
+
+
+#pragma mark - Class Methods
+
++ (NSString *)title {
+ return @"HUD View";
+}
+
+
+#pragma mark - NSObject
+
+- (void)dealloc {
+ [_hud release];
+ [super dealloc];
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = [[self class] title];
+ self.view.backgroundColor = [UIColor whiteColor];
+
+ // Show HUD
+ _hud = [[SSHUDView alloc] initWithTitle:@"Loading..."];
+// _hud.hudSize = CGSizeMake(60.0f, 60.0f);
+// _hud.textLabelHidden = YES;
+// _hud.hidesVignette = YES;
+ [_hud show];
+
+ // After 2 seconds, complete action
+ [self performSelector:@selector(complete:) withObject:nil afterDelay:2.0];
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+
+#pragma mark - Actions
+
+- (void)complete:(id)sender {
+ [_hud completeWithTitle:@"Finished"];
+ [self performSelector:@selector(pop:) withObject:nil afterDelay:0.7];
+}
+
+
+- (void)pop:(id)sender {
+ [_hud dismiss];
+ [self.navigationController popViewControllerAnimated:YES];
+}
+
+@end
View
15 examples/SSCatalog/Classes/SCImageCollectionViewItem.h
@@ -0,0 +1,15 @@
+//
+// SCImageCollectionViewItem.h
+// SSCatalog
+//
+// Created by Sam Soffes on 5/3/11.
+// Copyright 2011 Sam Soffes. All rights reserved.
+//
+
+@interface SCImageCollectionViewItem : SSCollectionViewItem
+
+@property (nonatomic, retain) NSURL *imageURL;
+
+- (id)initWithReuseIdentifier:(NSString *)aReuseIdentifier;
+
+@end
View
54 examples/SSCatalog/Classes/SCImageCollectionViewItem.m
@@ -0,0 +1,54 @@
+//
+// SCImageCollectionViewItem.m
+// SSCatalog
+//
+// Created by Sam Soffes on 5/3/11.
+// Copyright 2011 Sam Soffes. All rights reserved.
+//
+
+#import "SCImageCollectionViewItem.h"
+#import "UIImageView+AFNetworking.h"
+
+@implementation SCImageCollectionViewItem
+
+#pragma mark - Accessors
+
+@synthesize imageURL = _imageURL;
+
+- (void)setImageURL:(NSURL *)url {
+ [url retain];
+ [_imageURL release];
+ _imageURL = url;
+
+ if (_imageURL) {
+ [self.imageView setImageWithURL:url placeholderImage:nil];
+ } else {
+ self.imageView.image = nil;
+ }
+}
+
+
+#pragma mark - NSObject
+
+- (void)dealloc {
+ [_imageURL release];
+ [super dealloc];
+}
+
+
+#pragma mark - Initializer
+
+- (id)initWithReuseIdentifier:(NSString *)aReuseIdentifier {
+ if ((self = [super initWithStyle:SSCollectionViewItemStyleImage reuseIdentifier:aReuseIdentifier])) {
+ self.imageView.backgroundColor = [UIColor colorWithWhite:0.95f alpha:1.0f];
+ }
+ return self;
+}
+
+
+- (void)prepareForReuse {
+ [super prepareForReuse];
+ self.imageURL = nil;
+}
+
+@end
View
13 examples/SSCatalog/Classes/SCLineViewDemoViewController.h
@@ -0,0 +1,13 @@
+//
+// SCLineViewDemoViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 4/19/10.
+// Copyright 2010 Sam Soffes, Inc. All rights reserved.
+//
+
+@interface SCLineViewDemoViewController : UIViewController
+
++ (NSString *)title;
+
+@end
View
57 examples/SSCatalog/Classes/SCLineViewDemoViewController.m
@@ -0,0 +1,57 @@
+//
+// SCLineViewDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 4/19/10.
+// Copyright 2010 Sam Soffes, Inc. All rights reserved.
+//
+
+#import "SCLineViewDemoViewController.h"
+
+@implementation SCLineViewDemoViewController
+
+#pragma mark - Class Methods
+
++ (NSString *)title {
+ return @"Line View";
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = [[self class] title];
+ self.view.backgroundColor = [UIColor colorWithRed:0.851f green:0.859f blue:0.882f alpha:1.0f];
+
+ SSLineView *lineView1 = [[SSLineView alloc] initWithFrame:CGRectMake(20.0f, 20.0f, 280.0f, 2.0f)];
+ [self.view addSubview:lineView1];
+ [lineView1 release];
+
+ SSLineView *lineView2 = [[SSLineView alloc] initWithFrame:CGRectMake(20.0f, 42.0f, 280.0f, 2.0f)];
+ lineView2.lineColor = [UIColor blueColor];
+ [self.view addSubview:lineView2];
+ [lineView2 release];
+
+ SSLineView *lineView3 = [[SSLineView alloc] initWithFrame:CGRectMake(20.0f, 64.0f, 280.0f, 2.0f)];
+ lineView3.lineColor = [UIColor orangeColor];
+ lineView3.dashLengths = [NSArray arrayWithObjects:[NSNumber numberWithFloat:5.0f], [NSNumber numberWithFloat:2.0f], nil];
+ [self.view addSubview:lineView3];
+ [lineView3 release];
+
+ SSLineView *lineView4 = [[SSLineView alloc] initWithFrame:CGRectMake(20.0f, 86.0f, 280.0f, 2.0f)];
+ lineView4.lineColor = [UIColor greenColor];
+ lineView4.dashLengths = [NSArray arrayWithObjects:[NSNumber numberWithFloat:2.0f], [NSNumber numberWithFloat:2.0f], nil];
+ [self.view addSubview:lineView4];
+ [lineView4 release];
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+@end
View
13 examples/SSCatalog/Classes/SCLoadingViewDemoViewController.h
@@ -0,0 +1,13 @@
+//
+// SCLoadingViewDemoViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 11/15/10.
+// Copyright 2010 Sam Soffes. All rights reserved.
+//
+
+@interface SCLoadingViewDemoViewController : UIViewController
+
++ (NSString *)title;
+
+@end
View
43 examples/SSCatalog/Classes/SCLoadingViewDemoViewController.m
@@ -0,0 +1,43 @@
+//
+// SCLoadingViewDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 11/15/10.
+// Copyright 2010 Sam Soffes. All rights reserved.
+//
+
+#import "SCLoadingViewDemoViewController.h"
+
+@implementation SCLoadingViewDemoViewController
+
+#pragma mark - Class Methods
+
++ (NSString *)title {
+ return @"Loading View";
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = [[self class] title];
+ self.view.backgroundColor = [UIColor colorWithRed:0.851f green:0.859f blue:0.882f alpha:1.0f];
+
+ CGSize size = self.view.frame.size;
+
+ SSLoadingView *loadingView = [[SSLoadingView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, size.width, size.height)];
+ [self.view addSubview:loadingView];
+ [loadingView release];
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+
+@end
View
15 examples/SSCatalog/Classes/SCPickerDemoViewController.h
@@ -0,0 +1,15 @@
+//
+// SCPickerDemoViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 10/9/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+@interface SCPickerDemoViewController : UITableViewController
+
+@property (nonatomic, retain) NSString *selectedAbbreviation;
+
++ (NSString *)title;
+
+@end
View
99 examples/SSCatalog/Classes/SCPickerDemoViewController.m
@@ -0,0 +1,99 @@
+//
+// SCPickerDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 10/9/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+#import "SCPickerDemoViewController.h"
+#import "SCPickerDetailViewController.h"
+
+@implementation SCPickerDemoViewController
+
+#pragma mark - Accessors
+
+@synthesize selectedAbbreviation = _selectedAbbreviation;
+
+
+#pragma mark - Class Methods
+
++ (NSString *)title {
+ return @"Settings Picker";
+}
+
+
+#pragma mark - NSObject
+
+- (id)init {
+ return self = [super initWithStyle:UITableViewStyleGrouped];
+}
+
+
+- (void)dealloc {
+ [_selectedAbbreviation release];
+ [super dealloc];
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = [[self class] title];
+ self.selectedAbbreviation = [[NSTimeZone defaultTimeZone] abbreviation];
+}
+
+
+- (void)viewWillAppear:(BOOL)animated {
+ [super viewWillAppear:animated];
+ [self.tableView reloadData];
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+
+#pragma mark - UITableViewDataSource
+
+- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
+ return 1;
+}
+
+
+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
+ return 1;
+}
+
+
+- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
+ static NSString *cellIdentifier = @"cell";
+
+ UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
+ if (cell == nil) {
+ cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:cellIdentifier] autorelease];
+ }
+
+ cell.textLabel.text = @"Picker Value";
+ cell.detailTextLabel.text = [[NSTimeZone timeZoneWithAbbreviation:self.selectedAbbreviation] name];
+ cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
+
+ return cell;
+}
+
+
+#pragma mark - UITableViewDelegate
+
+- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
+ SCPickerDetailViewController *viewController = [[SCPickerDetailViewController alloc] initWithStyle:UITableViewStyleGrouped];
+ viewController.selectedKey = self.selectedAbbreviation;
+ [self.navigationController pushViewController:viewController animated:YES];
+ [viewController release];
+}
+
+@end
View
10 examples/SSCatalog/Classes/SCPickerDetailViewController.h
@@ -0,0 +1,10 @@
+//
+// SCPickerDetailViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 10/9/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+@interface SCPickerDetailViewController : SSPickerViewController
+@end
View
54 examples/SSCatalog/Classes/SCPickerDetailViewController.m
@@ -0,0 +1,54 @@
+//
+// SCPickerDetailViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 10/9/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+#import "SCPickerDetailViewController.h"
+#import "SCPickerDemoViewController.h"
+
+@implementation SCPickerDetailViewController
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = @"Choose";
+}
+
+
+#pragma mark - SSPickerViewController
+
+- (void)loadKeys {
+ self.keys = [[NSTimeZone abbreviationDictionary] allKeys];
+}
+
+
+- (NSString *)cellTextForKey:(NSString *)key {
+ return [[NSTimeZone timeZoneWithAbbreviation:key] name];
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+
+#pragma mark - UITableViewDelegate
+
+- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
+ [super tableView:tableView didSelectRowAtIndexPath:indexPath];
+
+ // Notify the parent view controller of the change
+ SCPickerDemoViewController *viewController = (SCPickerDemoViewController *)[self.navigationController.viewControllers objectAtIndex:([self.navigationController.viewControllers count] - 2)];
+ viewController.selectedAbbreviation = [self.keys objectAtIndex:indexPath.row];
+
+ [self.navigationController popViewControllerAnimated:YES];
+}
+
+@end
View
15 examples/SSCatalog/Classes/SCPieProgressViewDemoViewController.h
@@ -0,0 +1,15 @@
+//
+// SCPieProgressViewDemoViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 4/22/10.
+// Copyright 2010 Sam Soffes, Inc. All rights reserved.
+//
+
+@interface SCPieProgressViewDemoViewController : UIViewController
+
++ (NSString *)title;
+
+- (void)incrementProgress:(NSTimer *)timer;
+
+@end
View
102 examples/SSCatalog/Classes/SCPieProgressViewDemoViewController.m
@@ -0,0 +1,102 @@
+ //
+// SCPieProgressViewDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 4/22/10.
+// Copyright 2010 Sam Soffes, Inc. All rights reserved.
+//
+
+#import "SCPieProgressViewDemoViewController.h"
+
+@implementation SCPieProgressViewDemoViewController {
+ SSPieProgressView *_progressView7;
+ NSTimer *_timer;
+}
+
+
+#pragma mark - Class Methods
+
++ (NSString *)title {
+ return @"Pie Progress View";
+}
+
+
+#pragma mark - NSObject
+
+- (void)dealloc {
+ [_progressView7 release];
+ [_timer invalidate];
+ [_timer release];
+ [super dealloc];
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = [[self class] title];
+ self.view.backgroundColor = [UIColor colorWithRed:0.851f green:0.859f blue:0.882f alpha:1.0f];
+
+ SSPieProgressView *progressView1 = [[SSPieProgressView alloc] initWithFrame:CGRectMake(20.0f, 20.0f, 55.0f, 55.0f)];
+ progressView1.progress = 0.25;
+ [self.view addSubview:progressView1];
+ [progressView1 release];
+
+ SSPieProgressView *progressView2 = [[SSPieProgressView alloc] initWithFrame:CGRectMake(95.0f, 20.0f, 55.0f, 55.0f)];
+ progressView2.progress = 0.50;
+ [self.view addSubview:progressView2];
+ [progressView2 release];
+
+ SSPieProgressView *progressView3 = [[SSPieProgressView alloc] initWithFrame:CGRectMake(170.0f, 20.0f, 55.0f, 55.0f)];
+ progressView3.progress = 0.75;
+ [self.view addSubview:progressView3];
+ [progressView3 release];
+
+ SSPieProgressView *progressView4 = [[SSPieProgressView alloc] initWithFrame:CGRectMake(245.0f, 20.0f, 55.0f, 55.0f)];
+ progressView4.progress = 1.0;
+ [self.view addSubview:progressView4];
+ [progressView4 release];
+
+ SSPieProgressView *progressView5 = [[SSPieProgressView alloc] initWithFrame:CGRectMake(20.0f, 95.0f, 130.0f, 130.0f)];
+ progressView5.progress = 0.33;
+ [self.view addSubview:progressView5];
+ [progressView5 release];
+
+ SSPieProgressView *progressView6 = [[SSPieProgressView alloc] initWithFrame:CGRectMake(170.0f, 95.0f, 130.0f, 130.0f)];
+ progressView6.progress = 0.66;
+ [self.view addSubview:progressView6];
+ [progressView6 release];
+
+ _progressView7 = [[SSPieProgressView alloc] initWithFrame:CGRectMake(95.0f, 245.0f, 130.0f, 130.0f)];
+ [self.view addSubview:_progressView7];
+ [_progressView7 release];
+
+ _timer = [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(incrementProgress:) userInfo:nil repeats:YES];
+}
+
+
+- (void)viewDidUnload {
+ [super viewDidUnload];
+ [_timer invalidate];
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+
+#pragma mark - Timer
+
+- (void)incrementProgress:(NSTimer *)timer {
+ _progressView7.progress = _progressView7.progress + 0.01;
+ if (_progressView7.progress == 1.0f) {
+ _progressView7.progress = 0.0;
+ }
+}
+
+@end
View
11 examples/SSCatalog/Classes/SCRootViewController.h
@@ -0,0 +1,11 @@
+//
+// SCRootViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 10/9/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+@interface SCRootViewController : UITableViewController
+
+@end
View
125 examples/SSCatalog/Classes/SCRootViewController.m
@@ -0,0 +1,125 @@
+//
+// SCRootViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 10/9/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+#import "SCRootViewController.h"
+#import "SCPickerDemoViewController.h"
+#import "SCGradientViewDemoViewController.h"
+
+static NSString *const kTitleKey = @"title";
+static NSString *const kClassesKey = @"classes";
+
+@interface UIViewController (SCRootViewControllerAdditions)
++ (id)setup;
+@end
+
+@implementation SCRootViewController {
+ NSArray *_viewControllers;
+}
+
+
+#pragma mark - NSObject
+
+- (void)dealloc {
+ [_viewControllers release];
+ [super dealloc];
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+
+ self.title = @"SSCatalog";
+
+ _viewControllers = [[NSArray alloc] initWithObjects:
+ [NSDictionary dictionaryWithObjectsAndKeys:
+ [NSArray arrayWithObjects:
+ @"SCBadgeTableViewCellDemoViewController",
+ @"SCCollectionViewDemoViewController",
+ @"SCGradientViewDemoViewController",
+ @"SCHUDViewDemoViewController",
+ @"SCLineViewDemoViewController",
+ @"SCLoadingViewDemoViewController",
+ @"SCPieProgressViewDemoViewController",
+ nil], kClassesKey,
+ @"Views", kTitleKey,
+ nil],
+ [NSDictionary dictionaryWithObjectsAndKeys:
+ [NSArray arrayWithObjects:
+ @"SCAddressBarDemoViewController",
+ @"SCSegmentedControlDemoViewController",
+ @"SCSwitchDemoViewController",
+ nil], kClassesKey,
+ @"Controls", kTitleKey,
+ nil],
+ [NSDictionary dictionaryWithObjectsAndKeys:
+ [NSArray arrayWithObjects:
+ @"SCPickerDemoViewController",
+ @"SSRatingDemoViewController",
+ nil], kClassesKey,
+ @"View Controllers", kTitleKey,
+ nil],
+ nil];
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+
+#pragma mark - UITableViewDataSource
+
+- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
+ return [_viewControllers count];
+}
+
+
+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
+ return [[[_viewControllers objectAtIndex:section] objectForKey:kClassesKey] count];
+}
+
+
+- (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] autorelease]; }
+
+ Class klass = [[NSBundle mainBundle] classNamed:[[[_viewControllers objectAtIndex:indexPath.section] objectForKey:kClassesKey] objectAtIndex:indexPath.row]];
+
+ cell.textLabel.text = [klass title];
+ cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
+
+ return cell;
+}
+
+
+- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
+ return [[_viewControllers objectAtIndex:section] objectForKey:kTitleKey];
+}
+
+
+#pragma mark - UITableViewDelegate
+
+- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
+ [self.tableView deselectRowAtIndexPath:indexPath animated:YES];
+
+ Class klass = [[NSBundle mainBundle] classNamed:[[[_viewControllers objectAtIndex:indexPath.section] objectForKey:kClassesKey] objectAtIndex:indexPath.row]];
+ UIViewController *viewController = [[klass alloc] init];
+ [self.navigationController pushViewController:viewController animated:YES];
+ [viewController release];
+}
+
+@end
View
15 examples/SSCatalog/Classes/SCSegmentedControlDemoViewController.h
@@ -0,0 +1,15 @@
+//
+// SCSegmentedControlDemoViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 2/14/11.
+// Copyright 2011 Sam Soffes. All rights reserved.
+//
+
+@interface SCSegmentedControlDemoViewController : UIViewController
+
++ (NSString *)title;
+
+- (void)valueChanged:(id)sender;
+
+@end
View
100 examples/SSCatalog/Classes/SCSegmentedControlDemoViewController.m
@@ -0,0 +1,100 @@
+//
+// SCSegmentedControlDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 2/14/11.
+// Copyright 2011 Sam Soffes. All rights reserved.
+//
+
+#import "SCSegmentedControlDemoViewController.h"
+
+@implementation SCSegmentedControlDemoViewController {
+ UISegmentedControl *_systemSegmentedControl;
+ SSSegmentedControl *_customSegmentedControl;
+}
+
+
+#pragma mark - Class Methods
+
++ (NSString *)title {
+ return @"Segmented Control";
+}
+
+
+#pragma mark - NSObject
+
+- (void)dealloc {
+ [_systemSegmentedControl release];
+ [_customSegmentedControl release];
+ [super dealloc];
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = [[self class] title];
+ self.view.backgroundColor = [UIColor colorWithRed:0.851f green:0.859f blue:0.882f alpha:1.0f];
+
+ UIFont *labelFont = [UIFont boldSystemFontOfSize:15.0f];
+ NSArray *items = [NSArray arrayWithObjects:@"Apples", @"Oranges", [UIImage imageNamed:@"SamLogo.png"], nil];
+
+ // System segmented control
+ UILabel *systemLabel = [[UILabel alloc] initWithFrame:CGRectMake(20.0f, 20.0f, 280.0f, 20.0f)];
+ systemLabel.text = @"UISegmentedControl";
+ systemLabel.font = labelFont;
+ systemLabel.backgroundColor = self.view.backgroundColor;
+ systemLabel.shadowColor = [UIColor whiteColor];
+ systemLabel.shadowOffset = CGSizeMake(0.0f, 1.0f);
+ [self.view addSubview:systemLabel];
+ [systemLabel release];
+
+ _systemSegmentedControl = [[UISegmentedControl alloc] initWithItems:items];
+ _systemSegmentedControl.frame = CGRectMake(20.0f, 50.0f, 280.0f, 32.0f);
+ _systemSegmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
+ _systemSegmentedControl.selectedSegmentIndex = 0;
+ [_systemSegmentedControl setEnabled:NO forSegmentAtIndex:1];
+ [_systemSegmentedControl addTarget:self action:@selector(valueChanged:) forControlEvents:UIControlEventValueChanged];
+ [self.view addSubview:_systemSegmentedControl];
+
+ // Custom segmented control
+ UILabel *customLabel = [[UILabel alloc] initWithFrame:CGRectMake(20.0f, 107.0f, 280.0f, 20.0f)];
+ customLabel.text = @"SSSegmentedControl";
+ customLabel.font = labelFont;
+ customLabel.backgroundColor = self.view.backgroundColor;
+ customLabel.shadowColor = [UIColor whiteColor];
+ customLabel.shadowOffset = CGSizeMake(0.0f, 1.0f);
+ [self.view addSubview:customLabel];
+ [customLabel release];
+
+ _customSegmentedControl = [[SSSegmentedControl alloc] initWithItems:items];
+ _customSegmentedControl.frame = CGRectMake(20.0f, 137.0f, 280.0f, 32.0f);
+ _customSegmentedControl.selectedSegmentIndex = 0;
+ [_customSegmentedControl setEnabled:NO forSegmentAtIndex:1];
+ [_customSegmentedControl addTarget:self action:@selector(valueChanged:) forControlEvents:UIControlEventValueChanged];
+ [self.view addSubview:_customSegmentedControl];
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+
+#pragma mark - Actions
+
+- (void)valueChanged:(id)sender {
+ NSLog(@"Value changed to %i", [sender selectedSegmentIndex]);
+
+ if (sender == _systemSegmentedControl) {
+ _customSegmentedControl.selectedSegmentIndex = _systemSegmentedControl.selectedSegmentIndex;
+ } else {
+ _systemSegmentedControl.selectedSegmentIndex = _customSegmentedControl.selectedSegmentIndex;
+ }
+}
+
+@end
View
14 examples/SSCatalog/Classes/SCSwitchDemoViewController.h
@@ -0,0 +1,14 @@
+//
+// SCSwitchDemoViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 11/19/10.
+// Copyright 2010 Sam Soffes. All rights reserved.
+//
+
+@interface SCSwitchDemoViewController : UIViewController
+
++ (NSString *)title;
+
+@end
+
View
97 examples/SSCatalog/Classes/SCSwitchDemoViewController.m
@@ -0,0 +1,97 @@
+//
+// SCSwitchDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 11/19/10.
+// Copyright 2010 Sam Soffes. All rights reserved.
+//
+
+#import "SCSwitchDemoViewController.h"
+
+@implementation SCSwitchDemoViewController
+
+#pragma mark - Class Methods
+
++ (NSString *)title {
+ return @"Switch";
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = [[self class] title];
+ self.view.backgroundColor = [UIColor colorWithRed:0.851f green:0.859f blue:0.882f alpha:1.0f];
+
+ UIFont *labelFont = [UIFont boldSystemFontOfSize:15.0f];
+
+ // System switch
+ UILabel *systemLabel = [[UILabel alloc] initWithFrame:CGRectMake(20.0f, 20.0f, 280.0f, 20.0f)];
+ systemLabel.text = @"Standard UISwitch";
+ systemLabel.font = labelFont;
+ systemLabel.backgroundColor = self.view.backgroundColor;
+ systemLabel.shadowColor = [UIColor whiteColor];
+ systemLabel.shadowOffset = CGSizeMake(0.0f, 1.0f);
+ [self.view addSubview:systemLabel];
+ [systemLabel release];
+
+ UISwitch *systemOffSwitch = [[UISwitch alloc] initWithFrame:CGRectMake(20.0f, 50.0f, 94.0f, 27.0f)];
+ [self.view addSubview:systemOffSwitch];
+ [systemOffSwitch release];
+
+ UISwitch *systemOnSwitch = [[UISwitch alloc] initWithFrame:CGRectMake(134.0f, 50.0f, 94.0f, 27.0f)];
+ systemOnSwitch.on = YES;
+ [self.view addSubview:systemOnSwitch];
+ [systemOnSwitch release];
+
+ // Default style
+ UILabel *defaultLabel = [[UILabel alloc] initWithFrame:CGRectMake(20.0f, 107.0f, 280.0f, 20.0f)];
+ defaultLabel.text = @"SSSwitchStyleDefault";
+ defaultLabel.font = labelFont;
+ defaultLabel.backgroundColor = self.view.backgroundColor;
+ defaultLabel.shadowColor = [UIColor whiteColor];
+ defaultLabel.shadowOffset = CGSizeMake(0.0f, 1.0f);
+ [self.view addSubview:defaultLabel];
+ [defaultLabel release];
+
+ SSSwitch *defaultOffSwitch = [[SSSwitch alloc] initWithFrame:CGRectMake(20.0f, 137.0f, 94.0f, 27.0f)];
+ [self.view addSubview:defaultOffSwitch];
+ [defaultOffSwitch release];
+
+ SSSwitch *defaultOnSwitch = [[SSSwitch alloc] initWithFrame:CGRectMake(134.0f, 137.0f, 94.0f, 27.0f)];
+ defaultOnSwitch.on = YES;
+ [self.view addSubview:defaultOnSwitch];
+ [defaultOnSwitch release];
+
+ // Airplane mode style
+ UILabel *airplaneLabel = [[UILabel alloc] initWithFrame:CGRectMake(20.0f, 194.0f, 280.0f, 20.0f)];
+ airplaneLabel.text = @"SSSwitchStyleAirplane";
+ airplaneLabel.font = labelFont;
+ airplaneLabel.backgroundColor = self.view.backgroundColor;
+ airplaneLabel.shadowColor = [UIColor whiteColor];
+ airplaneLabel.shadowOffset = CGSizeMake(0.0f, 1.0f);
+ [self.view addSubview:airplaneLabel];
+ [airplaneLabel release];
+
+ SSSwitch *airplaneOffSwitch = [[SSSwitch alloc] initWithFrame:CGRectMake(20.0f, 224.0f, 94.0f, 27.0f)];
+ airplaneOffSwitch.style = SSSwitchStyleAirplane;
+ [self.view addSubview:airplaneOffSwitch];
+ [airplaneOffSwitch release];
+
+ SSSwitch *airplaneOnSwitch = [[SSSwitch alloc] initWithFrame:CGRectMake(134.0f, 224.0f, 94.0f, 27.0f)];
+ airplaneOnSwitch.style = SSSwitchStyleAirplane;
+ airplaneOnSwitch.on = YES;
+ [self.view addSubview:airplaneOnSwitch];
+ [airplaneOnSwitch release];
+}
+
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
+ if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
+ return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
+ }
+ return YES;
+}
+
+@end
View
13 examples/SSCatalog/Classes/SSRatingDemoViewController.h
@@ -0,0 +1,13 @@
+//
+// SSRatingDemoViewController.h
+// SSCatalog
+//
+// Created by Sam Soffes on 2/3/11.
+// Copyright 2011 Sam Soffes. All rights reserved.
+//
+
+@interface SSRatingDemoViewController : SSRatingPickerViewController
+
++ (NSString *)title;
+
+@end
View
27 examples/SSCatalog/Classes/SSRatingDemoViewController.m
@@ -0,0 +1,27 @@
+//
+// SSRatingDemoViewController.m
+// SSCatalog
+//
+// Created by Sam Soffes on 2/3/11.
+// Copyright 2011 Sam Soffes. All rights reserved.
+//
+
+#import "SSRatingDemoViewController.h"
+
+@implementation SSRatingDemoViewController
+
+#pragma mark - Class Methods
+
++ (NSString *)title {
+ return @"Rating Picker";
+}
+
+
+#pragma mark - UIViewController
+
+- (void)viewDidLoad {
+ [super viewDidLoad];
+ self.title = [[self class] title];
+}
+
+@end
View
14 examples/SSCatalog/Other Sources/SSCatalog_Prefix.pch
@@ -0,0 +1,14 @@
+//
+// SSCatalog_Prefix.pch
+// SSCatalog
+//
+// Created by Sam Soffes on 9/21/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+// Prefix header for all source files of the 'SSCatalog' target in the 'SSCatalog' project
+//
+
+#ifdef __OBJC__
+ #import <UIKit/UIKit.h>
+ #import <SSToolkit/SSToolkit.h>
+#endif
View
15 examples/SSCatalog/Other Sources/main.m
@@ -0,0 +1,15 @@
+//
+// main.m
+// SSCatalog
+//
+// Created by Sam Soffes on 9/21/09.
+// Copyright 2009 Sam Soffes, Inc. All rights reserved.
+//
+
+#import "SCAppDelegate.h"
+
+int main(int argc, char *argv[]) {
+ @autoreleasepool {
+ return UIApplicationMain(argc, argv, nil, NSStringFromClass([SCAppDelegate class]));
+ }
+}
View
5 examples/SSCatalog/Podfile
@@ -0,0 +1,5 @@
+Pod::File.new do |f|
+ f.platform = :ios
+ f.dependency 'SSToolkit'
+ f.dependency 'AFNetworking'
+end
View
BIN examples/SSCatalog/Resources/Default-Landscape~ipad.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN examples/SSCatalog/Resources/Default-Portrait~ipad.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN examples/SSCatalog/Resources/Default.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN examples/SSCatalog/Resources/Default@2x.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN examples/SSCatalog/Resources/Icon-114.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN examples/SSCatalog/Resources/Icon-29.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN examples/SSCatalog/Resources/Icon-48.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN examples/SSCatalog/Resources/Icon-72.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN examples/SSCatalog/Resources/Icon.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
59 examples/SSCatalog/Resources/SSCatalog-Info.plist
@@ -0,0 +1,59 @@
+<?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">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>English</string>
+ <key>CFBundleDisplayName</key>
+ <string>${PRODUCT_NAME}</string>
+ <key>CFBundleDocumentTypes</key>
+ <array/>
+ <key>CFBundleExecutable</key>
+ <string>${EXECUTABLE_NAME}</string>
+ <key>CFBundleIconFiles</key>
+ <array>
+ <string>Icon.png</string>
+ <string>Icon-29.png</string>
+ <string>Icon-48.png</string>
+ <string>Icon-72.png</string>
+ <string>Icon-114.png</string>
+ </array>
+ <key>CFBundleIdentifier</key>
+ <string>com.samsoffes.sscatalog</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>${PRODUCT_NAME}</string>
+ <key>CFBundlePackageType</key>
+ <string>APPL</string>
+ <key>CFBundleSignature</key>
+ <string>????</string>
+ <key>CFBundleURLTypes</key>
+ <array/>
+ <key>CFBundleVersion</key>
+ <string>1.0</string>
+ <key>LSRequiresIPhoneOS</key>
+ <true/>
+ <key>UILaunchImageFile~iphone</key>
+ <string>Default.png</string>
+ <key>UIPrerenderedIcon</key>
+ <true/>
+ <key>UISupportedInterfaceOrientations</key>
+ <array>
+ <string>UIInterfaceOrientationPortrait</string>
+ <string>UIInterfaceOrientationLandscapeLeft</string>
+ <string>UIInterfaceOrientationLandscapeRight</string>
+ </array>
+ <key>UISupportedInterfaceOrientations~ipad</key>
+ <array>
+ <string>UIInterfaceOrientationPortrait</string>
+ <string>UIInterfaceOrientationPortraitUpsideDown</string>
+ <string>UIInterfaceOrientationLandscapeLeft</string>
+ <string>UIInterfaceOrientationLandscapeRight</string>
+ </array>
+ <key>UTExportedTypeDeclarations</key>
+ <array/>
+ <key>UTImportedTypeDeclarations</key>
+ <array/>
+</dict>
+</plist>
View
BIN examples/SSCatalog/Resources/SamLogo.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN examples/SSCatalog/Resources/SamLogo@2x.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN examples/SSCatalog/Resources/iTunesArtwork
Binary file not shown.
View
432 examples/SSCatalog/SSCatalog.xcodeproj/project.pbxproj
@@ -0,0 +1,432 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 46;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ 513D6103144F53BE00A8A360 /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 513D6102144F53BE00A8A360 /* libPods.a */; };
+ B21B85BE1067D4F300E5C076 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = B21B85BC1067D4F300E5C076 /* main.m */; };
+ B22042911370FD1800604D62 /* SCImageCollectionViewItem.m in Sources */ = {isa = PBXBuildFile; fileRef = B22042901370FD1800604D62 /* SCImageCollectionViewItem.m */; };
+ B24E9EAA121DC35B0085F81E /* SCAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = B24E9E99121DC35B0085F81E /* SCAppDelegate.m */; };
+ B24E9EAB121DC35B0085F81E /* SCGradientViewDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B24E9E9B121DC35B0085F81E /* SCGradientViewDemoViewController.m */; };
+ B24E9EAC121DC35B0085F81E /* SCHUDViewDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B24E9E9D121DC35B0085F81E /* SCHUDViewDemoViewController.m */; };
+ B24E9EAD121DC35B0085F81E /* SCLineViewDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B24E9E9F121DC35B0085F81E /* SCLineViewDemoViewController.m */; };
+ B24E9EAF121DC35B0085F81E /* SCPickerDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B24E9EA3121DC35B0085F81E /* SCPickerDemoViewController.m */; };
+ B24E9EB0121DC35B0085F81E /* SCPickerDetailViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B24E9EA5121DC35B0085F81E /* SCPickerDetailViewController.m */; };
+ B24E9EB1121DC35B0085F81E /* SCPieProgressViewDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B24E9EA7121DC35B0085F81E /* SCPieProgressViewDemoViewController.m */; };
+ B24E9EB2121DC35B0085F81E /* SCRootViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B24E9EA9121DC35B0085F81E /* SCRootViewController.m */; };
+ B25541EE12FF22B500D6E187 /* Default-Landscape~ipad.png in Resources */ = {isa = PBXBuildFile; fileRef = B25541ED12FF22B500D6E187 /* Default-Landscape~ipad.png */; };
+ B25541F012FF22BA00D6E187 /* Default-Portrait~ipad.png in Resources */ = {isa = PBXBuildFile; fileRef = B25541EF12FF22BA00D6E187 /* Default-Portrait~ipad.png */; };
+ B257303D1292524F001FC061 /* SCLoadingViewDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B257303C1292524F001FC061 /* SCLoadingViewDemoViewController.m */; };
+ B27B1A581224228000111EA2 /* SCCollectionViewDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B27B1A571224228000111EA2 /* SCCollectionViewDemoViewController.m */; };
+ B28C6D0B12FBE96600667755 /* SSRatingDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B28C6D0A12FBE96600667755 /* SSRatingDemoViewController.m */; };
+ B2ABED96130A0EC000AD7A1C /* SCSegmentedControlDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B2ABED95130A0EC000AD7A1C /* SCSegmentedControlDemoViewController.m */; };
+ B2AED4B512FF2145006C956B /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = B2AED4B312FF2145006C956B /* Default.png */; };
+ B2AED4B612FF2145006C956B /* Default@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = B2AED4B412FF2145006C956B /* Default@2x.png */; };
+ B2AED4BA12FF21F8006C956B /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B2AED4B712FF21F8006C956B /* CoreGraphics.framework */; };
+ B2AED4BB12FF21F8006C956B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B2AED4B812FF21F8006C956B /* Foundation.framework */; };
+ B2AED4BC12FF21F8006C956B /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B2AED4B912FF21F8006C956B /* UIKit.framework */; };
+ B2B3CEEF1296F78D001BAC94 /* SCSwitchDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B2B3CEEE1296F78D001BAC94 /* SCSwitchDemoViewController.m */; };
+ B2DAC3C413304D5700091D5F /* Icon-48.png in Resources */ = {isa = PBXBuildFile; fileRef = B2DAC3C113304D5700091D5F /* Icon-48.png */; };
+ B2DAC3C513304D5700091D5F /* SamLogo.png in Resources */ = {isa = PBXBuildFile; fileRef = B2DAC3C213304D5700091D5F /* SamLogo.png */; };
+ B2DAC3C613304D5700091D5F /* SamLogo@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = B2DAC3C313304D5700091D5F /* SamLogo@2x.png */; };
+ B2E241821301CE4900F7DC3B /* SCAddressBarDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B2E241811301CE4900F7DC3B /* SCAddressBarDemoViewController.m */; };
+ B2E709AE12FF286E00DFF898 /* Icon-29.png in Resources */ = {isa = PBXBuildFile; fileRef = B2E709A812FF286E00DFF898 /* Icon-29.png */; };
+ B2E709B012FF286E00DFF898 /* Icon-72.png in Resources */ = {isa = PBXBuildFile; fileRef = B2E709AA12FF286E00DFF898 /* Icon-72.png */; };
+ B2E709B112FF286E00DFF898 /* Icon-114.png in Resources */ = {isa = PBXBuildFile; fileRef = B2E709AB12FF286E00DFF898 /* Icon-114.png */; };
+ B2E709B312FF286E00DFF898 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = B2E709AD12FF286E00DFF898 /* Icon.png */; };
+ B2E709B512FF28CB00DFF898 /* iTunesArtwork in Resources */ = {isa = PBXBuildFile; fileRef = B2E709B412FF28CB00DFF898 /* iTunesArtwork */; };
+ E7FD242712F4FFC5006A6691 /* SCBadgeTableViewCellDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E7FD242612F4FFC5006A6691 /* SCBadgeTableViewCellDemoViewController.m */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+ 1D6058910D05DD3D006BFB54 /* SSCatalog.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SSCatalog.app; sourceTree = BUILT_PRODUCTS_DIR; };
+ 513D6100144F52F700A8A360 /* Pods.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Pods.xcconfig; path = Pods/Pods.xcconfig; sourceTree = "<group>"; };
+ 513D6102144F53BE00A8A360 /* libPods.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libPods.a; path = "Pods/build/Release-iphoneos/libPods.a"; sourceTree = "<group>"; };
+ B21B85BC1067D4F300E5C076 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
+ B220428F1370FD1800604D62 /* SCImageCollectionViewItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCImageCollectionViewItem.h; sourceTree = "<group>"; };
+ B22042901370FD1800604D62 /* SCImageCollectionViewItem.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCImageCollectionViewItem.m; sourceTree = "<group>"; };
+ B24E9E98121DC35B0085F81E /* SCAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCAppDelegate.h; sourceTree = "<group>"; };
+ B24E9E99121DC35B0085F81E /* SCAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCAppDelegate.m; sourceTree = "<group>"; };
+ B24E9E9A121DC35B0085F81E /* SCGradientViewDemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCGradientViewDemoViewController.h; sourceTree = "<group>"; };
+ B24E9E9B121DC35B0085F81E /* SCGradientViewDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCGradientViewDemoViewController.m; sourceTree = "<group>"; };
+ B24E9E9C121DC35B0085F81E /* SCHUDViewDemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCHUDViewDemoViewController.h; sourceTree = "<group>"; };
+ B24E9E9D121DC35B0085F81E /* SCHUDViewDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCHUDViewDemoViewController.m; sourceTree = "<group>"; };
+ B24E9E9E121DC35B0085F81E /* SCLineViewDemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCLineViewDemoViewController.h; sourceTree = "<group>"; };
+ B24E9E9F121DC35B0085F81E /* SCLineViewDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCLineViewDemoViewController.m; sourceTree = "<group>"; };
+ B24E9EA2121DC35B0085F81E /* SCPickerDemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCPickerDemoViewController.h; sourceTree = "<group>"; };
+ B24E9EA3121DC35B0085F81E /* SCPickerDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCPickerDemoViewController.m; sourceTree = "<group>"; };
+ B24E9EA4121DC35B0085F81E /* SCPickerDetailViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCPickerDetailViewController.h; sourceTree = "<group>"; };
+ B24E9EA5121DC35B0085F81E /* SCPickerDetailViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCPickerDetailViewController.m; sourceTree = "<group>"; };
+ B24E9EA6121DC35B0085F81E /* SCPieProgressViewDemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCPieProgressViewDemoViewController.h; sourceTree = "<group>"; };
+ B24E9EA7121DC35B0085F81E /* SCPieProgressViewDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCPieProgressViewDemoViewController.m; sourceTree = "<group>"; };
+ B24E9EA8121DC35B0085F81E /* SCRootViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCRootViewController.h; sourceTree = "<group>"; };
+ B24E9EA9121DC35B0085F81E /* SCRootViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCRootViewController.m; sourceTree = "<group>"; };
+ B24E9EB3121DC3610085F81E /* SSCatalog_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SSCatalog_Prefix.pch; sourceTree = "<group>"; };
+ B25541ED12FF22B500D6E187 /* Default-Landscape~ipad.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-Landscape~ipad.png"; sourceTree = "<group>"; };
+ B25541EF12FF22BA00D6E187 /* Default-Portrait~ipad.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-Portrait~ipad.png"; sourceTree = "<group>"; };
+ B257303B1292524F001FC061 /* SCLoadingViewDemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCLoadingViewDemoViewController.h; sourceTree = "<group>"; };
+ B257303C1292524F001FC061 /* SCLoadingViewDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCLoadingViewDemoViewController.m; sourceTree = "<group>"; };
+ B27B1A561224228000111EA2 /* SCCollectionViewDemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCCollectionViewDemoViewController.h; sourceTree = "<group>"; };
+ B27B1A571224228000111EA2 /* SCCollectionViewDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCCollectionViewDemoViewController.m; sourceTree = "<group>"; };
+ B27B1CCF12248F9D00111EA2 /* SSCatalog-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "SSCatalog-Info.plist"; sourceTree = "<group>"; };
+ B28C6D0912FBE96600667755 /* SSRatingDemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SSRatingDemoViewController.h; sourceTree = "<group>"; };
+ B28C6D0A12FBE96600667755 /* SSRatingDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SSRatingDemoViewController.m; sourceTree = "<group>"; };
+ B2ABED94130A0EC000AD7A1C /* SCSegmentedControlDemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCSegmentedControlDemoViewController.h; sourceTree = "<group>"; };
+ B2ABED95130A0EC000AD7A1C /* SCSegmentedControlDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCSegmentedControlDemoViewController.m; sourceTree = "<group>"; };
+ B2AED4B312FF2145006C956B /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = "<group>"; };
+ B2AED4B412FF2145006C956B /* Default@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default@2x.png"; sourceTree = "<group>"; };
+ B2AED4B712FF21F8006C956B /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
+ B2AED4B812FF21F8006C956B /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
+ B2AED4B912FF21F8006C956B /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
+ B2B3CEED1296F78D001BAC94 /* SCSwitchDemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCSwitchDemoViewController.h; sourceTree = "<group>"; };
+ B2B3CEEE1296F78D001BAC94 /* SCSwitchDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCSwitchDemoViewController.m; sourceTree = "<group>"; };
+ B2B3CF551296FA76001BAC94 /* SSToolkit.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; name = SSToolkit.bundle; path = ../Resources/SSToolkit.bundle; sourceTree = SOURCE_ROOT; };
+ B2DAC3C113304D5700091D5F /* Icon-48.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-48.png"; sourceTree = "<group>"; };
+ B2DAC3C213304D5700091D5F /* SamLogo.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = SamLogo.png; sourceTree = "<group>"; };
+ B2DAC3C313304D5700091D5F /* SamLogo@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "SamLogo@2x.png"; sourceTree = "<group>"; };
+ B2E241801301CE4900F7DC3B /* SCAddressBarDemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCAddressBarDemoViewController.h; sourceTree = "<group>"; };
+ B2E241811301CE4900F7DC3B /* SCAddressBarDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCAddressBarDemoViewController.m; sourceTree = "<group>"; };
+ B2E709A812FF286E00DFF898 /* Icon-29.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-29.png"; sourceTree = "<group>"; };
+ B2E709AA12FF286E00DFF898 /* Icon-72.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-72.png"; sourceTree = "<group>"; };
+ B2E709AB12FF286E00DFF898 /* Icon-114.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-114.png"; sourceTree = "<group>"; };
+ B2E709AD12FF286E00DFF898 /* Icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Icon.png; sourceTree = "<group>"; };
+ B2E709B412FF28CB00DFF898 /* iTunesArtwork */ = {isa = PBXFileReference; lastKnownFileType = file; path = iTunesArtwork; sourceTree = "<group>"; };
+ E7FD242512F4FFC5006A6691 /* SCBadgeTableViewCellDemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SCBadgeTableViewCellDemoViewController.h; sourceTree = "<group>"; };
+ E7FD242612F4FFC5006A6691 /* SCBadgeTableViewCellDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SCBadgeTableViewCellDemoViewController.m; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ 1D60588F0D05DD3D006BFB54 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 513D6103144F53BE00A8A360 /* libPods.a in Frameworks */,
+ B2AED4BA12FF21F8006C956B /* CoreGraphics.framework in Frameworks */,
+ B2AED4BB12FF21F8006C956B /* Foundation.framework in Frameworks */,
+ B2AED4BC12FF21F8006C956B /* UIKit.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ 080E96DDFE201D6D7F000001 /* Classes */ = {
+ isa = PBXGroup;
+ children = (
+ B27B1B0112246B4400111EA2 /* Demo App */,
+ B27B1B0312246B4E00111EA2 /* View Demos */,
+ B2B3CEFF1296F88B001BAC94 /* Control Demos */,
+ B27B1B0412246B6100111EA2 /* View Controller Demos */,
+ );
+ path = Classes;
+ sourceTree = "<group>";
+ };
+ 19C28FACFE9D520D11CA2CBB /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 1D6058910D05DD3D006BFB54 /* SSCatalog.app */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ 29B97314FDCFA39411CA2CEA /* CustomTemplate */ = {
+ isa = PBXGroup;
+ children = (
+ 513D6100144F52F700A8A360 /* Pods.xcconfig */,
+ 080E96DDFE201D6D7F000001 /* Classes */,
+ B21B85BB1067D4F300E5C076 /* Other Sources */,
+ B21B85BF1067D4FD00E5C076 /* Resources */,
+ 29B97323FDCFA39411CA2CEA /* Frameworks */,
+ 19C28FACFE9D520D11CA2CBB /* Products */,
+ );
+ name = CustomTemplate;
+ sourceTree = "<group>";
+ };
+ 29B97323FDCFA39411CA2CEA /* Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ B2AED4B712FF21F8006C956B /* CoreGraphics.framework */,
+ B2AED4B812FF21F8006C956B /* Foundation.framework */,
+ B2AED4B912FF21F8006C956B /* UIKit.framework */,
+ 513D6102144F53BE00A8A360 /* libPods.a */,
+ );
+ name = Frameworks;
+ sourceTree = "<group>";
+ };
+ B21B85BB1067D4F300E5C076 /* Other Sources */ = {
+ isa = PBXGroup;
+ children = (
+ B21B85BC1067D4F300E5C076 /* main.m */,
+ B24E9EB3121DC3610085F81E /* SSCatalog_Prefix.pch */,
+ );
+ path = "Other Sources";
+ sourceTree = "<group>";
+ };
+ B21B85BF1067D4FD00E5C076 /* Resources */ = {
+ isa = PBXGroup;
+ children = (
+ B2DAC3C113304D5700091D5F /* Icon-48.png */,
+ B2DAC3C213304D5700091D5F /* SamLogo.png */,
+ B2DAC3C313304D5700091D5F /* SamLogo@2x.png */,
+ B2E709AD12FF286E00DFF898 /* Icon.png */,
+ B2E709A812FF286E00DFF898 /* Icon-29.png */,
+ B2E709AA12FF286E00DFF898 /* Icon-72.png */,
+ B2E709AB12FF286E00DFF898 /* Icon-114.png */,
+ B2AED4B312FF2145006C956B /* Default.png */,
+ B2AED4B412FF2145006C956B /* Default@2x.png */,
+ B25541EF12FF22BA00D6E187 /* Default-Portrait~ipad.png */,
+ B25541ED12FF22B500D6E187 /* Default-Landscape~ipad.png */,
+ B2E709B412FF28CB00DFF898 /* iTunesArtwork */,
+ B2B3CF551296FA76001BAC94 /* SSToolkit.bundle */,
+ B27B1CCF12248F9D00111EA2 /* SSCatalog-Info.plist */,
+ );
+ path = Resources;
+ sourceTree = "<group>";
+ };
+ B27B1B0112246B4400111EA2 /* Demo App */ = {
+ isa = PBXGroup;
+ children = (
+ B24E9E98121DC35B0085F81E /* SCAppDelegate.h */,
+ B24E9E99121DC35B0085F81E /* SCAppDelegate.m */,
+ B24E9EA8121DC35B0085F81E /* SCRootViewController.h */,
+ B24E9EA9121DC35B0085F81E /* SCRootViewController.m */,
+ );
+ name = "Demo App";
+ sourceTree = "<group>";
+ };
+ B27B1B0312246B4E00111EA2 /* View Demos */ = {
+ isa = PBXGroup;
+ children = (
+ E7FD242512F4FFC5006A6691 /* SCBadgeTableViewCellDemoViewController.h */,
+ E7FD242612F4FFC5006A6691 /* SCBadgeTableViewCellDemoViewController.m */,
+ B27B1A561224228000111EA2 /* SCCollectionViewDemoViewController.h */,
+ B27B1A571224228000111EA2 /* SCCollectionViewDemoViewController.m */,
+ B220428F1370FD1800604D62 /* SCImageCollectionViewItem.h */,
+ B22042901370FD1800604D62 /* SCImageCollectionViewItem.m */,
+ B24E9E9A121DC35B0085F81E /* SCGradientViewDemoViewController.h */,
+ B24E9E9B121DC35B0085F81E /* SCGradientViewDemoViewController.m */,
+ B24E9E9C121DC35B0085F81E /* SCHUDViewDemoViewController.h */,
+ B24E9E9D121DC35B0085F81E /* SCHUDViewDemoViewController.m */,
+ B24E9E9E121DC35B0085F81E /* SCLineViewDemoViewController.h */,
+ B24E9E9F121DC35B0085F81E /* SCLineViewDemoViewController.m */,
+ B257303B1292524F001FC061 /* SCLoadingViewDemoViewController.h */,
+ B257303C1292524F001FC061 /* SCLoadingViewDemoViewController.m */,
+ B24E9EA6121DC35B0085F81E /* SCPieProgressViewDemoViewController.h */,
+ B24E9EA7121DC35B0085F81E /* SCPieProgressViewDemoViewController.m */,
+ );
+ name = "View Demos";
+ sourceTree = "<group>";
+ };
+ B27B1B0412246B6100111EA2 /* View Controller Demos */ = {
+ isa = PBXGroup;
+ children = (
+ B24E9EA2121DC35B0085F81E /* SCPickerDemoViewController.h */,
+ B24E9EA3121DC35B0085F81E /* SCPickerDemoViewController.m */,
+ B24E9EA4121DC35B0085F81E /* SCPickerDetailViewController.h */,
+ B24E9EA5121DC35B0085F81E /* SCPickerDetailViewController.m */,
+ B28C6D0912FBE96600667755 /* SSRatingDemoViewController.h */,
+ B28C6D0A12FBE96600667755 /* SSRatingDemoViewController.m */,
+ );
+ name = "View Controller Demos";
+ sourceTree = "<group>";
+ };
+ B2B3CEFF1296F88B001BAC94 /* Control Demos */ = {
+ isa = PBXGroup;
+ children = (
+ B2E241801301CE4900F7DC3B /* SCAddressBarDemoViewController.h */,
+ B2E241811301CE4900F7DC3B /* SCAddressBarDemoViewController.m */,
+ B2ABED94130A0EC000AD7A1C /* SCSegmentedControlDemoViewController.h */,
+ B2ABED95130A0EC000AD7A1C /* SCSegmentedControlDemoViewController.m */,
+ B2B3CEED1296F78D001BAC94 /* SCSwitchDemoViewController.h */,
+ B2B3CEEE1296F78D001BAC94 /* SCSwitchDemoViewController.m */,
+ );
+ name = "Control Demos";
+ sourceTree = "<group>";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+ 1D6058900D05DD3D006BFB54 /* SSCatalog */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "SSCatalog" */;
+ buildPhases = (
+ 1D60588D0D05DD3D006BFB54 /* Resources */,
+ 1D60588E0D05DD3D006BFB54 /* Sources */,
+ 1D60588F0D05DD3D006BFB54 /* Frameworks */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = SSCatalog;
+ productName = TWCatalog;
+ productReference = 1D6058910D05DD3D006BFB54 /* SSCatalog.app */;
+ productType = "com.apple.product-type.application";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ 29B97313FDCFA39411CA2CEA /* Project object */ = {
+ isa = PBXProject;
+ attributes = {
+ LastUpgradeCheck = 0420;
+ ORGANIZATIONNAME = "Sam Soffes";
+ };
+ buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "SSCatalog" */;
+ compatibilityVersion = "Xcode 3.2";
+ developmentRegion = English;
+ hasScannedForEncodings = 1;
+ knownRegions = (
+ English,
+ Japanese,
+ French,
+ German,
+ );
+ mainGroup = 29B97314FDCFA39411CA2CEA /* CustomTemplate */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ 1D6058900D05DD3D006BFB54 /* SSCatalog */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ 1D60588D0D05DD3D006BFB54 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ B2AED4B512FF2145006C956B /* Default.png in Resources */,
+ B2AED4B612FF2145006C956B /* Default@2x.png in Resources */,
+ B25541EE12FF22B500D6E187 /* Default-Landscape~ipad.png in Resources */,
+ B25541F012FF22BA00D6E187 /* Default-Portrait~ipad.png in Resources */,
+ B2E709AE12FF286E00DFF898 /* Icon-29.png in Resources */,
+ B2E709B012FF286E00DFF898 /* Icon-72.png in Resources */,
+ B2E709B112FF286E00DFF898 /* Icon-114.png in Resources */,
+ B2E709B312FF286E00DFF898 /* Icon.png in Resources */,
+ B2E709B512FF28CB00DFF898 /* iTunesArtwork in Resources */,
+ B2DAC3C413304D5700091D5F /* Icon-48.png in Resources */,
+ B2DAC3C513304D5700091D5F /* SamLogo.png in Resources */,
+ B2DAC3C613304D5700091D5F /* SamLogo@2x.png in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ 1D60588E0D05DD3D006BFB54 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ B21B85BE1067D4F300E5C076 /* main.m in Sources */,
+ B24E9EAA121DC35B0085F81E /* SCAppDelegate.m in Sources */,
+ B24E9EAB121DC35B0085F81E /* SCGradientViewDemoViewController.m in Sources */,
+ B24E9EAC121DC35B0085F81E /* SCHUDViewDemoViewController.m in Sources */,
+ B24E9EAD121DC35B0085F81E /* SCLineViewDemoViewController.m in Sources */,
+ B24E9EAF121DC35B0085F81E /* SCPickerDemoViewController.m in Sources */,
+ B24E9EB0121DC35B0085F81E /* SCPickerDetailViewController.m in Sources */,
+ B24E9EB1121DC35B0085F81E /* SCPieProgressViewDemoViewController.m in Sources */,
+ B24E9EB2121DC35B0085F81E /* SCRootViewController.m in Sources */,
+ B27B1A581224228000111EA2 /* SCCollectionViewDemoViewController.m in Sources */,
+ B257303D1292524F001FC061 /* SCLoadingViewDemoViewController.m in Sources */,
+ B2B3CEEF1296F78D001BAC94 /* SCSwitchDemoViewController.m in Sources */,
+ E7FD242712F4FFC5006A6691 /* SCBadgeTableViewCellDemoViewController.m in Sources */,
+ B28C6D0B12FBE96600667755 /* SSRatingDemoViewController.m in Sources */,
+ B2E241821301CE4900F7DC3B /* SCAddressBarDemoViewController.m in Sources */,
+ B2ABED96130A0EC000AD7A1C /* SCSegmentedControlDemoViewController.m in Sources */,
+ B22042911370FD1800604D62 /* SCImageCollectionViewItem.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+ 1D6058940D05DD3E006BFB54 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ baseConfigurationReference = 513D6100144F52F700A8A360 /* Pods.xcconfig */;
+ buildSettings = {
+ COPY_PHASE_STRIP = NO;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "Other Sources/SSCatalog_Prefix.pch";
+ INFOPLIST_FILE = "Resources/SSCatalog-Info.plist";
+ IPHONEOS_DEPLOYMENT_TARGET = 3.1.3;
+ PRODUCT_NAME = SSCatalog;
+ SDKROOT = iphoneos;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = Debug;
+ };
+ 1D6058950D05DD3E006BFB54 /* Release */ = {
+ isa = XCBuildConfiguration;
+ baseConfigurationReference = 513D6100144F52F700A8A360 /* Pods.xcconfig */;
+ buildSettings = {
+ COPY_PHASE_STRIP = YES;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "Other Sources/SSCatalog_Prefix.pch";
+ INFOPLIST_FILE = "Resources/SSCatalog-Info.plist";
+ IPHONEOS_DEPLOYMENT_TARGET = 3.1.3;
+ PRODUCT_NAME = SSCatalog;
+ SDKROOT = iphoneos;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = Release;
+ };
+ C01FCF4F08A954540054247B /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+ GCC_C_LANGUAGE_STANDARD = "compiler-default";
+ GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
+ GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 4.0;
+ SDKROOT = iphoneos;
+ };
+ name = Debug;
+ };
+ C01FCF5008A954540054247B /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+ GCC_C_LANGUAGE_STANDARD = "compiler-default";
+ GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
+ GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 4.0;
+ SDKROOT = iphoneos;
+ };
+ name = Release;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "SSCatalog" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 1D6058940D05DD3E006BFB54 /* Debug */,
+ 1D6058950D05DD3E006BFB54 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ C01FCF4E08A954540054247B /* Build configuration list for PBXProject "SSCatalog" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ C01FCF4F08A954540054247B /* Debug */,
+ C01FCF5008A954540054247B /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
+}
View
10 examples/SSCatalog/SSCatalog.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+ version = "1.0">
+ <FileRef
+ location = "group:Pods/Pods.xcodeproj">
+ </FileRef>
+ <FileRef
+ location = "group:SSCatalog.xcodeproj">
+ </FileRef>
+</Workspace>

0 comments on commit ee70447

Please sign in to comment.
Something went wrong with that request. Please try again.