diff --git a/ChemDraw/ChemDraw.xcodeproj/project.pbxproj b/ChemDraw/ChemDraw.xcodeproj/project.pbxproj index bdf181b..c36ae8a 100755 --- a/ChemDraw/ChemDraw.xcodeproj/project.pbxproj +++ b/ChemDraw/ChemDraw.xcodeproj/project.pbxproj @@ -15,6 +15,12 @@ 2899E5220DE3E06400AC0155 /* ChemDrawViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 2899E5210DE3E06400AC0155 /* ChemDrawViewController.xib */; }; 28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 28AD733E0D9D9553002E5188 /* MainWindow.xib */; }; 28D7ACF80DDB3853001CB0EB /* ChemDrawViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 28D7ACF70DDB3853001CB0EB /* ChemDrawViewController.m */; }; + DE15A73710107CF10080291E /* GestureView.m in Sources */ = {isa = PBXBuildFile; fileRef = DE15A73610107CF10080291E /* GestureView.m */; }; + DE15A73810107CF10080291E /* GestureView.m in Sources */ = {isa = PBXBuildFile; fileRef = DE15A73610107CF10080291E /* GestureView.m */; }; + DE15A73D1010829A0080291E /* GestureViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE15A73C1010829A0080291E /* GestureViewController.m */; }; + DE15A73E1010829A0080291E /* GestureViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE15A73C1010829A0080291E /* GestureViewController.m */; }; + DE15A7401010835B0080291E /* GestureViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE15A73F1010835B0080291E /* GestureViewController.xib */; }; + DE15A7411010835B0080291E /* GestureViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE15A73F1010835B0080291E /* GestureViewController.xib */; }; DE2091440FF4E840001FECDA /* DrawView.m in Sources */ = {isa = PBXBuildFile; fileRef = DE2091430FF4E840001FECDA /* DrawView.m */; }; DE2091FF0FF4F578001FECDA /* Node.m in Sources */ = {isa = PBXBuildFile; fileRef = DE2091FE0FF4F578001FECDA /* Node.m */; }; DE2093480FF50B67001FECDA /* Bond.m in Sources */ = {isa = PBXBuildFile; fileRef = DE2093470FF50B67001FECDA /* Bond.m */; }; @@ -99,6 +105,11 @@ 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 32CA4F630368D1EE00C91783 /* ChemDraw_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChemDraw_Prefix.pch; sourceTree = ""; }; 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + DE15A73510107CF10080291E /* GestureView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GestureView.h; sourceTree = ""; }; + DE15A73610107CF10080291E /* GestureView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GestureView.m; sourceTree = ""; }; + DE15A73B1010829A0080291E /* GestureViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GestureViewController.h; sourceTree = ""; }; + DE15A73C1010829A0080291E /* GestureViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GestureViewController.m; sourceTree = ""; }; + DE15A73F1010835B0080291E /* GestureViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = GestureViewController.xib; sourceTree = ""; }; DE2091420FF4E840001FECDA /* DrawView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DrawView.h; sourceTree = ""; }; DE2091430FF4E840001FECDA /* DrawView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DrawView.m; sourceTree = ""; }; DE2091FD0FF4F578001FECDA /* Node.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Node.h; sourceTree = ""; }; @@ -254,6 +265,7 @@ 2899E5210DE3E06400AC0155 /* ChemDrawViewController.xib */, 28AD733E0D9D9553002E5188 /* MainWindow.xib */, 8D1107310486CEB800E47090 /* Info.plist */, + DE15A73F1010835B0080291E /* GestureViewController.xib */, ); name = Resources; sourceTree = ""; @@ -376,6 +388,8 @@ children = ( 28D7ACF60DDB3853001CB0EB /* ChemDrawViewController.h */, 28D7ACF70DDB3853001CB0EB /* ChemDrawViewController.m */, + DE15A73B1010829A0080291E /* GestureViewController.h */, + DE15A73C1010829A0080291E /* GestureViewController.m */, ); name = Controllers; sourceTree = ""; @@ -385,6 +399,8 @@ children = ( DE2091420FF4E840001FECDA /* DrawView.h */, DE2091430FF4E840001FECDA /* DrawView.m */, + DE15A73510107CF10080291E /* GestureView.h */, + DE15A73610107CF10080291E /* GestureView.m */, ); name = Views; sourceTree = ""; @@ -461,6 +477,7 @@ files = ( 28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */, 2899E5220DE3E06400AC0155 /* ChemDrawViewController.xib in Resources */, + DE15A7401010835B0080291E /* GestureViewController.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -468,6 +485,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + DE15A7411010835B0080291E /* GestureViewController.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -525,6 +543,8 @@ DE536536100F706D00A098FF /* DoubleBondAction.m in Sources */, DE53653A100F707500A098FF /* TripleBondAction.m in Sources */, DE53653E100F707F00A098FF /* SingleBondAction.m in Sources */, + DE15A73710107CF10080291E /* GestureView.m in Sources */, + DE15A73D1010829A0080291E /* GestureViewController.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -566,6 +586,8 @@ DE536537100F706D00A098FF /* DoubleBondAction.m in Sources */, DE53653B100F707500A098FF /* TripleBondAction.m in Sources */, DE53653F100F707F00A098FF /* SingleBondAction.m in Sources */, + DE15A73810107CF10080291E /* GestureView.m in Sources */, + DE15A73E1010829A0080291E /* GestureViewController.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/ChemDraw/ChemDrawViewController.xib b/ChemDraw/ChemDrawViewController.xib index 97b19e7..281e988 100644 --- a/ChemDraw/ChemDrawViewController.xib +++ b/ChemDraw/ChemDrawViewController.xib @@ -85,61 +85,13 @@ 11 - - - changeElementButton - - - - 20 - - - - changeElement: - - - - 21 - - - - undoLastAction: - - - - 23 - - - - undoButton - - - - 24 - - - - cancel - - - - 26 - - - - cancelButton - - - - 27 - view - 31 + 36 @@ -172,6 +124,7 @@ + view 8 @@ -248,7 +201,7 @@ - 31 + 36 @@ -256,6 +209,25 @@ ChemDrawViewController UIViewController + + YES + + YES + cancelButton + changeElementButton + toolBar + undoButton + view + + + YES + UIBarButtonItem + UIBarButtonItem + UIToolbar + UIBarButtonItem + DrawView + + IBProjectSource Classes/ChemDrawViewController.h diff --git a/ChemDraw/Classes/ChemDrawAppDelegate.h b/ChemDraw/Classes/ChemDrawAppDelegate.h index 18a852c..9d20b79 100644 --- a/ChemDraw/Classes/ChemDrawAppDelegate.h +++ b/ChemDraw/Classes/ChemDrawAppDelegate.h @@ -9,19 +9,23 @@ #import @class ChemDrawViewController; -//@class DrawView; +@class GestureViewController; -@interface ChemDrawAppDelegate : NSObject { +@interface ChemDrawAppDelegate : NSObject { UIWindow *window; - IBOutlet ChemDrawViewController *viewController; - IBOutlet UIScrollView *scrollView; - //DrawView *drawView; + IBOutlet UINavigationController *navigationController; + IBOutlet ChemDrawViewController *drawViewController; + IBOutlet GestureViewController *gestureViewController; } +- (IBAction)changeElement:(id)sender; + @property (nonatomic, retain) IBOutlet UIWindow *window; -@property (nonatomic, retain) IBOutlet ChemDrawViewController *viewController; -@property (nonatomic, retain) IBOutlet UIScrollView *scrollView; -//@property (nonatomic, retain) IBOutlet DrawView *drawView; +@property (nonatomic, retain) IBOutlet ChemDrawViewController *drawViewController; +@property (nonatomic, retain) IBOutlet GestureViewController *gestureViewController; +@property (nonatomic, retain) IBOutlet UINavigationController *navigationController; + + @end diff --git a/ChemDraw/Classes/ChemDrawAppDelegate.m b/ChemDraw/Classes/ChemDrawAppDelegate.m index 74674f1..8a79b1f 100644 --- a/ChemDraw/Classes/ChemDrawAppDelegate.m +++ b/ChemDraw/Classes/ChemDrawAppDelegate.m @@ -10,37 +10,24 @@ #import "ChemDrawViewController.h" #import "DrawView.h" +#import "GestureViewController.h" +#import "GestureView.h" + @implementation ChemDrawAppDelegate @synthesize window; -@synthesize viewController; -@synthesize scrollView; -//@synthesize drawView; +@synthesize drawViewController; +@synthesize gestureViewController; +@synthesize navigationController; + - (void)applicationDidFinishLaunching:(UIApplication *)application { - - //CGRect frame = CGRectMake(0, 0, 640, 960); - //NSLog(@"CREATE RECT"); - //drawView = [[DrawView alloc] initWithFrame:frame]; - //NSLog(@"INIT DRAW VIEW"); + - // Override point for customization after app launch - //[window addSubview:viewController.view]; - - //scrollView.contentSize = CGSizeMake([[[viewController view] frame] width], 960); - CGSize frameRect = CGSizeMake(640, 960); - scrollView.contentSize = frameRect; - scrollView.maximumZoomScale = 4.0; - scrollView.minimumZoomScale = 0.75; - scrollView.clipsToBounds = YES; - scrollView.delegate = self; - scrollView.bounces = YES; - //[scrollView addSubview:drawView]; - [scrollView addSubview:viewController.view]; + navigationController = [[UINavigationController alloc] initWithRootViewController:drawViewController]; + [window addSubview:[navigationController view]]; - CGRect centerRect = CGRectMake(320, 480, 320, 480); - [scrollView zoomToRect:centerRect animated:YES]; [window makeKeyAndVisible]; @@ -48,15 +35,17 @@ - (void)applicationDidFinishLaunching:(UIApplication *)application { } -- (UIView *) viewForZoomingInScrollView:(UIScrollView *)scrollView { - return viewController.view; - //return drawView; +- (IBAction)changeElement:(id)sender { + NSLog(@"CHANGE ELEMENT CLICKED"); } + + - (void)dealloc { - //[drawView release]; - [scrollView release]; - [viewController release]; + + [navigationController release]; + [gestureViewController release]; + [drawViewController release]; [window release]; [super dealloc]; } diff --git a/ChemDraw/Classes/ChemDrawViewController.h b/ChemDraw/Classes/ChemDrawViewController.h index 4b3a2f7..30f5628 100644 --- a/ChemDraw/Classes/ChemDrawViewController.h +++ b/ChemDraw/Classes/ChemDrawViewController.h @@ -8,6 +8,7 @@ #import +@class DrawView; @interface ChemDrawViewController : UIViewController { IBOutlet UIToolbar *toolBar; @@ -15,14 +16,19 @@ IBOutlet UIBarButtonItem *undoButton; IBOutlet UIBarButtonItem *cancelButton; + +// IBOutlet UIScrollView *scrollView; + IBOutlet DrawView *view; } -- (IBAction)changeElement:(id)sender; +//- (IBAction)changeElement:(id)sender; -- (IBAction)undoLastAction:(id)sender; +//- (IBAction)undoLastAction:(id)sender; -- (IBAction) cancel; +//- (IBAction) cancel; +//@property (nonatomic, retain) IBOutlet DrawView *drawView; +//@property (nonatomic, retain) IBOutlet UIScrollView *scrollView; @end diff --git a/ChemDraw/Classes/ChemDrawViewController.m b/ChemDraw/Classes/ChemDrawViewController.m index 0aa4c91..aecae4f 100644 --- a/ChemDraw/Classes/ChemDrawViewController.m +++ b/ChemDraw/Classes/ChemDrawViewController.m @@ -7,10 +7,12 @@ // #import "ChemDrawViewController.h" +#import "DrawView.h" @implementation ChemDrawViewController //@synthesize drawView; +//@synthesize scrollView; /* // The designated initializer. Override to perform setup that is required before the view is loaded. @@ -34,9 +36,8 @@ - (void)loadView { - (void)viewDidLoad { NSLog(@"VIEW DID LOAD"); [super viewDidLoad]; - CGRect frame = CGRectMake(0, 0, 640, 960); - [[self view] initWithFrame:frame]; -// [view initWithFrame:frame]; + [[self view] initWithFrame:CGRectMake(0, 0, 320, 480)]; + [[self view] setNeedsDisplay]; } @@ -50,23 +51,22 @@ - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interface } */ - - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Releases the view if it doesn't have a superview // Release anything that's not essential, such as cached data } - (IBAction)undoLastAction:(id)sender { - [[self view] undoLastAction]; +// [[self view] undoLastAction]; } - (IBAction)changeElement:(id)sender { - [[self view] changeElement:sender]; +// [[self view] changeElement:sender]; } - (IBAction) cancel { - [[self view] cancel]; +// [[self view] cancel]; } diff --git a/ChemDraw/Classes/DrawView.m b/ChemDraw/Classes/DrawView.m index 9dffa66..99cb0a0 100644 --- a/ChemDraw/Classes/DrawView.m +++ b/ChemDraw/Classes/DrawView.m @@ -45,7 +45,7 @@ - (id)initWithFrame:(CGRect)frame { NSLog(@"DRAW VIEW INIT 5"); - [self setupToolbarButtonArrays]; +// [self setupToolbarButtonArrays]; NSLog(@"DRAW VIEW INIT 6"); //[self setNeedsDisplay]; diff --git a/ChemDraw/Classes/GestureView.h b/ChemDraw/Classes/GestureView.h new file mode 100644 index 0000000..356428e --- /dev/null +++ b/ChemDraw/Classes/GestureView.h @@ -0,0 +1,23 @@ +// +// GestureView.h +// ChemDraw +// +// Created by Kevin Edwards on 17/07/2009. +// Copyright 2009 __MyCompanyName__. All rights reserved. +// + +#import + +@class PointObjectMap; +@class CharacterMatch; + +@interface GestureView : UIView { + PointObjectMap *gesturePoints; + CharacterMatch *matchedCharacter; + NSTimer *symbolTimer; +} + +@property (nonatomic, retain) CharacterMatch *matchedCharacter; +@property (nonatomic, retain) NSTimer *symbolTimer; + +@end diff --git a/ChemDraw/Classes/GestureView.m b/ChemDraw/Classes/GestureView.m new file mode 100644 index 0000000..934615b --- /dev/null +++ b/ChemDraw/Classes/GestureView.m @@ -0,0 +1,100 @@ +// +// GestureView.m +// ChemDraw +// +// Created by Kevin Edwards on 17/07/2009. +// Copyright 2009 __MyCompanyName__. All rights reserved. +// + +#import "GestureView.h" + +#import "PointObject.h" +#import "PointObjectMap.h" +#import "CharacterMatch.h" + +@implementation GestureView + +@synthesize matchedCharacter; +@synthesize symbolTimer; + +- (id)initWithFrame:(CGRect)frame { + if (self = [super initWithFrame:frame]) { + // Initialization code + gesturePoints = [[PointObjectMap alloc] init]; + } + return self; +} + +- (void)dealloc { + [symbolTimer release]; + [gesturePoints release]; + [super dealloc]; +} + + +- (void)drawRect:(CGRect)rect { + // Drawing code + CGContextRef ctx = UIGraphicsGetCurrentContext(); + + [[UIColor whiteColor] setFill]; + UIRectFill(rect); + + [gesturePoints renderWithContext:ctx]; +} + +- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { + + UITouch *touch = [touches anyObject]; + CGPoint pos = [touch locationInView:self]; + + + PointObject *pointObject = [PointObject alloc]; + [pointObject initWithPoint:pos]; + [gesturePoints addPoint:pointObject]; + + [self setNeedsDisplay]; // redraw entire screen +} + +- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event { + + UITouch *touch = [touches anyObject]; + CGPoint pos = [touch locationInView:self]; + + PointObject *pointObject = [PointObject alloc]; + [pointObject initWithPoint:pos]; + [gesturePoints addPoint:pointObject]; + + [self setNeedsDisplay]; + +} + +- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event { + + NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:0.80 target:self selector:@selector(onTimer) userInfo:nil repeats:YES]; + [self setSymbolTimer:timer]; +} + +// Finished drawing chemical symbol +-(void) onTimer { + + //CharacterMatch *topMatch = [gesturePoints compressPoints]; + + //Node *selectedNode = [objectMap currentlySelectedNode]; + //NSString *characterSymbol = [topMatch characterSymbol]; + //[selectedNode setElementType:characterSymbol]; + //[objectMap clearSelectedNodes]; + + //NSLog(@"NEW ELEMENT TYPE IS: %@", [selectedNode elementType]); + + [symbolTimer invalidate]; + + [self setNeedsDisplay]; // redraw entire screen + + + + + +} + + +@end diff --git a/ChemDraw/Classes/GestureViewController.h b/ChemDraw/Classes/GestureViewController.h new file mode 100644 index 0000000..1892632 --- /dev/null +++ b/ChemDraw/Classes/GestureViewController.h @@ -0,0 +1,16 @@ +// +// GestureViewController.h +// ChemDraw +// +// Created by Kevin Edwards on 17/07/2009. +// Copyright 2009 __MyCompanyName__. All rights reserved. +// + +#import + + +@interface GestureViewController : UIViewController { + +} + +@end diff --git a/ChemDraw/Classes/GestureViewController.m b/ChemDraw/Classes/GestureViewController.m new file mode 100644 index 0000000..63d18ab --- /dev/null +++ b/ChemDraw/Classes/GestureViewController.m @@ -0,0 +1,65 @@ +// +// GestureViewController.m +// ChemDraw +// +// Created by Kevin Edwards on 17/07/2009. +// Copyright 2009 __MyCompanyName__. All rights reserved. +// + +#import "GestureViewController.h" + + +@implementation GestureViewController + + +/* +// The designated initializer. Override to perform setup that is required before the view is loaded. +- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { + if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) { + // Custom initialization + } + return self; +} +*/ + +/* +// Implement loadView to create a view hierarchy programmatically, without using a nib. +- (void)loadView { +} +*/ + + + +// Implement viewDidLoad to do additional setup after loading the view, typically from a nib. +- (void)viewDidLoad { + //NSLog(@"VIEW DID LOAD"); +// [super viewDidLoad]; +// CGRect frame = CGRectMake(0, 0, 640, 960); +// [[self view] initWithFrame:frame]; +//// [view initWithFrame:frame]; +// [[self view] setNeedsDisplay]; +} + + + +/* +// Override to allow orientations other than the default portrait orientation. +- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { + // Return YES for supported orientations + return (interfaceOrientation == UIInterfaceOrientationPortrait); +} +*/ + + +- (void)didReceiveMemoryWarning { + [super didReceiveMemoryWarning]; // Releases the view if it doesn't have a superview + // Release anything that's not essential, such as cached data +} + +- (void)dealloc { + [super dealloc]; +} + + + +@end diff --git a/ChemDraw/GestureViewController.xib b/ChemDraw/GestureViewController.xib new file mode 100644 index 0000000..4656ca2 --- /dev/null +++ b/ChemDraw/GestureViewController.xib @@ -0,0 +1,139 @@ + + + + 768 + 9J61 + 677 + 949.46 + 353.00 + + YES + + + + YES + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + YES + + YES + + + YES + + + + YES + + IBFilesOwner + + + IBFirstResponder + + + + 292 + {320, 460} + + + 3 + MQA + + 2 + + + + + + + + YES + + + + YES + + 0 + + YES + + + + + + 1 + + + + + -1 + + + RmlsZSdzIE93bmVyA + + + -2 + + + + + + + YES + + YES + -2.CustomClassName + 1.CustomClassName + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + + + YES + UIResponder + GestureView + {{354, 376}, {320, 480}} + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + + YES + + YES + + + YES + + + + + YES + + YES + + + YES + + + + 2 + + + + YES + + GestureView + UIView + + IBProjectSource + Classes/GestureView.h + + + + + 0 + ChemDraw.xcodeproj + 3 + 3.0 + + diff --git a/ChemDraw/MainWindow.xib b/ChemDraw/MainWindow.xib index b0e4d61..483491e 100644 --- a/ChemDraw/MainWindow.xib +++ b/ChemDraw/MainWindow.xib @@ -8,7 +8,7 @@ 353.00 YES - + YES @@ -84,8 +84,33 @@ + ChemDrawViewController + + GestureViewController + + + + + + + 256 + {0, 0} + NO + YES + YES + + + YES + + + Root View Controller + + + + + @@ -98,14 +123,6 @@ 14 - - - scrollView - - - - 19 - delegate @@ -114,37 +131,37 @@ 20 - - - viewController - - - - 22 - changeElement: - + - 28 + 33 - - undoLastAction: - - + + gestureViewController + + - 29 + 39 - - cancel - + + navigationController + + + + 40 + + + + drawViewController + - 30 + 41 @@ -224,6 +241,40 @@ + + 31 + + + + + 34 + + + YES + + + + + + + 35 + + + YES + + + + + + 36 + + + + + 37 + + + @@ -244,12 +295,20 @@ 27.IBPluginDependency 3.CustomClassName 3.IBPluginDependency + 31.CustomClassName + 31.IBEditorWindowLastContentRect + 31.IBPluginDependency + 34.IBEditorWindowLastContentRect + 34.IBPluginDependency + 35.IBPluginDependency + 36.IBPluginDependency + 37.IBPluginDependency YES UIApplication UIResponder - {{754, 340}, {320, 480}} + {{1027, 342}, {320, 480}} com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin ChemDrawViewController @@ -261,6 +320,14 @@ com.apple.InterfaceBuilder.IBCocoaTouchPlugin ChemDrawAppDelegate com.apple.InterfaceBuilder.IBCocoaTouchPlugin + GestureViewController + {{0, 354}, {320, 480}} + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + {{175, 364}, {320, 480}} + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -283,7 +350,7 @@ - 30 + 44 @@ -291,18 +358,24 @@ ChemDrawAppDelegate NSObject + + changeElement: + id + YES YES - scrollView - viewController + drawViewController + gestureViewController + navigationController window YES - UIScrollView ChemDrawViewController + GestureViewController + UINavigationController UIWindow @@ -322,6 +395,33 @@ ChemDrawViewController UIViewController + + YES + + YES + cancelButton + changeElementButton + toolBar + undoButton + view + + + YES + UIBarButtonItem + UIBarButtonItem + UIToolbar + UIBarButtonItem + DrawView + + + + IBProjectSource + Classes/ChemDrawViewController.h + + + + DrawView + UIView YES @@ -356,7 +456,15 @@ IBProjectSource - Classes/ChemDrawViewController.h + Classes/DrawView.h + + + + GestureViewController + UIViewController + + IBProjectSource + Classes/GestureViewController.h