-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMainController+ImageView.m
93 lines (80 loc) · 3.03 KB
/
MainController+ImageView.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
//
// MainController+ImageView.m
// Toucan
//
// Created by will on 23/03/10.
// Copyright 2010 ExoApps. All rights reserved.
//
#import "MainController+ImageView.h"
@implementation MainController(ImageView)
# pragma mark -
# pragma mark Display Images in IKImageView
// This method loads an image into the image view in a separate thread.
- (void)displayImageWithURL:(id)imageUrl
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
[progressIndicator setHidden: NO];
[progressIndicator startAnimation: self];
[imageView setImageWithURL: imageUrl];
imageLoadedUrl = [imageUrl retain];
// CGImageRef image = NULL;
// CGImageSourceRef isr = CGImageSourceCreateWithURL((CFURLRef)imageUrl, NULL);
//
// if(isr)
// {
// image = CGImageSourceCreateImageAtIndex(isr, 0, NULL);
// if (image)
// {
// imageProperties = (NSDictionary*)CGImageSourceCopyPropertiesAtIndex(isr, 0, (CFDictionaryRef)imageProperties);
// }
// CFRelease(isr);
// }
// if (image)
// {
// [imageView setImage: image imageProperties: imageProperties];
// CGImageRelease(image);
// }
[imageView setAutoresizes: YES];
[progressIndicator stopAnimation: self];
[progressIndicator setHidden: YES];
if([imageView image] != nil) [saveButton setEnabled: NO forSegment: 0], [saveButton setEnabled: YES forSegment: 1], [saveButton setEnabled: YES forSegment: 2], [sizeButton setHidden: NO];
else [saveButton setEnabled: YES forSegment: 0], [saveButton setEnabled: NO forSegment: 1], [saveButton setEnabled: NO forSegment: 2], [sizeButton setHidden: YES];
[pool release];
}
- (IBAction)switchToolMode:(id)sender
{
NSInteger newTool;
if ([sender isKindOfClass: [NSSegmentedControl class]])
newTool = [sender selectedSegment];
else
newTool = [sender tag];
switch(newTool)
{
case 0:
[imageView setCurrentToolMode: IKToolModeMove];
[imageToolModeLabel setStringValue: NSLocalizedString(@"IMAGE_TOOL_MODE_MOVE_LABEL",@"Déplacement")];
[imageCropToolButton setHidden: YES];
break;
case 1:
[imageView setCurrentToolMode: IKToolModeSelect];
[imageToolModeLabel setStringValue: NSLocalizedString(@"IMAGE_TOOL_MODE_SELECT_LABEL",@"Sélection")];
[imageCropToolButton setHidden: YES];
break;
case 2:
[imageView setCurrentToolMode: IKToolModeCrop];
[imageToolModeLabel setStringValue: NSLocalizedString(@"IMAGE_TOOL_MODE_CROP_LABEL",@"Rognage")];
[imageCropToolButton setHidden: NO];
break;
case 3:
[imageView setCurrentToolMode: IKToolModeRotate];
[imageToolModeLabel setStringValue: NSLocalizedString(@"IMAGE_TOOL_MODE_ROTATE_LABEL",@"Rotation")];
[imageCropToolButton setHidden: YES];
break;
case 4:
[imageView setCurrentToolMode: IKToolModeAnnotate];
[imageToolModeLabel setStringValue: NSLocalizedString(@"IMAGE_TOOL_MODE_ANNOTATE_LABEL",@"Annotation")];
[imageCropToolButton setHidden: YES];
break;
}
}
@end