Commit 7545e30d authored by Bruno Coelho's avatar Bruno Coelho

Simplify iOS example

parent 52f4e25e
#import "TXSItemList.h" #import "TXSItemList.h"
#import "TXSSortItems.h" #import "TXSSortItems.h"
#import "TextSort-Swift.h" #import "TextSort-Swift.h"
#import "TXSTextboxListenerImpl.h"
#import "TXSViewController.h" #import "TXSViewController.h"
#import "TXSTextboxListener.h" #import "TXSTextboxListener.h"
...@@ -12,6 +13,8 @@ ...@@ -12,6 +13,8 @@
@property (nonatomic) IBOutlet UIButton *button; @property (nonatomic) IBOutlet UIButton *button;
@property (nonatomic) IBOutlet UISwitch *switchDebugMode;
@end @end
@implementation TXSViewController { @implementation TXSViewController {
...@@ -33,11 +36,28 @@ ...@@ -33,11 +36,28 @@
action:@selector(dismissKeyboard)]; action:@selector(dismissKeyboard)];
[self.view addGestureRecognizer:tap]; [self.view addGestureRecognizer:tap];
// Create the Objective-C TXSTextboxListener [self createSorter];
_textboxListener = [[TXSTextboxListenerImpl alloc] initWithUITextView:self.textView]; }
-(void)createSorter
{
if (_switchDebugMode.isOn) {
// Create the Swift TXSTextboxListener
_textboxListener = [[TXSTextboxListenerDebugableImpl alloc] initWithUITextView:self.textView];
}
else {
// Create the Objective-C TXSTextboxListener
_textboxListener = [[TXSTextboxListenerImpl alloc] initWithUITextView:self.textView];
}
_sortItemInterface = [TXSSortItems createWithListener:_textboxListener]; _sortItemInterface = [TXSSortItems createWithListener:_textboxListener];
} }
-(IBAction)toggleDebugMode:(id)sender
{
[self createSorter];
}
- (IBAction)sort:(id)sender - (IBAction)sort:(id)sender
{ {
[self sortWithOrder:TXSSortOrderAscending]; [self sortWithOrder:TXSSortOrderAscending];
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
import UIKit import UIKit
@objc class TXSTextboxListenerImpl : NSObject, TXSTextboxListener { @objc class TXSTextboxListenerDebugableImpl : NSObject, TXSTextboxListener {
private var textView_: UITextView private var textView_: UITextView
@objc(initWithUITextView:) @objc(initWithUITextView:)
...@@ -17,6 +17,8 @@ import UIKit ...@@ -17,6 +17,8 @@ import UIKit
} }
@objc func update(_ items: TXSItemList) { @objc func update(_ items: TXSItemList) {
textView_.text = items.items.joined(separator: "\n") let string = items.items.joined(separator: "\n")
print("TXSTextboxListenerDebugableImpl -> update \n\(string)")
textView_.text = string
} }
} }
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
65D7FDFB19AD0CDF0038F82F /* TXSAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 65D7FDF519AD0CDF0038F82F /* TXSAppDelegate.m */; }; 65D7FDFB19AD0CDF0038F82F /* TXSAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 65D7FDF519AD0CDF0038F82F /* TXSAppDelegate.m */; };
65D7FDFC19AD0CDF0038F82F /* TXSTextboxListenerImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = 65D7FDF719AD0CDF0038F82F /* TXSTextboxListenerImpl.m */; }; 65D7FDFC19AD0CDF0038F82F /* TXSTextboxListenerImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = 65D7FDF719AD0CDF0038F82F /* TXSTextboxListenerImpl.m */; };
65D7FDFD19AD0CDF0038F82F /* TXSViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 65D7FDF919AD0CDF0038F82F /* TXSViewController.m */; }; 65D7FDFD19AD0CDF0038F82F /* TXSViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 65D7FDF919AD0CDF0038F82F /* TXSViewController.m */; };
A546A26E1E72FBAF004A8BBD /* TXSTextboxListenerImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = A546A26D1E72FBAF004A8BBD /* TXSTextboxListenerImpl.swift */; }; A546A26E1E72FBAF004A8BBD /* TXSTextboxListenerDebugableImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = A546A26D1E72FBAF004A8BBD /* TXSTextboxListenerDebugableImpl.swift */; };
B003051919B70561008E1F67 /* libdjinni_objc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B003051819B70561008E1F67 /* libdjinni_objc.a */; }; B003051919B70561008E1F67 /* libdjinni_objc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B003051819B70561008E1F67 /* libdjinni_objc.a */; };
B097B6BC19B1C07E0047653A /* libtextsort_objc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B097B6BB19B1C07E0047653A /* libtextsort_objc.a */; }; B097B6BC19B1C07E0047653A /* libtextsort_objc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B097B6BB19B1C07E0047653A /* libtextsort_objc.a */; };
/* End PBXBuildFile section */ /* End PBXBuildFile section */
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
65D7FDF719AD0CDF0038F82F /* TXSTextboxListenerImpl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TXSTextboxListenerImpl.m; sourceTree = "<group>"; }; 65D7FDF719AD0CDF0038F82F /* TXSTextboxListenerImpl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TXSTextboxListenerImpl.m; sourceTree = "<group>"; };
65D7FDF819AD0CDF0038F82F /* TXSViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TXSViewController.h; sourceTree = "<group>"; }; 65D7FDF819AD0CDF0038F82F /* TXSViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TXSViewController.h; sourceTree = "<group>"; };
65D7FDF919AD0CDF0038F82F /* TXSViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TXSViewController.m; sourceTree = "<group>"; }; 65D7FDF919AD0CDF0038F82F /* TXSViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TXSViewController.m; sourceTree = "<group>"; };
A546A26D1E72FBAF004A8BBD /* TXSTextboxListenerImpl.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = TXSTextboxListenerImpl.swift; path = "../handwritten-src/swift/TXSTextboxListenerImpl.swift"; sourceTree = "<group>"; }; A546A26D1E72FBAF004A8BBD /* TXSTextboxListenerDebugableImpl.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = TXSTextboxListenerDebugableImpl.swift; path = "../handwritten-src/swift/TXSTextboxListenerDebugableImpl.swift"; sourceTree = "<group>"; };
B003051819B70561008E1F67 /* libdjinni_objc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libdjinni_objc.a; path = "../../support-lib/build/Debug-iphoneos/libdjinni_objc.a"; sourceTree = "<group>"; }; B003051819B70561008E1F67 /* libdjinni_objc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libdjinni_objc.a; path = "../../support-lib/build/Debug-iphoneos/libdjinni_objc.a"; sourceTree = "<group>"; };
B097B6BB19B1C07E0047653A /* libtextsort_objc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libtextsort_objc.a; path = "../../build/Debug-iphoneos/libtextsort_objc.a"; sourceTree = "<group>"; }; B097B6BB19B1C07E0047653A /* libtextsort_objc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libtextsort_objc.a; path = "../../build/Debug-iphoneos/libtextsort_objc.a"; sourceTree = "<group>"; };
/* End PBXFileReference section */ /* End PBXFileReference section */
...@@ -129,7 +129,7 @@ ...@@ -129,7 +129,7 @@
A546A26A1E72F967004A8BBD /* handwritten-swift */ = { A546A26A1E72F967004A8BBD /* handwritten-swift */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
A546A26D1E72FBAF004A8BBD /* TXSTextboxListenerImpl.swift */, A546A26D1E72FBAF004A8BBD /* TXSTextboxListenerDebugableImpl.swift */,
); );
name = "handwritten-swift"; name = "handwritten-swift";
sourceTree = "<group>"; sourceTree = "<group>";
...@@ -208,7 +208,7 @@ ...@@ -208,7 +208,7 @@
65D7FDFC19AD0CDF0038F82F /* TXSTextboxListenerImpl.m in Sources */, 65D7FDFC19AD0CDF0038F82F /* TXSTextboxListenerImpl.m in Sources */,
65D7FDFB19AD0CDF0038F82F /* TXSAppDelegate.m in Sources */, 65D7FDFB19AD0CDF0038F82F /* TXSAppDelegate.m in Sources */,
65D7FDFD19AD0CDF0038F82F /* TXSViewController.m in Sources */, 65D7FDFD19AD0CDF0038F82F /* TXSViewController.m in Sources */,
A546A26E1E72FBAF004A8BBD /* TXSTextboxListenerImpl.swift in Sources */, A546A26E1E72FBAF004A8BBD /* TXSTextboxListenerDebugableImpl.swift in Sources */,
65D7FDFA19AD0CDF0038F82F /* main.mm in Sources */, 65D7FDFA19AD0CDF0038F82F /* main.mm in Sources */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment