Repository: ddeville/DDProgressView
Branch: master
Commit: bc9f6a8f3365
Files: 19
Total size: 54.7 KB
Directory structure:
gitextract_a_lusg03/
├── .gitattributes
├── .gitignore
├── DDProgressView/
│ ├── AppKitCompatibility.h
│ ├── AppKitCompatibility.m
│ ├── DDProgressView-Info.plist
│ ├── DDProgressView-Prefix.pch
│ ├── DDProgressView.h
│ ├── DDProgressView.m
│ ├── DDProgressViewAppDelegate.h
│ ├── DDProgressViewAppDelegate.m
│ ├── DDProgressViewViewController.h
│ ├── DDProgressViewViewController.m
│ ├── en.lproj/
│ │ ├── DDProgressViewViewController.xib
│ │ ├── InfoPlist.strings
│ │ └── MainWindow.xib
│ └── main.m
├── DDProgressView.xcodeproj/
│ └── project.pbxproj
├── LICENSE
└── README.md
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitattributes
================================================
*.pbxproj -crlf -diff -merge
================================================
FILE: .gitignore
================================================
# OS X
.DS_Store
.DS_store
profile
# XCode
*.mode*
*.perspective*
*.pbxuser*
*tmproj
External/GHUnit/*
PLBlocks.framework/*
*.pyc
# for Xcode 4
xcuserdata
*.xcworkspace
# built products
build
*.o
# Other source repository archive directories
.hg
.svn
CVS
# Automatic backup files
#~.nib/
*.swp
*~
*(Autosaved).rtfd/
Backup[ ]of[ ]*.pages/
Backup[ ]of[ ]*.key/
Backup[ ]of[ ]*.numbers/
================================================
FILE: DDProgressView/AppKitCompatibility.h
================================================
#define UIView NSView
#define UIColor NSColor
#define UIGraphicsGetCurrentContext() [[NSGraphicsContext currentContext] graphicsPort]
@interface NSView (UIKit)
@property (copy) UIColor *backgroundColor ;
- (void)setNeedsDisplay ;
@end
================================================
FILE: DDProgressView/AppKitCompatibility.m
================================================
#import "AppKitCompatibility.h"
@implementation NSView (UIKit)
- (UIColor *)backgroundColor
{
return nil ;
}
- (void)setBackgroundColor:(UIColor *)color
{
return ;
}
- (void)setNeedsDisplay
{
[self setNeedsDisplay:YES] ;
}
@end
================================================
FILE: DDProgressView/DDProgressView-Info.plist
================================================
CFBundleDevelopmentRegion
en
CFBundleDisplayName
${PRODUCT_NAME}
CFBundleExecutable
${EXECUTABLE_NAME}
CFBundleIconFile
CFBundleIdentifier
com.SnappyCode.${PRODUCT_NAME:rfc1034identifier}
CFBundleInfoDictionaryVersion
6.0
CFBundleName
${PRODUCT_NAME}
CFBundlePackageType
APPL
CFBundleShortVersionString
1.0
CFBundleSignature
????
CFBundleVersion
1.0
LSRequiresIPhoneOS
NSMainNibFile
MainWindow
UISupportedInterfaceOrientations
UIInterfaceOrientationPortrait
================================================
FILE: DDProgressView/DDProgressView-Prefix.pch
================================================
//
// Prefix header for all source files of the 'DDProgressView' target in the 'DDProgressView' project
//
#import
#ifndef __IPHONE_3_0
#warning "This project uses features only available in iPhone SDK 3.0 and later."
#endif
#ifdef __OBJC__
#import
#import
#endif
================================================
FILE: DDProgressView/DDProgressView.h
================================================
//
// DDProgressView.h
// DDProgressView
//
// Created by Damien DeVille on 3/13/11.
// Copyright 2011 Snappy Code. All rights reserved.
//
#if TARGET_OS_IPHONE
#import
#elif TARGET_OS_MAC
#import "AppKitCompatibility.h"
#endif
@interface DDProgressView : UIView
{
@private
float progress ;
UIColor *innerColor ;
UIColor *outerColor ;
UIColor *emptyColor ;
}
@property (nonatomic,retain) UIColor *innerColor ;
@property (nonatomic,retain) UIColor *outerColor ;
@property (nonatomic,retain) UIColor *emptyColor ;
@property (nonatomic,assign) float progress ;
@property (nonatomic,assign) CGFloat preferredFrameHeight ;
@end
================================================
FILE: DDProgressView/DDProgressView.m
================================================
//
// DDProgressView.m
// DDProgressView
//
// Created by Damien DeVille on 3/13/11.
// Copyright 2011 Snappy Code. All rights reserved.
//
#import "DDProgressView.h"
#define kDefaultProgressBarHeight 22.0f
#define kProgressBarWidth 160.0f
@implementation DDProgressView
@synthesize innerColor ;
@synthesize outerColor ;
@synthesize emptyColor ;
@synthesize progress ;
@synthesize preferredFrameHeight ;
- (id)init
{
return [self initWithFrame: CGRectZero] ;
}
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame: frame] ;
if (self)
{
self.backgroundColor = [UIColor clearColor] ;
self.innerColor = [UIColor lightGrayColor] ;
self.outerColor = [UIColor lightGrayColor] ;
self.emptyColor = [UIColor clearColor] ;
self.preferredFrameHeight = kDefaultProgressBarHeight;
if (frame.size.width == 0.0f)
frame.size.width = kProgressBarWidth ;
}
return self ;
}
- (void)dealloc
{
[innerColor release], innerColor = nil ;
[outerColor release], outerColor = nil ;
[emptyColor release], emptyColor = nil ;
[super dealloc] ;
}
- (void)setProgress:(float)theProgress
{
// make sure the user does not try to set the progress outside of the bounds
if (theProgress > 1.0f)
theProgress = 1.0f ;
if (theProgress < 0.0f)
theProgress = 0.0f ;
progress = theProgress ;
[self setNeedsDisplay] ;
}
- (void)setFrame:(CGRect)frame
{
// we set the height ourselves since it is fixed
frame.size.height = self.preferredFrameHeight ;
[super setFrame: frame] ;
}
- (void)setBounds:(CGRect)bounds
{
// we set the height ourselves since it is fixed
bounds.size.height = self.preferredFrameHeight ;
[super setBounds: bounds] ;
}
- (void)drawRect:(CGRect)rect
{
CGContextRef context = UIGraphicsGetCurrentContext() ;
// save the context
CGContextSaveGState(context) ;
// allow antialiasing
CGContextSetAllowsAntialiasing(context, TRUE) ;
// we first draw the outter rounded rectangle
rect = CGRectInset(rect, 1.0f, 1.0f) ;
CGFloat radius = 0.5f * rect.size.height ;
[outerColor setStroke] ;
CGContextSetLineWidth(context, 2.0f) ;
CGContextBeginPath(context) ;
CGContextMoveToPoint(context, CGRectGetMinX(rect), CGRectGetMidY(rect)) ;
CGContextAddArcToPoint(context, CGRectGetMinX(rect), CGRectGetMinY(rect), CGRectGetMidX(rect), CGRectGetMinY(rect), radius) ;
CGContextAddArcToPoint(context, CGRectGetMaxX(rect), CGRectGetMinY(rect), CGRectGetMaxX(rect), CGRectGetMidY(rect), radius) ;
CGContextAddArcToPoint(context, CGRectGetMaxX(rect), CGRectGetMaxY(rect), CGRectGetMidX(rect), CGRectGetMaxY(rect), radius) ;
CGContextAddArcToPoint(context, CGRectGetMinX(rect), CGRectGetMaxY(rect), CGRectGetMinX(rect), CGRectGetMidY(rect), radius) ;
CGContextClosePath(context) ;
CGContextDrawPath(context, kCGPathStroke) ;
// draw the empty rounded rectangle (shown for the "unfilled" portions of the progress
rect = CGRectInset(rect, 3.0f, 3.0f) ;
radius = 0.5f * rect.size.height ;
[emptyColor setFill] ;
CGContextBeginPath(context) ;
CGContextMoveToPoint(context, CGRectGetMinX(rect), CGRectGetMidY(rect)) ;
CGContextAddArcToPoint(context, CGRectGetMinX(rect), CGRectGetMinY(rect), CGRectGetMidX(rect), CGRectGetMinY(rect), radius) ;
CGContextAddArcToPoint(context, CGRectGetMaxX(rect), CGRectGetMinY(rect), CGRectGetMaxX(rect), CGRectGetMidY(rect), radius) ;
CGContextAddArcToPoint(context, CGRectGetMaxX(rect), CGRectGetMaxY(rect), CGRectGetMidX(rect), CGRectGetMaxY(rect), radius) ;
CGContextAddArcToPoint(context, CGRectGetMinX(rect), CGRectGetMaxY(rect), CGRectGetMinX(rect), CGRectGetMidY(rect), radius) ;
CGContextClosePath(context) ;
CGContextFillPath(context) ;
// draw the inside moving filled rounded rectangle
radius = 0.5f * rect.size.height ;
// make sure the filled rounded rectangle is not smaller than 2 times the radius
rect.size.width *= progress ;
if (rect.size.width < 2 * radius)
rect.size.width = 2 * radius ;
if(isnan(rect.size.width)){
rect.size.width = 14;
}
[innerColor setFill] ;
CGContextBeginPath(context) ;
CGContextMoveToPoint(context, CGRectGetMinX(rect), CGRectGetMidY(rect)) ;
CGContextAddArcToPoint(context, CGRectGetMinX(rect), CGRectGetMinY(rect), CGRectGetMidX(rect), CGRectGetMinY(rect), radius) ;
CGContextAddArcToPoint(context, CGRectGetMaxX(rect), CGRectGetMinY(rect), CGRectGetMaxX(rect), CGRectGetMidY(rect), radius) ;
CGContextAddArcToPoint(context, CGRectGetMaxX(rect), CGRectGetMaxY(rect), CGRectGetMidX(rect), CGRectGetMaxY(rect), radius) ;
CGContextAddArcToPoint(context, CGRectGetMinX(rect), CGRectGetMaxY(rect), CGRectGetMinX(rect), CGRectGetMidY(rect), radius) ;
CGContextClosePath(context) ;
CGContextFillPath(context) ;
// restore the context
CGContextRestoreGState(context) ;
}
@end
================================================
FILE: DDProgressView/DDProgressViewAppDelegate.h
================================================
//
// DDProgressViewAppDelegate.h
// DDProgressView
//
// Created by Damien DeVille on 3/13/11.
// Copyright 2011 Snappy Code. All rights reserved.
//
#import
@class DDProgressViewViewController ;
@interface DDProgressViewAppDelegate : NSObject
{
}
@property (nonatomic, retain) IBOutlet UIWindow *window ;
@property (nonatomic, retain) IBOutlet DDProgressViewViewController *viewController ;
@end
================================================
FILE: DDProgressView/DDProgressViewAppDelegate.m
================================================
//
// DDProgressViewAppDelegate.m
// DDProgressView
//
// Created by Damien DeVille on 3/13/11.
// Copyright 2011 Snappy Code. All rights reserved.
//
#import "DDProgressViewAppDelegate.h"
#import "DDProgressViewViewController.h"
@implementation DDProgressViewAppDelegate
@synthesize window = _window ;
@synthesize viewController = _viewController ;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window.rootViewController = self.viewController ;
[self.window makeKeyAndVisible] ;
return YES ;
}
- (void)applicationWillResignActive:(UIApplication *)application
{
/*
Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
*/
}
- (void)applicationDidEnterBackground:(UIApplication *)application
{
/*
Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
*/
}
- (void)applicationWillEnterForeground:(UIApplication *)application
{
/*
Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
*/
}
- (void)applicationDidBecomeActive:(UIApplication *)application
{
/*
Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
*/
}
- (void)applicationWillTerminate:(UIApplication *)application
{
/*
Called when the application is about to terminate.
Save data if appropriate.
See also applicationDidEnterBackground:.
*/
}
- (void)dealloc
{
[_window release] ;
[_viewController release] ;
[super dealloc] ;
}
@end
================================================
FILE: DDProgressView/DDProgressViewViewController.h
================================================
//
// DDProgressViewViewController.h
// DDProgressView
//
// Created by Damien DeVille on 3/13/11.
// Copyright 2011 Snappy Code. All rights reserved.
//
#import
@class DDProgressView ;
@interface DDProgressViewViewController : UIViewController
{
float testProgress ;
int progressDir ;
DDProgressView *progressView ;
DDProgressView *progressView2 ;
}
@end
================================================
FILE: DDProgressView/DDProgressViewViewController.m
================================================
//
// DDProgressViewViewController.m
// DDProgressView
//
// Created by Damien DeVille on 3/13/11.
// Copyright 2011 Snappy Code. All rights reserved.
//
#import "DDProgressViewViewController.h"
#import "DDProgressView.h"
@implementation DDProgressViewViewController
- (void)dealloc
{
[super dealloc] ;
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning] ;
}
- (void)viewDidLoad
{
testProgress = 0.0f ;
progressDir = 1 ;
[super viewDidLoad] ;
[self.view setBackgroundColor: [UIColor blackColor]] ;
progressView = [[DDProgressView alloc] initWithFrame: CGRectMake(20.0f, 140.0f, self.view.bounds.size.width-40.0f, 0.0f)] ;
[progressView setOuterColor: [UIColor grayColor]] ;
[progressView setInnerColor: [UIColor lightGrayColor]] ;
[self.view addSubview: progressView] ;
[progressView release] ;
progressView2 = [[DDProgressView alloc] initWithFrame: CGRectMake(20.0f, 180.0f, self.view.bounds.size.width-40.0f, 0.0f)] ;
[progressView2 setOuterColor: [UIColor clearColor]] ;
[progressView2 setInnerColor: [UIColor lightGrayColor]] ;
[progressView2 setEmptyColor: [UIColor darkGrayColor]] ;
[self.view addSubview: progressView2] ;
[progressView2 release] ;
// set a timer that updates the progress
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval: 0.03f target: self selector: @selector(updateProgress) userInfo: nil repeats: YES] ;
[timer fire] ;
}
- (void)updateProgress
{
testProgress += (0.01f * progressDir) ;
[progressView setProgress: testProgress] ;
[progressView2 setProgress: testProgress] ;
if (testProgress > 1 || testProgress < 0)
progressDir *= -1 ;
}
- (void)viewDidUnload
{
[super viewDidUnload] ;
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
@end
================================================
FILE: DDProgressView/en.lproj/DDProgressViewViewController.xib
================================================
1056
10J567
1305
1038.35
462.00
YES
IBFilesOwner
IBCocoaTouchFramework
IBFirstResponder
IBCocoaTouchFramework
274
{{0, 20}, {320, 460}}
3
MC43NQA
2
NO
IBCocoaTouchFramework
YES
view
7
YES
0
-1
File's Owner
-2
6
YES
YES
YES
-1.CustomClassName
-2.CustomClassName
6.IBEditorWindowLastContentRect
6.IBPluginDependency
YES
DDProgressViewViewController
UIResponder
{{239, 654}, {320, 480}}
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
YES
YES
10
YES
DDProgressViewViewController
UIViewController
toolBar
UIToolbar
toolBar
toolBar
UIToolbar
IBProjectSource
./Classes/DDProgressViewViewController.h
0
IBCocoaTouchFramework
com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3
YES
3
300
================================================
FILE: DDProgressView/en.lproj/InfoPlist.strings
================================================
/* Localized versions of Info.plist keys */
================================================
FILE: DDProgressView/en.lproj/MainWindow.xib
================================================
1024
10D571
786
1038.29
460.00
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
112
YES
YES
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
YES
YES
YES
YES
IBFilesOwner
IBCocoaTouchFramework
IBFirstResponder
IBCocoaTouchFramework
IBCocoaTouchFramework
DDProgressViewViewController
1
IBCocoaTouchFramework
NO
292
{320, 480}
1
MSAxIDEAA
NO
NO
IBCocoaTouchFramework
YES
YES
delegate
4
viewController
11
window
14
YES
0
-1
File's Owner
3
DDProgressView App Delegate
-2
10
12
YES
YES
-1.CustomClassName
-2.CustomClassName
10.CustomClassName
10.IBEditorWindowLastContentRect
10.IBPluginDependency
12.IBEditorWindowLastContentRect
12.IBPluginDependency
3.CustomClassName
3.IBPluginDependency
YES
UIApplication
UIResponder
DDProgressViewViewController
{{234, 376}, {320, 480}}
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
{{525, 346}, {320, 480}}
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
DDProgressViewAppDelegate
com.apple.InterfaceBuilder.IBCocoaTouchPlugin
YES
YES
YES
YES
15
YES
UIWindow
UIView
IBUserSource
DDProgressViewAppDelegate
NSObject
YES
YES
viewController
window
YES
DDProgressViewViewController
UIWindow
YES
YES
viewController
window
YES
viewController
DDProgressViewViewController
window
UIWindow
IBProjectSource
DDProgressViewAppDelegate.h
DDProgressViewAppDelegate
NSObject
IBUserSource
DDProgressViewViewController
UIViewController
IBProjectSource
DDProgressViewViewController.h
YES
NSObject
IBFrameworkSource
Foundation.framework/Headers/NSError.h
NSObject
IBFrameworkSource
Foundation.framework/Headers/NSFileManager.h
NSObject
IBFrameworkSource
Foundation.framework/Headers/NSKeyValueCoding.h
NSObject
IBFrameworkSource
Foundation.framework/Headers/NSKeyValueObserving.h
NSObject
IBFrameworkSource
Foundation.framework/Headers/NSKeyedArchiver.h
NSObject
IBFrameworkSource
Foundation.framework/Headers/NSObject.h
NSObject
IBFrameworkSource
Foundation.framework/Headers/NSRunLoop.h
NSObject
IBFrameworkSource
Foundation.framework/Headers/NSThread.h
NSObject
IBFrameworkSource
Foundation.framework/Headers/NSURL.h
NSObject
IBFrameworkSource
Foundation.framework/Headers/NSURLConnection.h
NSObject
IBFrameworkSource
UIKit.framework/Headers/UIAccessibility.h
NSObject
IBFrameworkSource
UIKit.framework/Headers/UINibLoading.h
NSObject
IBFrameworkSource
UIKit.framework/Headers/UIResponder.h
UIApplication
UIResponder
IBFrameworkSource
UIKit.framework/Headers/UIApplication.h
UIResponder
NSObject
UISearchBar
UIView
IBFrameworkSource
UIKit.framework/Headers/UISearchBar.h
UISearchDisplayController
NSObject
IBFrameworkSource
UIKit.framework/Headers/UISearchDisplayController.h
UIView
IBFrameworkSource
UIKit.framework/Headers/UITextField.h
UIView
UIResponder
IBFrameworkSource
UIKit.framework/Headers/UIView.h
UIViewController
IBFrameworkSource
UIKit.framework/Headers/UINavigationController.h
UIViewController
IBFrameworkSource
UIKit.framework/Headers/UIPopoverController.h
UIViewController
IBFrameworkSource
UIKit.framework/Headers/UISplitViewController.h
UIViewController
IBFrameworkSource
UIKit.framework/Headers/UITabBarController.h
UIViewController
UIResponder
IBFrameworkSource
UIKit.framework/Headers/UIViewController.h
UIWindow
UIView
IBFrameworkSource
UIKit.framework/Headers/UIWindow.h
0
IBCocoaTouchFramework
com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS
com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3
YES
DDProgressView.xcodeproj
3
112
================================================
FILE: DDProgressView/main.m
================================================
//
// main.m
// DDProgressView
//
// Created by Damien DeVille on 3/13/11.
// Copyright 2011 Snappy Code. All rights reserved.
//
#import
int main(int argc, char *argv[])
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
int retVal = UIApplicationMain(argc, argv, nil, nil);
[pool release];
return retVal;
}
================================================
FILE: DDProgressView.xcodeproj/project.pbxproj
================================================
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
6DA2E7E1132D6DC100985306 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6DA2E7E0132D6DC100985306 /* UIKit.framework */; };
6DA2E7E3132D6DC100985306 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6DA2E7E2132D6DC100985306 /* Foundation.framework */; };
6DA2E7E5132D6DC100985306 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6DA2E7E4132D6DC100985306 /* CoreGraphics.framework */; };
6DA2E7EB132D6DC100985306 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6DA2E7E9132D6DC100985306 /* InfoPlist.strings */; };
6DA2E7EE132D6DC100985306 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6DA2E7ED132D6DC100985306 /* main.m */; };
6DA2E7F1132D6DC100985306 /* DDProgressViewAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6DA2E7F0132D6DC100985306 /* DDProgressViewAppDelegate.m */; };
6DA2E7F4132D6DC100985306 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 6DA2E7F2132D6DC100985306 /* MainWindow.xib */; };
6DA2E7F7132D6DC100985306 /* DDProgressViewViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6DA2E7F6132D6DC100985306 /* DDProgressViewViewController.m */; };
6DA2E7FA132D6DC100985306 /* DDProgressViewViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 6DA2E7F8132D6DC100985306 /* DDProgressViewViewController.xib */; };
6DA2E802132D6E2E00985306 /* DDProgressView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6DA2E801132D6E2D00985306 /* DDProgressView.m */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
6DA2E7DC132D6DC100985306 /* DDProgressView.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = DDProgressView.app; sourceTree = BUILT_PRODUCTS_DIR; };
6DA2E7E0132D6DC100985306 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
6DA2E7E2132D6DC100985306 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
6DA2E7E4132D6DC100985306 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
6DA2E7E8132D6DC100985306 /* DDProgressView-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "DDProgressView-Info.plist"; sourceTree = ""; };
6DA2E7EA132D6DC100985306 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; };
6DA2E7EC132D6DC100985306 /* DDProgressView-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "DDProgressView-Prefix.pch"; sourceTree = ""; };
6DA2E7ED132D6DC100985306 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; };
6DA2E7EF132D6DC100985306 /* DDProgressViewAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DDProgressViewAppDelegate.h; sourceTree = ""; };
6DA2E7F0132D6DC100985306 /* DDProgressViewAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DDProgressViewAppDelegate.m; sourceTree = ""; };
6DA2E7F3132D6DC100985306 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainWindow.xib; sourceTree = ""; };
6DA2E7F5132D6DC100985306 /* DDProgressViewViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DDProgressViewViewController.h; sourceTree = ""; };
6DA2E7F6132D6DC100985306 /* DDProgressViewViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DDProgressViewViewController.m; sourceTree = ""; };
6DA2E7F9132D6DC100985306 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/DDProgressViewViewController.xib; sourceTree = ""; };
6DA2E800132D6E2D00985306 /* DDProgressView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DDProgressView.h; sourceTree = ""; };
6DA2E801132D6E2D00985306 /* DDProgressView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DDProgressView.m; sourceTree = ""; };
DA8635BA136EEA8000776109 /* AppKitCompatibility.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppKitCompatibility.h; sourceTree = ""; };
DA8635BB136EEA8000776109 /* AppKitCompatibility.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppKitCompatibility.m; sourceTree = ""; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
6DA2E7D9132D6DC100985306 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
6DA2E7E1132D6DC100985306 /* UIKit.framework in Frameworks */,
6DA2E7E3132D6DC100985306 /* Foundation.framework in Frameworks */,
6DA2E7E5132D6DC100985306 /* CoreGraphics.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
6DA2E7D1132D6DC100985306 = {
isa = PBXGroup;
children = (
6DA2E7E6132D6DC100985306 /* DDProgressView */,
6DA2E7DF132D6DC100985306 /* Frameworks */,
6DA2E7DD132D6DC100985306 /* Products */,
);
sourceTree = "";
};
6DA2E7DD132D6DC100985306 /* Products */ = {
isa = PBXGroup;
children = (
6DA2E7DC132D6DC100985306 /* DDProgressView.app */,
);
name = Products;
sourceTree = "";
};
6DA2E7DF132D6DC100985306 /* Frameworks */ = {
isa = PBXGroup;
children = (
6DA2E7E0132D6DC100985306 /* UIKit.framework */,
6DA2E7E2132D6DC100985306 /* Foundation.framework */,
6DA2E7E4132D6DC100985306 /* CoreGraphics.framework */,
);
name = Frameworks;
sourceTree = "";
};
6DA2E7E6132D6DC100985306 /* DDProgressView */ = {
isa = PBXGroup;
children = (
DA8635BA136EEA8000776109 /* AppKitCompatibility.h */,
DA8635BB136EEA8000776109 /* AppKitCompatibility.m */,
6DA2E800132D6E2D00985306 /* DDProgressView.h */,
6DA2E801132D6E2D00985306 /* DDProgressView.m */,
6DA2E7EF132D6DC100985306 /* DDProgressViewAppDelegate.h */,
6DA2E7F0132D6DC100985306 /* DDProgressViewAppDelegate.m */,
6DA2E7F2132D6DC100985306 /* MainWindow.xib */,
6DA2E7F5132D6DC100985306 /* DDProgressViewViewController.h */,
6DA2E7F6132D6DC100985306 /* DDProgressViewViewController.m */,
6DA2E7F8132D6DC100985306 /* DDProgressViewViewController.xib */,
6DA2E7E7132D6DC100985306 /* Supporting Files */,
);
path = DDProgressView;
sourceTree = "";
};
6DA2E7E7132D6DC100985306 /* Supporting Files */ = {
isa = PBXGroup;
children = (
6DA2E7E8132D6DC100985306 /* DDProgressView-Info.plist */,
6DA2E7E9132D6DC100985306 /* InfoPlist.strings */,
6DA2E7EC132D6DC100985306 /* DDProgressView-Prefix.pch */,
6DA2E7ED132D6DC100985306 /* main.m */,
);
name = "Supporting Files";
sourceTree = "";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
6DA2E7DB132D6DC100985306 /* DDProgressView */ = {
isa = PBXNativeTarget;
buildConfigurationList = 6DA2E7FD132D6DC100985306 /* Build configuration list for PBXNativeTarget "DDProgressView" */;
buildPhases = (
6DA2E7D8132D6DC100985306 /* Sources */,
6DA2E7D9132D6DC100985306 /* Frameworks */,
6DA2E7DA132D6DC100985306 /* Resources */,
);
buildRules = (
);
dependencies = (
);
name = DDProgressView;
productName = DDProgressView;
productReference = 6DA2E7DC132D6DC100985306 /* DDProgressView.app */;
productType = "com.apple.product-type.application";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
6DA2E7D3132D6DC100985306 /* Project object */ = {
isa = PBXProject;
attributes = {
ORGANIZATIONNAME = Acrossair;
};
buildConfigurationList = 6DA2E7D6132D6DC100985306 /* Build configuration list for PBXProject "DDProgressView" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 0;
knownRegions = (
en,
);
mainGroup = 6DA2E7D1132D6DC100985306;
productRefGroup = 6DA2E7DD132D6DC100985306 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
6DA2E7DB132D6DC100985306 /* DDProgressView */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
6DA2E7DA132D6DC100985306 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
6DA2E7EB132D6DC100985306 /* InfoPlist.strings in Resources */,
6DA2E7F4132D6DC100985306 /* MainWindow.xib in Resources */,
6DA2E7FA132D6DC100985306 /* DDProgressViewViewController.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
6DA2E7D8132D6DC100985306 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
6DA2E7EE132D6DC100985306 /* main.m in Sources */,
6DA2E7F1132D6DC100985306 /* DDProgressViewAppDelegate.m in Sources */,
6DA2E7F7132D6DC100985306 /* DDProgressViewViewController.m in Sources */,
6DA2E802132D6E2E00985306 /* DDProgressView.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXVariantGroup section */
6DA2E7E9132D6DC100985306 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
6DA2E7EA132D6DC100985306 /* en */,
);
name = InfoPlist.strings;
sourceTree = "";
};
6DA2E7F2132D6DC100985306 /* MainWindow.xib */ = {
isa = PBXVariantGroup;
children = (
6DA2E7F3132D6DC100985306 /* en */,
);
name = MainWindow.xib;
sourceTree = "";
};
6DA2E7F8132D6DC100985306 /* DDProgressViewViewController.xib */ = {
isa = PBXVariantGroup;
children = (
6DA2E7F9132D6DC100985306 /* en */,
);
name = DDProgressViewViewController.xib;
sourceTree = "";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
6DA2E7FB132D6DC100985306 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = DEBUG;
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_VERSION = com.apple.compilers.llvmgcc42;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 4.3;
SDKROOT = iphoneos;
};
name = Debug;
};
6DA2E7FC132D6DC100985306 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_VERSION = com.apple.compilers.llvmgcc42;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 4.3;
OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
SDKROOT = iphoneos;
};
name = Release;
};
6DA2E7FE132D6DC100985306 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
COPY_PHASE_STRIP = NO;
GCC_DYNAMIC_NO_PIC = NO;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "DDProgressView/DDProgressView-Prefix.pch";
INFOPLIST_FILE = "DDProgressView/DDProgressView-Info.plist";
PRODUCT_NAME = "$(TARGET_NAME)";
WRAPPER_EXTENSION = app;
};
name = Debug;
};
6DA2E7FF132D6DC100985306 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
COPY_PHASE_STRIP = YES;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "DDProgressView/DDProgressView-Prefix.pch";
INFOPLIST_FILE = "DDProgressView/DDProgressView-Info.plist";
PRODUCT_NAME = "$(TARGET_NAME)";
VALIDATE_PRODUCT = YES;
WRAPPER_EXTENSION = app;
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
6DA2E7D6132D6DC100985306 /* Build configuration list for PBXProject "DDProgressView" */ = {
isa = XCConfigurationList;
buildConfigurations = (
6DA2E7FB132D6DC100985306 /* Debug */,
6DA2E7FC132D6DC100985306 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
6DA2E7FD132D6DC100985306 /* Build configuration list for PBXNativeTarget "DDProgressView" */ = {
isa = XCConfigurationList;
buildConfigurations = (
6DA2E7FE132D6DC100985306 /* Debug */,
6DA2E7FF132D6DC100985306 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 6DA2E7D3132D6DC100985306 /* Project object */;
}
================================================
FILE: LICENSE
================================================
* Copyright (c) 2010-2011, Snappy Code
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Snappy Code nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY Snappy Code ''AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL Snappy Code BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
================================================
FILE: README.md
================================================
About
=====
**DDProgressView** is a custom progress view à la Twitter for iPhone.
DDProgressView works on both iOS and Mac OS. You must also compile the `AppKitCompatibility.m` file when targeting Mac OS.
Screenshot
==========

