mirror of
https://github.com/zhigang1992/MWPhotoBrowser.git
synced 2026-01-12 22:49:05 +08:00
Fixed several bugs. Added ability to select which page index is displayed first. Target now supports iPhone and iPad.
This commit is contained in:
@@ -27,7 +27,11 @@
|
||||
// Navigation & controls
|
||||
UIToolbar *toolbar;
|
||||
NSTimer *controlVisibilityTimer;
|
||||
UIBarButtonItem *previousButton, *nextButton;
|
||||
|
||||
BOOL performingLayout;
|
||||
BOOL rotating;
|
||||
|
||||
}
|
||||
|
||||
// Init
|
||||
@@ -51,6 +55,7 @@
|
||||
- (CGRect)frameForPagingScrollView;
|
||||
- (CGRect)frameForPageAtIndex:(NSUInteger)index;
|
||||
- (CGSize)contentSizeForPagingScrollView;
|
||||
- (CGPoint)contentOffsetForPageAtIndex:(int)index;
|
||||
- (CGRect)frameForNavigationBarAtOrientation:(UIInterfaceOrientation)orientation;
|
||||
- (CGRect)frameForToolbarAtOrientation:(UIInterfaceOrientation)orientation;
|
||||
|
||||
@@ -66,5 +71,8 @@
|
||||
- (void)setControlsHidden:(BOOL)hidden;
|
||||
- (void)toggleControls;
|
||||
|
||||
// Properties
|
||||
- (void)setInitialPageIndex:(int)index;
|
||||
|
||||
@end
|
||||
|
||||
|
||||
@@ -28,6 +28,8 @@
|
||||
// Defaults
|
||||
self.wantsFullScreenLayout = YES;
|
||||
currentPageIndex = 0;
|
||||
performingLayout = NO;
|
||||
rotating = NO;
|
||||
|
||||
}
|
||||
return self;
|
||||
@@ -57,6 +59,8 @@
|
||||
[visiblePages release];
|
||||
[recycledPages release];
|
||||
[toolbar release];
|
||||
[previousButton release];
|
||||
[nextButton release];
|
||||
}
|
||||
|
||||
- (void)dealloc {
|
||||
@@ -65,6 +69,8 @@
|
||||
[visiblePages release];
|
||||
[recycledPages release];
|
||||
[toolbar release];
|
||||
[previousButton release];
|
||||
[nextButton release];
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
@@ -87,6 +93,7 @@
|
||||
pagingScrollView.showsVerticalScrollIndicator = NO;
|
||||
pagingScrollView.backgroundColor = [UIColor blackColor];
|
||||
pagingScrollView.contentSize = [self contentSizeForPagingScrollView];
|
||||
pagingScrollView.contentOffset = [self contentOffsetForPageAtIndex:currentPageIndex];
|
||||
[self.view addSubview:pagingScrollView];
|
||||
|
||||
// Setup pages
|
||||
@@ -105,18 +112,18 @@
|
||||
[self.view addSubview:toolbar];
|
||||
|
||||
// Toolbar Items
|
||||
UIBarButtonItem *previousImage = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"UIBarButtonItemArrowLeft.png"] style:UIBarButtonItemStylePlain target:self action:@selector(gotoPreviousPage)];
|
||||
UIBarButtonItem *nextImage = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"UIBarButtonItemArrowRight.png"] style:UIBarButtonItemStylePlain target:self action:@selector(gotoNextPage)];
|
||||
previousButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"UIBarButtonItemArrowLeft.png"] style:UIBarButtonItemStylePlain target:self action:@selector(gotoPreviousPage)];
|
||||
nextButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"UIBarButtonItemArrowRight.png"] style:UIBarButtonItemStylePlain target:self action:@selector(gotoNextPage)];
|
||||
UIBarButtonItem *space = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
|
||||
NSMutableArray *items = [[NSMutableArray alloc] init];
|
||||
[items addObject:space];
|
||||
if (photos.count > 1) [items addObject:previousImage];
|
||||
if (photos.count > 1) [items addObject:previousButton];
|
||||
[items addObject:space];
|
||||
if (photos.count > 1) [items addObject:nextImage];
|
||||
if (photos.count > 1) [items addObject:nextButton];
|
||||
[items addObject:space];
|
||||
[toolbar setItems:items];
|
||||
[items release];
|
||||
[previousImage release], [nextImage release], [space release];
|
||||
[space release];
|
||||
|
||||
// Super
|
||||
[super viewDidLoad];
|
||||
@@ -157,6 +164,9 @@
|
||||
// Layout subviews
|
||||
- (void)performLayout {
|
||||
|
||||
// Flag
|
||||
performingLayout = YES;
|
||||
|
||||
// Toolbar
|
||||
toolbar.frame = [self frameForToolbarAtOrientation:self.interfaceOrientation];
|
||||
|
||||
@@ -176,16 +186,14 @@
|
||||
for (ZoomingScrollView *page in visiblePages) {
|
||||
page.frame = [self frameForPageAtIndex:page.index];
|
||||
[page setMaxMinZoomScalesForCurrentBounds];
|
||||
page.zoomScale = page.minimumZoomScale;
|
||||
}
|
||||
|
||||
// adjust contentOffset to preserve page location based on values collected prior to location
|
||||
CGFloat pageWidth = pagingScrollView.bounds.size.width;
|
||||
CGFloat newOffset = indexPriorToLayout * pageWidth;
|
||||
pagingScrollView.contentOffset = CGPointMake(newOffset, 0);
|
||||
// Adjust contentOffset to preserve page location based on values collected prior to location
|
||||
pagingScrollView.contentOffset = [self contentOffsetForPageAtIndex:indexPriorToLayout];
|
||||
|
||||
// Reset page
|
||||
// Reset
|
||||
currentPageIndex = indexPriorToLayout;
|
||||
performingLayout = NO;
|
||||
|
||||
}
|
||||
|
||||
@@ -351,6 +359,12 @@
|
||||
return CGSizeMake(bounds.size.width * photos.count, bounds.size.height);
|
||||
}
|
||||
|
||||
- (CGPoint)contentOffsetForPageAtIndex:(int)index {
|
||||
CGFloat pageWidth = pagingScrollView.bounds.size.width;
|
||||
CGFloat newOffset = index * pageWidth;
|
||||
return CGPointMake(newOffset, 0);
|
||||
}
|
||||
|
||||
- (CGRect)frameForNavigationBarAtOrientation:(UIInterfaceOrientation)orientation {
|
||||
CGFloat height = UIInterfaceOrientationIsPortrait(orientation) ? 44 : 32;
|
||||
return CGRectMake(0, 20, self.view.bounds.size.width, height);
|
||||
@@ -366,6 +380,8 @@
|
||||
|
||||
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
|
||||
|
||||
if (performingLayout || rotating) return;
|
||||
|
||||
// Tile pages
|
||||
[self tilePages];
|
||||
|
||||
@@ -402,6 +418,10 @@
|
||||
self.title = nil;
|
||||
}
|
||||
|
||||
// Buttons
|
||||
previousButton.enabled = (currentPageIndex > 0);
|
||||
nextButton.enabled = (currentPageIndex < photos.count-1);
|
||||
|
||||
}
|
||||
|
||||
- (void)jumpToPageAtIndex:(int)index {
|
||||
@@ -496,6 +516,7 @@
|
||||
|
||||
// Remember page index before rotation
|
||||
pageIndexBeforeRotation = currentPageIndex;
|
||||
rotating = YES;
|
||||
|
||||
}
|
||||
|
||||
@@ -510,4 +531,21 @@
|
||||
|
||||
}
|
||||
|
||||
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {
|
||||
rotating = NO;
|
||||
}
|
||||
|
||||
#pragma mark -
|
||||
#pragma mark Properties
|
||||
|
||||
- (void)setInitialPageIndex:(int)index {
|
||||
if (![self isViewLoaded]) {
|
||||
if (index < 0 || index >= photos.count) {
|
||||
currentPageIndex = 0;
|
||||
} else {
|
||||
currentPageIndex = index;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@@ -99,6 +99,7 @@
|
||||
|
||||
// Create browser
|
||||
MWPhotoBrowser *browser = [[MWPhotoBrowser alloc] initWithPhotos:photos];
|
||||
// [browser setInitialPageIndex:1]; Can be changed if desired
|
||||
[self.navigationController pushViewController:browser animated:YES];
|
||||
[browser release];
|
||||
[photos release];
|
||||
|
||||
@@ -77,10 +77,12 @@
|
||||
|
||||
// Get and display image
|
||||
- (void)displayImage {
|
||||
if (index != NSNotFound) {
|
||||
if (index != NSNotFound && photoImageView.image == nil) {
|
||||
|
||||
// Reset
|
||||
self.zoomScale = 1; // Reset zoom scale to 1
|
||||
self.maximumZoomScale = 1;
|
||||
self.minimumZoomScale = 1;
|
||||
self.zoomScale = 1;
|
||||
self.contentSize = CGSizeMake(0, 0);
|
||||
|
||||
// Get image
|
||||
@@ -103,7 +105,6 @@
|
||||
|
||||
// Set zoom to minimum zoom
|
||||
[self setMaxMinZoomScalesForCurrentBounds];
|
||||
self.zoomScale = self.minimumZoomScale;
|
||||
|
||||
} else {
|
||||
|
||||
@@ -114,6 +115,7 @@
|
||||
}
|
||||
|
||||
}
|
||||
[self setNeedsLayout];
|
||||
}
|
||||
|
||||
// Image failed so just show black!
|
||||
@@ -126,9 +128,17 @@
|
||||
|
||||
- (void)setMaxMinZoomScalesForCurrentBounds {
|
||||
|
||||
// Reset
|
||||
self.maximumZoomScale = 1;
|
||||
self.minimumZoomScale = 1;
|
||||
self.zoomScale = 1;
|
||||
|
||||
// Bail
|
||||
if (photoImageView.image == nil) return;
|
||||
|
||||
// Sizes
|
||||
CGSize boundsSize = self.bounds.size;
|
||||
CGSize imageSize = photoImageView.bounds.size;
|
||||
CGSize imageSize = photoImageView.frame.size;
|
||||
|
||||
// Calculate Min
|
||||
CGFloat xScale = boundsSize.width / imageSize.width; // the scale needed to perfectly fit the image width-wise
|
||||
@@ -136,17 +146,21 @@
|
||||
CGFloat minScale = MIN(xScale, yScale); // use minimum of these to allow the image to become fully visible
|
||||
|
||||
// Calculate Max
|
||||
CGFloat maxScale = 1.0;
|
||||
CGFloat maxScale = 2.0; // Allow double scale
|
||||
// on high resolution screens we have double the pixel density, so we will be seeing every pixel if we limit the
|
||||
// maximum zoom scale to 0.5.
|
||||
//if ([UIScreen instancesRespondToSelector:@selector(scale)]) maxScale = 1.0 / [[UIScreen mainScreen] scale];
|
||||
|
||||
// Don't let minScale exceed maxScale. (If the image is smaller than the screen, we don't want to force it to be zoomed.)
|
||||
if (minScale > maxScale) minScale = maxScale;
|
||||
|
||||
// Set
|
||||
self.maximumZoomScale = maxScale;
|
||||
self.minimumZoomScale = minScale;
|
||||
//if ([UIScreen instancesRespondToSelector:@selector(scale)]) maxScale = maxScale / [[UIScreen mainScreen] scale];
|
||||
|
||||
// If image is smaller than the screen then ensure we show it at
|
||||
// min scale of 1
|
||||
if (xScale > 1 && yScale > 1) {
|
||||
minScale = 1.0;
|
||||
}
|
||||
|
||||
// Set
|
||||
self.maximumZoomScale = maxScale;
|
||||
self.minimumZoomScale = minScale;
|
||||
self.zoomScale = minScale;
|
||||
|
||||
// Reset position
|
||||
photoImageView.frame = CGRectMake(0, 0, photoImageView.frame.size.width, photoImageView.frame.size.height);
|
||||
|
||||
@@ -26,6 +26,8 @@
|
||||
<true/>
|
||||
<key>NSMainNibFile</key>
|
||||
<string>MainWindow</string>
|
||||
<key>NSMainNibFile~ipad</key>
|
||||
<string>MainWindow-iPad</string>
|
||||
<key>UIApplicationExitsOnSuspend</key>
|
||||
<true/>
|
||||
</dict>
|
||||
|
||||
@@ -274,7 +274,6 @@
|
||||
<string>4CC82BC51266798B00C05633</string>
|
||||
<string>4C48EFD4126F90CA00F85546</string>
|
||||
<string>4C48EFD3126F90C600F85546</string>
|
||||
<string>29B97317FDCFA39411CA2CEA</string>
|
||||
<string>1C37FBAC04509CD000000102</string>
|
||||
<string>1C37FAAC04509CD000000102</string>
|
||||
</array>
|
||||
@@ -307,7 +306,7 @@
|
||||
<real>363</real>
|
||||
</array>
|
||||
<key>RubberWindowFrame</key>
|
||||
<string>230 184 1440 861 0 0 1920 1178 </string>
|
||||
<string>240 174 1440 861 0 0 1920 1178 </string>
|
||||
</dict>
|
||||
<key>Module</key>
|
||||
<string>PBXSmartGroupTreeModule</string>
|
||||
@@ -337,29 +336,30 @@
|
||||
<key>_historyCapacity</key>
|
||||
<integer>0</integer>
|
||||
<key>bookmark</key>
|
||||
<string>4C667CBC1270D4560008B630</string>
|
||||
<string>4C4157121277373000C96767</string>
|
||||
<key>history</key>
|
||||
<array>
|
||||
<string>4C75D4A3126B7ABF004D0ECF</string>
|
||||
<string>4C48EFE8126F932C00F85546</string>
|
||||
<string>4C3EAFC9126FC70A00C7CF25</string>
|
||||
<string>4C3EAFCA126FC70A00C7CF25</string>
|
||||
<string>4C3EAFCB126FC70A00C7CF25</string>
|
||||
<string>4C3EAFCC126FC70A00C7CF25</string>
|
||||
<string>4C3EAFCD126FC70A00C7CF25</string>
|
||||
<string>4C3EAFD0126FC70A00C7CF25</string>
|
||||
<string>4C667C591270C8370008B630</string>
|
||||
<string>4C667C5A1270C8370008B630</string>
|
||||
<string>4C667C5D1270C8EC0008B630</string>
|
||||
<string>4C667C5E1270C8EC0008B630</string>
|
||||
<string>4C667C601270C8EC0008B630</string>
|
||||
<string>4C667C6E1270CA3A0008B630</string>
|
||||
<string>4C667C6F1270CA3A0008B630</string>
|
||||
<string>4C667CAC1270CF150008B630</string>
|
||||
<string>4C667CB41270D1230008B630</string>
|
||||
<string>4C667CB51270D1230008B630</string>
|
||||
<string>4C667CB61270D1230008B630</string>
|
||||
<string>4C667CAB1270CF150008B630</string>
|
||||
<string>4C41556212770FD300C96767</string>
|
||||
<string>4C41559C1277143800C96767</string>
|
||||
<string>4C415675127728CC00C96767</string>
|
||||
<string>4C4156B812772E4100C96767</string>
|
||||
<string>4C4156BA12772E4100C96767</string>
|
||||
<string>4C4156CD127731D900C96767</string>
|
||||
<string>4C4156E01277331E00C96767</string>
|
||||
<string>4C4157051277364000C96767</string>
|
||||
<string>4C41570E1277373000C96767</string>
|
||||
<string>4C41570F1277373000C96767</string>
|
||||
<string>4C4157101277373000C96767</string>
|
||||
</array>
|
||||
</dict>
|
||||
<key>SplitCount</key>
|
||||
@@ -373,7 +373,7 @@
|
||||
<key>Frame</key>
|
||||
<string>{{0, 0}, {1055, 815}}</string>
|
||||
<key>RubberWindowFrame</key>
|
||||
<string>230 184 1440 861 0 0 1920 1178 </string>
|
||||
<string>240 174 1440 861 0 0 1920 1178 </string>
|
||||
</dict>
|
||||
<key>Module</key>
|
||||
<string>PBXNavigatorGroup</string>
|
||||
@@ -393,7 +393,7 @@
|
||||
<key>Frame</key>
|
||||
<string>{{0, 820}, {1055, 0}}</string>
|
||||
<key>RubberWindowFrame</key>
|
||||
<string>230 184 1440 861 0 0 1920 1178 </string>
|
||||
<string>240 174 1440 861 0 0 1920 1178 </string>
|
||||
</dict>
|
||||
<key>Module</key>
|
||||
<string>XCDetailModule</string>
|
||||
@@ -417,9 +417,9 @@
|
||||
</array>
|
||||
<key>TableOfContents</key>
|
||||
<array>
|
||||
<string>4C667BF61270C1200008B630</string>
|
||||
<string>4C41552F12770E7600C96767</string>
|
||||
<string>1CE0B1FE06471DED0097A5F4</string>
|
||||
<string>4C667BF71270C1200008B630</string>
|
||||
<string>4C41553012770E7600C96767</string>
|
||||
<string>1CE0B20306471E060097A5F4</string>
|
||||
<string>1CE0B20506471E060097A5F4</string>
|
||||
</array>
|
||||
@@ -558,15 +558,15 @@
|
||||
<key>WindowOrderList</key>
|
||||
<array>
|
||||
<string>1C530D57069F1CE1000CFCEE</string>
|
||||
<string>4C667C011270C1200008B630</string>
|
||||
<string>4C667C021270C1200008B630</string>
|
||||
<string>4C41553A12770E7600C96767</string>
|
||||
<string>4C41553B12770E7600C96767</string>
|
||||
<string>1CD10A99069EF8BA00B06720</string>
|
||||
<string>4CC82BC01266793900C05633</string>
|
||||
<string>/Users/Michael/My Work/d3i/Projects/MWPhotoBrowser/MWPhotoBrowser.xcodeproj</string>
|
||||
<string>1C78EAAD065D492600B07095</string>
|
||||
<string>/Users/Michael/My Work/d3i/Projects/MWPhotoBrowser/MWPhotoBrowser.xcodeproj</string>
|
||||
</array>
|
||||
<key>WindowString</key>
|
||||
<string>230 184 1440 861 0 0 1920 1178 </string>
|
||||
<string>240 174 1440 861 0 0 1920 1178 </string>
|
||||
<key>WindowToolsV3</key>
|
||||
<array>
|
||||
<dict>
|
||||
@@ -587,7 +587,7 @@
|
||||
<key>PBXProjectModuleGUID</key>
|
||||
<string>1CD0528F0623707200166675</string>
|
||||
<key>PBXProjectModuleLabel</key>
|
||||
<string></string>
|
||||
<string>MWPhotoBrowser.m</string>
|
||||
<key>StatusBarVisibility</key>
|
||||
<true/>
|
||||
</dict>
|
||||
@@ -604,6 +604,8 @@
|
||||
<string>432pt</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>BecomeActive</key>
|
||||
<true/>
|
||||
<key>ContentConfiguration</key>
|
||||
<dict>
|
||||
<key>PBXProjectModuleGUID</key>
|
||||
@@ -643,7 +645,7 @@
|
||||
<key>TableOfContents</key>
|
||||
<array>
|
||||
<string>4CC82BC01266793900C05633</string>
|
||||
<string>4C667BF81270C1200008B630</string>
|
||||
<string>4C41553112770E7600C96767</string>
|
||||
<string>1CD0528F0623707200166675</string>
|
||||
<string>XCMainBuildResultsModuleGUID</string>
|
||||
</array>
|
||||
@@ -739,10 +741,10 @@
|
||||
<key>Frame</key>
|
||||
<string>{{587, 0}, {700, 389}}</string>
|
||||
<key>RubberWindowFrame</key>
|
||||
<string>633 402 1287 776 0 0 1920 1178 </string>
|
||||
<string>348 284 1287 776 0 0 1920 1178 </string>
|
||||
</dict>
|
||||
<key>RubberWindowFrame</key>
|
||||
<string>633 402 1287 776 0 0 1920 1178 </string>
|
||||
<string>348 284 1287 776 0 0 1920 1178 </string>
|
||||
</dict>
|
||||
<key>Module</key>
|
||||
<string>PBXDebugSessionModule</string>
|
||||
@@ -765,18 +767,18 @@
|
||||
<key>TableOfContents</key>
|
||||
<array>
|
||||
<string>1CD10A99069EF8BA00B06720</string>
|
||||
<string>4C667BF91270C1200008B630</string>
|
||||
<string>4C41553212770E7600C96767</string>
|
||||
<string>1C162984064C10D400B95A72</string>
|
||||
<string>4C667BFA1270C1200008B630</string>
|
||||
<string>4C667BFB1270C1200008B630</string>
|
||||
<string>4C667BFC1270C1200008B630</string>
|
||||
<string>4C667BFD1270C1200008B630</string>
|
||||
<string>4C667BFE1270C1200008B630</string>
|
||||
<string>4C41553312770E7600C96767</string>
|
||||
<string>4C41553412770E7600C96767</string>
|
||||
<string>4C41553512770E7600C96767</string>
|
||||
<string>4C41553612770E7600C96767</string>
|
||||
<string>4C41553712770E7600C96767</string>
|
||||
</array>
|
||||
<key>ToolbarConfiguration</key>
|
||||
<string>xcode.toolbar.config.debugV3</string>
|
||||
<key>WindowString</key>
|
||||
<string>633 402 1287 776 0 0 1920 1178 </string>
|
||||
<string>348 284 1287 776 0 0 1920 1178 </string>
|
||||
<key>WindowToolGUID</key>
|
||||
<string>1CD10A99069EF8BA00B06720</string>
|
||||
<key>WindowToolIsVisible</key>
|
||||
@@ -805,25 +807,25 @@
|
||||
<key>PBXProjectModuleGUID</key>
|
||||
<string>1CDD528C0622207200134675</string>
|
||||
<key>PBXProjectModuleLabel</key>
|
||||
<string>MWPhotoBrowser.m</string>
|
||||
<string>ZoomingScrollView.m</string>
|
||||
<key>StatusBarVisibility</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>GeometryConfiguration</key>
|
||||
<dict>
|
||||
<key>Frame</key>
|
||||
<string>{{0, 0}, {1920, 805}}</string>
|
||||
<string>{{0, 0}, {1247, 593}}</string>
|
||||
<key>RubberWindowFrame</key>
|
||||
<string>0 4 1920 1174 0 0 1920 1178 </string>
|
||||
<string>50 216 1247 962 0 0 1920 1178 </string>
|
||||
</dict>
|
||||
<key>Module</key>
|
||||
<string>PBXNavigatorGroup</string>
|
||||
<key>Proportion</key>
|
||||
<string>1920pt</string>
|
||||
<string>1247pt</string>
|
||||
</dict>
|
||||
</array>
|
||||
<key>Proportion</key>
|
||||
<string>805pt</string>
|
||||
<string>593pt</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>ContentConfiguration</key>
|
||||
@@ -836,9 +838,9 @@
|
||||
<key>GeometryConfiguration</key>
|
||||
<dict>
|
||||
<key>Frame</key>
|
||||
<string>{{0, 810}, {1920, 323}}</string>
|
||||
<string>{{0, 598}, {1247, 323}}</string>
|
||||
<key>RubberWindowFrame</key>
|
||||
<string>0 4 1920 1174 0 0 1920 1178 </string>
|
||||
<string>50 216 1247 962 0 0 1920 1178 </string>
|
||||
</dict>
|
||||
<key>Module</key>
|
||||
<string>PBXProjectFindModule</string>
|
||||
@@ -847,7 +849,7 @@
|
||||
</dict>
|
||||
</array>
|
||||
<key>Proportion</key>
|
||||
<string>1133pt</string>
|
||||
<string>921pt</string>
|
||||
</dict>
|
||||
</array>
|
||||
<key>Name</key>
|
||||
@@ -861,13 +863,13 @@
|
||||
<key>TableOfContents</key>
|
||||
<array>
|
||||
<string>1C530D57069F1CE1000CFCEE</string>
|
||||
<string>4C667C391270C5340008B630</string>
|
||||
<string>4C667C3A1270C5340008B630</string>
|
||||
<string>4C41555B12770FA000C96767</string>
|
||||
<string>4C41555C12770FA000C96767</string>
|
||||
<string>1CDD528C0622207200134675</string>
|
||||
<string>1CD0528E0623707200166675</string>
|
||||
</array>
|
||||
<key>WindowString</key>
|
||||
<string>0 4 1920 1174 0 0 1920 1178 </string>
|
||||
<string>50 216 1247 962 0 0 1920 1178 </string>
|
||||
<key>WindowToolGUID</key>
|
||||
<string>1C530D57069F1CE1000CFCEE</string>
|
||||
<key>WindowToolIsVisible</key>
|
||||
@@ -927,7 +929,7 @@
|
||||
<key>TableOfContents</key>
|
||||
<array>
|
||||
<string>1C78EAAD065D492600B07095</string>
|
||||
<string>4C667BFF1270C1200008B630</string>
|
||||
<string>4C41553812770E7600C96767</string>
|
||||
<string>1C78EAAC065D492600B07095</string>
|
||||
</array>
|
||||
<key>ToolbarConfiguration</key>
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
1D3623250D0F684500981E51 /* MWPhotoBrowserAppDelegate.m */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1965, 1092}}";
|
||||
sepNavSelRange = "{469, 0}";
|
||||
sepNavSelRange = "{715, 0}";
|
||||
sepNavVisRange = "{0, 2237}";
|
||||
};
|
||||
};
|
||||
@@ -22,16 +22,16 @@
|
||||
};
|
||||
28D7ACF60DDB3853001CB0EB /* MWPhotoBrowser.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1474, 1032}}";
|
||||
sepNavSelRange = "{572, 0}";
|
||||
sepNavVisRange = "{0, 1571}";
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1474, 1057}}";
|
||||
sepNavSelRange = "{661, 0}";
|
||||
sepNavVisRange = "{0, 1766}";
|
||||
};
|
||||
};
|
||||
28D7ACF70DDB3853001CB0EB /* MWPhotoBrowser.m */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1859, 6344}}";
|
||||
sepNavSelRange = "{7542, 0}";
|
||||
sepNavVisRange = "{9800, 2274}";
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1265, 6760}}";
|
||||
sepNavSelRange = "{5312, 0}";
|
||||
sepNavVisRange = "{9362, 806}";
|
||||
sepNavWindowFrame = "{{15, 299}, {938, 874}}";
|
||||
};
|
||||
};
|
||||
@@ -132,56 +132,37 @@
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXPerProjectTemplateStateSaveDate = 309379108;
|
||||
PBXWorkspaceStateSaveDate = 309379108;
|
||||
PBXPerProjectTemplateStateSaveDate = 309792199;
|
||||
PBXWorkspaceStateSaveDate = 309792199;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
4C3EAFC9126FC70A00C7CF25 /* PBXTextBookmark */ = 4C3EAFC9126FC70A00C7CF25 /* PBXTextBookmark */;
|
||||
4C3EAFCA126FC70A00C7CF25 /* PBXTextBookmark */ = 4C3EAFCA126FC70A00C7CF25 /* PBXTextBookmark */;
|
||||
4C3EAFCB126FC70A00C7CF25 /* PBXTextBookmark */ = 4C3EAFCB126FC70A00C7CF25 /* PBXTextBookmark */;
|
||||
4C3EAFCC126FC70A00C7CF25 /* PBXTextBookmark */ = 4C3EAFCC126FC70A00C7CF25 /* PBXTextBookmark */;
|
||||
4C3EAFCD126FC70A00C7CF25 /* PBXTextBookmark */ = 4C3EAFCD126FC70A00C7CF25 /* PBXTextBookmark */;
|
||||
4C3EAFD0126FC70A00C7CF25 /* PBXTextBookmark */ = 4C3EAFD0126FC70A00C7CF25 /* PBXTextBookmark */;
|
||||
4C41556212770FD300C96767 /* PBXTextBookmark */ = 4C41556212770FD300C96767 /* PBXTextBookmark */;
|
||||
4C41559C1277143800C96767 /* PBXTextBookmark */ = 4C41559C1277143800C96767 /* PBXTextBookmark */;
|
||||
4C415675127728CC00C96767 /* PBXTextBookmark */ = 4C415675127728CC00C96767 /* PBXTextBookmark */;
|
||||
4C4156B812772E4100C96767 /* PBXTextBookmark */ = 4C4156B812772E4100C96767 /* PBXTextBookmark */;
|
||||
4C4156BA12772E4100C96767 /* PBXTextBookmark */ = 4C4156BA12772E4100C96767 /* PBXTextBookmark */;
|
||||
4C4156CD127731D900C96767 /* PBXTextBookmark */ = 4C4156CD127731D900C96767 /* PBXTextBookmark */;
|
||||
4C4156E01277331E00C96767 /* PBXTextBookmark */ = 4C4156E01277331E00C96767 /* PBXTextBookmark */;
|
||||
4C4157051277364000C96767 /* PBXTextBookmark */ = 4C4157051277364000C96767 /* PBXTextBookmark */;
|
||||
4C41570E1277373000C96767 /* PBXTextBookmark */ = 4C41570E1277373000C96767 /* PBXTextBookmark */;
|
||||
4C41570F1277373000C96767 /* PBXTextBookmark */ = 4C41570F1277373000C96767 /* PBXTextBookmark */;
|
||||
4C4157101277373000C96767 /* PBXTextBookmark */ = 4C4157101277373000C96767 /* PBXTextBookmark */;
|
||||
4C4157121277373000C96767 /* PBXTextBookmark */ = 4C4157121277373000C96767 /* PBXTextBookmark */;
|
||||
4C48EFE8126F932C00F85546 /* PBXTextBookmark */ = 4C48EFE8126F932C00F85546 /* PBXTextBookmark */;
|
||||
4C667C591270C8370008B630 /* PBXTextBookmark */ = 4C667C591270C8370008B630 /* PBXTextBookmark */;
|
||||
4C667C5A1270C8370008B630 /* PBXTextBookmark */ = 4C667C5A1270C8370008B630 /* PBXTextBookmark */;
|
||||
4C667C5D1270C8EC0008B630 /* PBXTextBookmark */ = 4C667C5D1270C8EC0008B630 /* PBXTextBookmark */;
|
||||
4C667C5E1270C8EC0008B630 /* PBXTextBookmark */ = 4C667C5E1270C8EC0008B630 /* PBXTextBookmark */;
|
||||
4C667C601270C8EC0008B630 /* PBXTextBookmark */ = 4C667C601270C8EC0008B630 /* PBXTextBookmark */;
|
||||
4C667C6E1270CA3A0008B630 /* PBXBookmark */ = 4C667C6E1270CA3A0008B630 /* PBXBookmark */;
|
||||
4C667C6F1270CA3A0008B630 /* PBXBookmark */ = 4C667C6F1270CA3A0008B630 /* PBXBookmark */;
|
||||
4C667CAB1270CF150008B630 /* PBXTextBookmark */ = 4C667CAB1270CF150008B630 /* PBXTextBookmark */;
|
||||
4C667CAC1270CF150008B630 /* PBXTextBookmark */ = 4C667CAC1270CF150008B630 /* PBXTextBookmark */;
|
||||
4C667CB41270D1230008B630 /* PBXTextBookmark */ = 4C667CB41270D1230008B630 /* PBXTextBookmark */;
|
||||
4C667CB51270D1230008B630 /* PBXBookmark */ = 4C667CB51270D1230008B630 /* PBXBookmark */;
|
||||
4C667CB61270D1230008B630 /* PBXTextBookmark */ = 4C667CB61270D1230008B630 /* PBXTextBookmark */;
|
||||
4C667CBC1270D4560008B630 /* PBXTextBookmark */ = 4C667CBC1270D4560008B630 /* PBXTextBookmark */;
|
||||
4C75D4A3126B7ABF004D0ECF /* PlistBookmark */ = 4C75D4A3126B7ABF004D0ECF /* PlistBookmark */;
|
||||
};
|
||||
sourceControlManager = 4CC82BC21266793900C05633 /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
4C3EAFC9126FC70A00C7CF25 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C48EFCB126F8DD900F85546 /* UIImage+Decompress.h */;
|
||||
name = "UIImage+Decompress.h: 12";
|
||||
rLen = 0;
|
||||
rLoc = 233;
|
||||
rType = 0;
|
||||
vrLen = 239;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C3EAFCA126FC70A00C7CF25 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C48EFCC126F8DD900F85546 /* UIImage+Decompress.m */;
|
||||
name = "UIImage+Decompress.m: 13";
|
||||
rLen = 0;
|
||||
rLoc = 271;
|
||||
rType = 0;
|
||||
vrLen = 1042;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C3EAFCB126FC70A00C7CF25 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C48EFD1126F90B100F85546 /* UIViewTap.m */;
|
||||
@@ -222,6 +203,132 @@
|
||||
vrLen = 968;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C41556212770FD300C96767 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4CC82BE41266804500C05633 /* ZoomingScrollView.h */;
|
||||
name = "ZoomingScrollView.h: 26";
|
||||
rLen = 0;
|
||||
rLoc = 539;
|
||||
rType = 0;
|
||||
vrLen = 875;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C41559C1277143800C96767 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C75D46E126B659A004D0ECF /* MWPhoto.m */;
|
||||
name = "MWPhoto.m: 141";
|
||||
rLen = 74;
|
||||
rLoc = 2964;
|
||||
rType = 0;
|
||||
vrLen = 1700;
|
||||
vrLoc = 2141;
|
||||
};
|
||||
4C415675127728CC00C96767 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C415676127728CC00C96767 /* CGGeometry.h */;
|
||||
name = "CGGeometry.h: 264";
|
||||
rLen = 0;
|
||||
rLoc = 8272;
|
||||
rType = 0;
|
||||
vrLen = 2610;
|
||||
vrLoc = 6334;
|
||||
};
|
||||
4C415676127728CC00C96767 /* CGGeometry.h */ = {
|
||||
isa = PBXFileReference;
|
||||
name = CGGeometry.h;
|
||||
path = /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.1.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGGeometry.h;
|
||||
sourceTree = "<absolute>";
|
||||
};
|
||||
4C4156B812772E4100C96767 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C48EFCB126F8DD900F85546 /* UIImage+Decompress.h */;
|
||||
name = "UIImage+Decompress.h: 12";
|
||||
rLen = 0;
|
||||
rLoc = 233;
|
||||
rType = 0;
|
||||
vrLen = 239;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C4156BA12772E4100C96767 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 1D3623240D0F684500981E51 /* MWPhotoBrowserAppDelegate.h */;
|
||||
name = "MWPhotoBrowserAppDelegate.h: 19";
|
||||
rLen = 0;
|
||||
rLoc = 342;
|
||||
rType = 0;
|
||||
vrLen = 342;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C4156CD127731D900C96767 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C48EFCC126F8DD900F85546 /* UIImage+Decompress.m */;
|
||||
name = "UIImage+Decompress.m: 13";
|
||||
rLen = 0;
|
||||
rLoc = 271;
|
||||
rType = 0;
|
||||
vrLen = 1042;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C4156E01277331E00C96767 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4CC82BE51266804500C05633 /* ZoomingScrollView.m */;
|
||||
name = "ZoomingScrollView.m: 22";
|
||||
rLen = 0;
|
||||
rLoc = 500;
|
||||
rType = 0;
|
||||
vrLen = 2057;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C4157051277364000C96767 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 28D7ACF60DDB3853001CB0EB /* MWPhotoBrowser.h */;
|
||||
name = "MWPhotoBrowser.h: 34";
|
||||
rLen = 0;
|
||||
rLoc = 661;
|
||||
rType = 0;
|
||||
vrLen = 1766;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C41570E1277373000C96767 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 28D7ACF70DDB3853001CB0EB /* MWPhotoBrowser.m */;
|
||||
name = "MWPhotoBrowser.m: 1";
|
||||
rLen = 0;
|
||||
rLoc = 0;
|
||||
rType = 0;
|
||||
vrLen = 1310;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C41570F1277373000C96767 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 1D3623250D0F684500981E51 /* MWPhotoBrowserAppDelegate.m */;
|
||||
name = "MWPhotoBrowserAppDelegate.m: 26";
|
||||
rLen = 0;
|
||||
rLoc = 715;
|
||||
rType = 0;
|
||||
vrLen = 2237;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C4157101277373000C96767 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C667B2C1270AFCE0008B630 /* Menu.m */;
|
||||
name = "Menu.m: 102";
|
||||
rLen = 0;
|
||||
rLoc = 3455;
|
||||
rType = 0;
|
||||
vrLen = 2578;
|
||||
vrLoc = 1077;
|
||||
};
|
||||
4C4157121277373000C96767 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C667B2C1270AFCE0008B630 /* Menu.m */;
|
||||
name = "Menu.m: 1";
|
||||
rLen = 0;
|
||||
rLoc = 0;
|
||||
rType = 0;
|
||||
vrLen = 1562;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C48EFCB126F8DD900F85546 /* UIImage+Decompress.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1474, 1057}}";
|
||||
@@ -231,7 +338,7 @@
|
||||
};
|
||||
4C48EFCC126F8DD900F85546 /* UIImage+Decompress.m */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1474, 1057}}";
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1474, 1034}}";
|
||||
sepNavSelRange = "{271, 0}";
|
||||
sepNavVisRange = "{0, 1042}";
|
||||
};
|
||||
@@ -269,31 +376,11 @@
|
||||
};
|
||||
4C667B2C1270AFCE0008B630 /* Menu.m */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {994, 1625}}";
|
||||
sepNavIntBoundsRect = "{{0, 0}, {994, 1651}}";
|
||||
sepNavSelRange = "{0, 0}";
|
||||
sepNavVisRange = "{0, 1562}";
|
||||
};
|
||||
};
|
||||
4C667C591270C8370008B630 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4CC82BE41266804500C05633 /* ZoomingScrollView.h */;
|
||||
name = "ZoomingScrollView.h: 36";
|
||||
rLen = 0;
|
||||
rLoc = 733;
|
||||
rType = 0;
|
||||
vrLen = 875;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C667C5A1270C8370008B630 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4CC82BE51266804500C05633 /* ZoomingScrollView.m */;
|
||||
name = "ZoomingScrollView.m: 105";
|
||||
rLen = 0;
|
||||
rLoc = 2627;
|
||||
rType = 0;
|
||||
vrLen = 1643;
|
||||
vrLoc = 1603;
|
||||
};
|
||||
4C667C5D1270C8EC0008B630 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C667B2B1270AFCE0008B630 /* Menu.h */;
|
||||
@@ -304,26 +391,6 @@
|
||||
vrLen = 209;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C667C5E1270C8EC0008B630 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 1D3623240D0F684500981E51 /* MWPhotoBrowserAppDelegate.h */;
|
||||
name = "MWPhotoBrowserAppDelegate.h: 19";
|
||||
rLen = 0;
|
||||
rLoc = 342;
|
||||
rType = 0;
|
||||
vrLen = 342;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C667C601270C8EC0008B630 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C75D46E126B659A004D0ECF /* MWPhoto.m */;
|
||||
name = "MWPhoto.m: 114";
|
||||
rLen = 0;
|
||||
rLoc = 2417;
|
||||
rType = 0;
|
||||
vrLen = 2295;
|
||||
vrLoc = 1342;
|
||||
};
|
||||
4C667C6E1270CA3A0008B630 /* PBXBookmark */ = {
|
||||
isa = PBXBookmark;
|
||||
fRef = 4C667C411270C6A50008B630 /* UIBarButtonItemArrowLeft.png */;
|
||||
@@ -332,60 +399,10 @@
|
||||
isa = PBXBookmark;
|
||||
fRef = 4C667C421270C6A50008B630 /* UIBarButtonItemArrowLeft@2x.png */;
|
||||
};
|
||||
4C667CAB1270CF150008B630 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C667B2C1270AFCE0008B630 /* Menu.m */;
|
||||
name = "Menu.m: 34";
|
||||
rLen = 0;
|
||||
rLoc = 644;
|
||||
rType = 0;
|
||||
vrLen = 2216;
|
||||
vrLoc = 33;
|
||||
};
|
||||
4C667CAC1270CF150008B630 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 28D7ACF60DDB3853001CB0EB /* MWPhotoBrowser.h */;
|
||||
name = "MWPhotoBrowser.h: 30";
|
||||
rLen = 0;
|
||||
rLoc = 572;
|
||||
rType = 0;
|
||||
vrLen = 1571;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C667CB41270D1230008B630 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 28D7ACF70DDB3853001CB0EB /* MWPhotoBrowser.m */;
|
||||
name = "MWPhotoBrowser.m: 1";
|
||||
rLen = 0;
|
||||
rLoc = 0;
|
||||
rType = 0;
|
||||
vrLen = 1823;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C667CB51270D1230008B630 /* PBXBookmark */ = {
|
||||
isa = PBXBookmark;
|
||||
fRef = 4CFB7931126A3B4100E5F263 /* photo1l.jpg */;
|
||||
};
|
||||
4C667CB61270D1230008B630 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 1D3623250D0F684500981E51 /* MWPhotoBrowserAppDelegate.m */;
|
||||
name = "MWPhotoBrowserAppDelegate.m: 21";
|
||||
rLen = 0;
|
||||
rLoc = 469;
|
||||
rType = 0;
|
||||
vrLen = 2237;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C667CBC1270D4560008B630 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 4C667B2C1270AFCE0008B630 /* Menu.m */;
|
||||
name = "Menu.m: 1";
|
||||
rLen = 0;
|
||||
rLoc = 0;
|
||||
rType = 0;
|
||||
vrLen = 1562;
|
||||
vrLoc = 0;
|
||||
};
|
||||
4C75D46D126B659A004D0ECF /* MWPhoto.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1474, 1057}}";
|
||||
@@ -395,9 +412,9 @@
|
||||
};
|
||||
4C75D46E126B659A004D0ECF /* MWPhoto.m */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1859, 2366}}";
|
||||
sepNavSelRange = "{1606, 0}";
|
||||
sepNavVisRange = "{1343, 1546}";
|
||||
sepNavIntBoundsRect = "{{0, 0}, {994, 2197}}";
|
||||
sepNavSelRange = "{2964, 74}";
|
||||
sepNavVisRange = "{2141, 1700}";
|
||||
};
|
||||
};
|
||||
4C75D4A3126B7ABF004D0ECF /* PlistBookmark */ = {
|
||||
@@ -418,7 +435,7 @@
|
||||
argumentStrings = (
|
||||
);
|
||||
autoAttachOnCrash = 1;
|
||||
breakpointsEnabled = 0;
|
||||
breakpointsEnabled = 1;
|
||||
configStateDict = {
|
||||
};
|
||||
customDataFormattersEnabled = 1;
|
||||
@@ -459,16 +476,16 @@
|
||||
};
|
||||
4CC82BE41266804500C05633 /* ZoomingScrollView.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1474, 1057}}";
|
||||
sepNavSelRange = "{733, 0}";
|
||||
sepNavIntBoundsRect = "{{0, 0}, {994, 760}}";
|
||||
sepNavSelRange = "{539, 0}";
|
||||
sepNavVisRange = "{0, 875}";
|
||||
};
|
||||
};
|
||||
4CC82BE51266804500C05633 /* ZoomingScrollView.m */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1474, 3341}}";
|
||||
sepNavSelRange = "{2627, 0}";
|
||||
sepNavVisRange = "{1603, 1643}";
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1186, 3549}}";
|
||||
sepNavSelRange = "{1900, 0}";
|
||||
sepNavVisRange = "{1729, 859}";
|
||||
};
|
||||
};
|
||||
4CFB783C126A29BE00E5F263 /* UIImageViewTap.h */ = {
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
288765A50DF7441C002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765A40DF7441C002DB57D /* CoreGraphics.framework */; };
|
||||
28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 28AD733E0D9D9553002E5188 /* MainWindow.xib */; };
|
||||
28D7ACF80DDB3853001CB0EB /* MWPhotoBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 28D7ACF70DDB3853001CB0EB /* MWPhotoBrowser.m */; };
|
||||
4C4156C61277301E00C96767 /* MainWindow-iPad.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4C4156C51277301E00C96767 /* MainWindow-iPad.xib */; };
|
||||
4C48EFCD126F8DD900F85546 /* UIImage+Decompress.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C48EFCC126F8DD900F85546 /* UIImage+Decompress.m */; };
|
||||
4C48EFD2126F90B100F85546 /* UIViewTap.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C48EFD1126F90B100F85546 /* UIViewTap.m */; };
|
||||
4C667B2D1270AFCE0008B630 /* Menu.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C667B2C1270AFCE0008B630 /* Menu.m */; };
|
||||
@@ -46,6 +47,7 @@
|
||||
28D7ACF70DDB3853001CB0EB /* MWPhotoBrowser.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWPhotoBrowser.m; sourceTree = "<group>"; };
|
||||
29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
|
||||
32CA4F630368D1EE00C91783 /* MWPhotoBrowser_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWPhotoBrowser_Prefix.pch; sourceTree = "<group>"; };
|
||||
4C4156C51277301E00C96767 /* MainWindow-iPad.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = "MainWindow-iPad.xib"; path = "Resources-iPad/MainWindow-iPad.xib"; sourceTree = "<group>"; };
|
||||
4C48EFCB126F8DD900F85546 /* UIImage+Decompress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIImage+Decompress.h"; sourceTree = "<group>"; };
|
||||
4C48EFCC126F8DD900F85546 /* UIImage+Decompress.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIImage+Decompress.m"; sourceTree = "<group>"; };
|
||||
4C48EFD0126F90B100F85546 /* UIViewTap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIViewTap.h; sourceTree = "<group>"; };
|
||||
@@ -112,6 +114,7 @@
|
||||
080E96DDFE201D6D7F000001 /* Classes */,
|
||||
4C667CB31270D0E50008B630 /* Photos */,
|
||||
29B97317FDCFA39411CA2CEA /* Resources */,
|
||||
4C4156C41277301D00C96767 /* Resources-iPad */,
|
||||
29B97315FDCFA39411CA2CEA /* Other Sources */,
|
||||
29B97323FDCFA39411CA2CEA /* Frameworks */,
|
||||
19C28FACFE9D520D11CA2CBB /* Products */,
|
||||
@@ -151,6 +154,14 @@
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
4C4156C41277301D00C96767 /* Resources-iPad */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
4C4156C51277301E00C96767 /* MainWindow-iPad.xib */,
|
||||
);
|
||||
name = "Resources-iPad";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
4C48EFD3126F90C600F85546 /* Categories */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -273,6 +284,7 @@
|
||||
4C667C461270C6A50008B630 /* UIBarButtonItemArrowLeft@2x.png in Resources */,
|
||||
4C667C471270C6A50008B630 /* UIBarButtonItemArrowRight.png in Resources */,
|
||||
4C667C481270C6A50008B630 /* UIBarButtonItemArrowRight@2x.png in Resources */,
|
||||
4C4156C61277301E00C96767 /* MainWindow-iPad.xib in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -302,6 +314,7 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
@@ -310,6 +323,8 @@
|
||||
INFOPLIST_FILE = "MWPhotoBrowser-Info.plist";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 3.0;
|
||||
PRODUCT_NAME = MWPhotoBrowser;
|
||||
SDKROOT = iphoneos4.1;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
@@ -317,12 +332,15 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
|
||||
COPY_PHASE_STRIP = YES;
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = MWPhotoBrowser_Prefix.pch;
|
||||
INFOPLIST_FILE = "MWPhotoBrowser-Info.plist";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 3.0;
|
||||
PRODUCT_NAME = MWPhotoBrowser;
|
||||
SDKROOT = iphoneos4.1;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VALIDATE_PRODUCT = YES;
|
||||
};
|
||||
name = Release;
|
||||
|
||||
@@ -21,6 +21,12 @@ See the code snippet below for an example of how to implement the photo browser.
|
||||
MWPhotoBrowser *browser = [[MWPhotoBrowser alloc] initWithPhotos:photos];
|
||||
[self.navigationController pushViewController:browser animated:YES];
|
||||
|
||||
If desired, you can choose which photo is displayed first:
|
||||
|
||||
// Create & present browser
|
||||
MWPhotoBrowser *browser = [[MWPhotoBrowser alloc] initWithPhotos:photos];
|
||||
[browser setInitialPageIndex:2]; // Show second page first
|
||||
[self.navigationController pushViewController:browser animated:YES];
|
||||
|
||||
|
||||
## Adding to your project
|
||||
|
||||
393
Resources-iPad/MainWindow-iPad.xib
Normal file
393
Resources-iPad/MainWindow-iPad.xib
Normal file
@@ -0,0 +1,393 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<archive type="com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB" version="7.10">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">800</int>
|
||||
<string key="IBDocument.SystemVersion">10F569</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">804</string>
|
||||
<string key="IBDocument.AppKitVersion">1038.29</string>
|
||||
<string key="IBDocument.HIToolboxVersion">461.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="NS.object.0">123</string>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
<object class="NSArray" key="IBDocument.PluginDependencies">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.Metadata">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys" id="0">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBProxyObject" id="841351856">
|
||||
<string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
|
||||
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
|
||||
</object>
|
||||
<object class="IBProxyObject" id="427554174">
|
||||
<string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
|
||||
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
|
||||
</object>
|
||||
<object class="IBUICustomObject" id="664661524">
|
||||
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
|
||||
</object>
|
||||
<object class="IBUIWindow" id="117978783">
|
||||
<nil key="NSNextResponder"/>
|
||||
<int key="NSvFlags">292</int>
|
||||
<string key="NSFrameSize">{768, 1004}</string>
|
||||
<object class="NSColor" key="IBUIBackgroundColor">
|
||||
<int key="NSColorSpace">1</int>
|
||||
<bytes key="NSRGB">MSAxIDEAA</bytes>
|
||||
</object>
|
||||
<bool key="IBUIOpaque">NO</bool>
|
||||
<bool key="IBUIClearsContextBeforeDrawing">NO</bool>
|
||||
<object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics">
|
||||
<int key="IBUIStatusBarStyle">2</int>
|
||||
</object>
|
||||
<string key="targetRuntimeIdentifier">IBIPadFramework</string>
|
||||
<bool key="IBUIResizesToFullScreen">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBObjectContainer" key="IBDocument.Objects">
|
||||
<object class="NSMutableArray" key="connectionRecords">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBCocoaTouchOutletConnection" key="connection">
|
||||
<string key="label">delegate</string>
|
||||
<reference key="source" ref="841351856"/>
|
||||
<reference key="destination" ref="664661524"/>
|
||||
</object>
|
||||
<int key="connectionID">4</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBCocoaTouchOutletConnection" key="connection">
|
||||
<string key="label">window</string>
|
||||
<reference key="source" ref="664661524"/>
|
||||
<reference key="destination" ref="117978783"/>
|
||||
</object>
|
||||
<int key="connectionID">14</int>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBMutableOrderedSet" key="objectRecords">
|
||||
<object class="NSArray" key="orderedObjects">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">0</int>
|
||||
<reference key="object" ref="0"/>
|
||||
<reference key="children" ref="1000"/>
|
||||
<nil key="parent"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-1</int>
|
||||
<reference key="object" ref="841351856"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">File's Owner</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">3</int>
|
||||
<reference key="object" ref="664661524"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">MWPhotoBrowser App Delegate</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-2</int>
|
||||
<reference key="object" ref="427554174"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">12</int>
|
||||
<reference key="object" ref="117978783"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="flattenedProperties">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>-1.CustomClassName</string>
|
||||
<string>-2.CustomClassName</string>
|
||||
<string>12.IBEditorWindowLastContentRect</string>
|
||||
<string>12.IBLastUsedUIStatusBarStylesToTargetRuntimesMap</string>
|
||||
<string>12.IBPluginDependency</string>
|
||||
<string>3.CustomClassName</string>
|
||||
<string>3.IBPluginDependency</string>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>UIApplication</string>
|
||||
<string>UIResponder</string>
|
||||
<string>{{525, 346}, {320, 480}}</string>
|
||||
<object class="NSMutableDictionary">
|
||||
<string key="NS.key.0">IBCocoaTouchFramework</string>
|
||||
<integer value="0" key="NS.object.0"/>
|
||||
</object>
|
||||
<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string>MWPhotoBrowserAppDelegate</string>
|
||||
<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="unlocalizedProperties">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference key="dict.sortedKeys" ref="0"/>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
<nil key="activeLocalization"/>
|
||||
<object class="NSMutableDictionary" key="localizations">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference key="dict.sortedKeys" ref="0"/>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
<nil key="sourceID"/>
|
||||
<int key="maxID">15</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">MWPhotoBrowserAppDelegate</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="NSMutableDictionary" key="outlets">
|
||||
<string key="NS.key.0">window</string>
|
||||
<string key="NS.object.0">UIWindow</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<string key="NS.key.0">window</string>
|
||||
<object class="IBToOneOutletInfo" key="NS.object.0">
|
||||
<string key="name">window</string>
|
||||
<string key="candidateClassName">UIWindow</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">Classes/MWPhotoBrowserAppDelegate.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">MWPhotoBrowserAppDelegate</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBUserSource</string>
|
||||
<string key="minorKey"/>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UIWindow</string>
|
||||
<string key="superclassName">UIView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBUserSource</string>
|
||||
<string key="minorKey"/>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSError.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSObject.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSThread.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURL.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UIAccessibility.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UINibLoading.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="356479594">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UIResponder.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UIApplication</string>
|
||||
<string key="superclassName">UIResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UIApplication.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UIResponder</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="356479594"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UISearchBar</string>
|
||||
<string key="superclassName">UIView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UISearchBar.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UISearchDisplayController</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UISearchDisplayController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UIView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UITextField.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UIView</string>
|
||||
<string key="superclassName">UIResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UIView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UIViewController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UINavigationController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UIViewController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UIPopoverController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UIViewController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UISplitViewController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UIViewController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UITabBarController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UIViewController</string>
|
||||
<string key="superclassName">UIResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UIViewController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UIWindow</string>
|
||||
<string key="superclassName">UIView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">UIKit.framework/Headers/UIWindow.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
<string key="IBDocument.TargetRuntimeIdentifier">IBIPadFramework</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
|
||||
<integer value="800" key="NS.object.0"/>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3</string>
|
||||
<integer value="3100" key="NS.object.0"/>
|
||||
</object>
|
||||
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
|
||||
<string key="IBDocument.LastKnownRelativeProjectPath">MWPhotoBrowser.xcodeproj</string>
|
||||
<int key="IBDocument.defaultPropertyAccessControl">3</int>
|
||||
<string key="IBCocoaTouchPluginVersion">123</string>
|
||||
</data>
|
||||
</archive>
|
||||
Reference in New Issue
Block a user