aboutsummaryrefslogtreecommitdiffhomepage
path: root/example
diff options
context:
space:
mode:
authorGravatar Paul Young <paulyoungonline@gmail.com>2013-07-14 15:51:15 -0400
committerGravatar Paul Young <paulyoungonline@gmail.com>2013-07-14 15:51:15 -0400
commitba30d5c850b2712d0a5530ecc09b8616e55a40ba (patch)
tree885033d91cc83ac1dfa1057505c117a2d73fa5f9 /example
parent9da381504d06076274d893b6a73dd270b703e8aa (diff)
Associating message rendering operation with table view cell.
* Added custom table view cell. * Cancelling operation on cell reuse.
Diffstat (limited to 'example')
-rw-r--r--example/ios/iOS UI Test/iOS UI Test.xcodeproj/project.pbxproj6
-rw-r--r--example/ios/iOS UI Test/iOS UI Test/MCTTableViewCell.h16
-rw-r--r--example/ios/iOS UI Test/iOS UI Test/MCTTableViewCell.m13
-rw-r--r--example/ios/iOS UI Test/iOS UI Test/MasterViewController.m11
-rw-r--r--example/ios/iOS UI Test/iOS UI Test/en.lproj/MainStoryboard.storyboard5
5 files changed, 46 insertions, 5 deletions
diff --git a/example/ios/iOS UI Test/iOS UI Test.xcodeproj/project.pbxproj b/example/ios/iOS UI Test/iOS UI Test.xcodeproj/project.pbxproj
index e9cd3797..d8972256 100644
--- a/example/ios/iOS UI Test/iOS UI Test.xcodeproj/project.pbxproj
+++ b/example/ios/iOS UI Test/iOS UI Test.xcodeproj/project.pbxproj
@@ -35,6 +35,7 @@
C6D71951178BB8B4008ED15F /* GTMOAuth2ViewControllerTouch.m in Sources */ = {isa = PBXBuildFile; fileRef = C6D71947178BA812008ED15F /* GTMOAuth2ViewControllerTouch.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
C6D71952178BB8B4008ED15F /* GTMOAuth2ViewTouch.xib in Resources */ = {isa = PBXBuildFile; fileRef = C6D71948178BA812008ED15F /* GTMOAuth2ViewTouch.xib */; };
C6D71954178BB91E008ED15F /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6D71953178BB91E008ED15F /* SystemConfiguration.framework */; };
+ DA9AD477179331A600743873 /* MCTTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = DA9AD476179331A600743873 /* MCTTableViewCell.m */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@@ -126,6 +127,8 @@
C6D71947178BA812008ED15F /* GTMOAuth2ViewControllerTouch.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GTMOAuth2ViewControllerTouch.m; sourceTree = "<group>"; };
C6D71948178BA812008ED15F /* GTMOAuth2ViewTouch.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = GTMOAuth2ViewTouch.xib; sourceTree = "<group>"; };
C6D71953178BB91E008ED15F /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; };
+ DA9AD475179331A600743873 /* MCTTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCTTableViewCell.h; sourceTree = "<group>"; };
+ DA9AD476179331A600743873 /* MCTTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MCTTableViewCell.m; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@@ -222,6 +225,8 @@
AB9EAE3517036FD700D750C7 /* SettingsViewController.xib */,
AB9EAE0C170368F000D750C7 /* Supporting Files */,
AB665BC917134336007F2151 /* common */,
+ DA9AD475179331A600743873 /* MCTTableViewCell.h */,
+ DA9AD476179331A600743873 /* MCTTableViewCell.m */,
);
path = "iOS UI Test";
sourceTree = "<group>";
@@ -408,6 +413,7 @@
C6D7194F178BB8B4008ED15F /* GTMOAuth2Authentication.m in Sources */,
B12AAA3417322654003551C7 /* MCOMessageView.mm in Sources */,
B12AAA3517322654003551C7 /* MCTMsgViewController.mm in Sources */,
+ DA9AD477179331A600743873 /* MCTTableViewCell.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
diff --git a/example/ios/iOS UI Test/iOS UI Test/MCTTableViewCell.h b/example/ios/iOS UI Test/iOS UI Test/MCTTableViewCell.h
new file mode 100644
index 00000000..0d680415
--- /dev/null
+++ b/example/ios/iOS UI Test/iOS UI Test/MCTTableViewCell.h
@@ -0,0 +1,16 @@
+//
+// MCTTableViewCell.h
+// iOS UI Test
+//
+// Created by Paul Young on 14/07/2013.
+// Copyright (c) 2013 AppJon. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+#import <MailCore/MailCore.h>
+
+@interface MCTTableViewCell : UITableViewCell
+
+@property (nonatomic, strong) MCOIMAPMessageRenderingOperation * messageRenderingOperation;
+
+@end
diff --git a/example/ios/iOS UI Test/iOS UI Test/MCTTableViewCell.m b/example/ios/iOS UI Test/iOS UI Test/MCTTableViewCell.m
new file mode 100644
index 00000000..21d22e38
--- /dev/null
+++ b/example/ios/iOS UI Test/iOS UI Test/MCTTableViewCell.m
@@ -0,0 +1,13 @@
+//
+// MCTTableViewCell.m
+// iOS UI Test
+//
+// Created by Paul Young on 14/07/2013.
+// Copyright (c) 2013 AppJon. All rights reserved.
+//
+
+#import "MCTTableViewCell.h"
+
+@implementation MCTTableViewCell
+
+@end
diff --git a/example/ios/iOS UI Test/iOS UI Test/MasterViewController.m b/example/ios/iOS UI Test/iOS UI Test/MasterViewController.m
index 1b2528d1..c05fdd9a 100644
--- a/example/ios/iOS UI Test/iOS UI Test/MasterViewController.m
+++ b/example/ios/iOS UI Test/iOS UI Test/MasterViewController.m
@@ -11,6 +11,7 @@
#import "FXKeychain.h"
#import "MCTMsgViewController.h"
#import "GTMOAuth2ViewControllerTouch.h"
+#import "MCTTableViewCell.h"
#define CLIENT_ID @"the-client-id"
#define CLIENT_SECRET @"the-client-secret"
@@ -167,15 +168,17 @@ finishedRefreshWithFetcher:(GTMHTTPFetcher *)fetcher
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
- UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
+ MCTTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
MCOIMAPMessage *message = self.messages[indexPath.row];
cell.textLabel.text = message.header.subject;
- MCOIMAPMessageRenderingOperation * op = [self.imapSession plainTextBodyRenderingOperationWithMessage:message
- folder:@"INBOX"];
+ [cell.messageRenderingOperation cancel];
- [op start:^(NSString * htmlString, NSError * error) {
+ cell.messageRenderingOperation = [self.imapSession plainTextBodyRenderingOperationWithMessage:message
+ folder:@"INBOX"];
+
+ [cell.messageRenderingOperation start:^(NSString * htmlString, NSError * error) {
cell.detailTextLabel.text = htmlString;
}];
diff --git a/example/ios/iOS UI Test/iOS UI Test/en.lproj/MainStoryboard.storyboard b/example/ios/iOS UI Test/iOS UI Test/en.lproj/MainStoryboard.storyboard
index 91422073..2e9d223f 100644
--- a/example/ios/iOS UI Test/iOS UI Test/en.lproj/MainStoryboard.storyboard
+++ b/example/ios/iOS UI Test/iOS UI Test/en.lproj/MainStoryboard.storyboard
@@ -30,7 +30,7 @@
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<prototypes>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" accessoryType="disclosureIndicator" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="Cell" textLabel="phq-AM-6qj" detailTextLabel="uHd-0U-sVX" style="IBUITableViewCellStyleSubtitle" id="lJ0-d7-vTF">
+ <tableViewCell contentMode="scaleToFill" selectionStyle="blue" accessoryType="disclosureIndicator" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="Cell" textLabel="phq-AM-6qj" detailTextLabel="uHd-0U-sVX" style="IBUITableViewCellStyleSubtitle" id="lJ0-d7-vTF" customClass="MCTTableViewCell">
<rect key="frame" x="0.0" y="22" width="320" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
@@ -75,6 +75,9 @@
</scene>
</scenes>
<classes>
+ <class className="MCTTableViewCell" superclassName="UITableViewCell">
+ <source key="sourceIdentifier" type="project" relativePath="./Classes/MCTTableViewCell.h"/>
+ </class>
<class className="MasterViewController" superclassName="UITableViewController">
<source key="sourceIdentifier" type="project" relativePath="./Classes/MasterViewController.h"/>
<relationships>