|
|
@@ -0,0 +1,44 @@
|
|
|
+//
|
|
|
+// FLEXArgumentInputStringView.m
|
|
|
+// Flipboard
|
|
|
+//
|
|
|
+// Created by Ryan Olson on 6/28/14.
|
|
|
+// Copyright (c) 2014 Flipboard. All rights reserved.
|
|
|
+//
|
|
|
+
|
|
|
+#import "FLEXArgumentInputStringView.h"
|
|
|
+
|
|
|
+@implementation FLEXArgumentInputStringView
|
|
|
+
|
|
|
+- (instancetype)initWithArgumentTypeEncoding:(const char *)typeEncoding
|
|
|
+{
|
|
|
+ self = [super initWithArgumentTypeEncoding:typeEncoding];
|
|
|
+ if (self) {
|
|
|
+ self.targetSize = FLEXArgumentInputViewSizeLarge;
|
|
|
+ }
|
|
|
+ return self;
|
|
|
+}
|
|
|
+
|
|
|
+- (void)setInputValue:(id)inputValue
|
|
|
+{
|
|
|
+ self.inputTextView.text = inputValue;
|
|
|
+}
|
|
|
+
|
|
|
+- (id)inputValue
|
|
|
+{
|
|
|
+ // Interpret empty string as nil. We loose the ablitiy to set empty string as a string value,
|
|
|
+ // but we accept that tradeoff in exchange for not having to type quotes for every string.
|
|
|
+ return [self.inputTextView.text length] > 0 ? [self.inputTextView.text copy] : nil;
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+#pragma mark -
|
|
|
+
|
|
|
++ (BOOL)supportsObjCType:(const char *)type withCurrentValue:(id)value
|
|
|
+{
|
|
|
+ BOOL supported = strcmp(type, "@\"NSString\"") == 0;
|
|
|
+ supported = supported || (value && [value isKindOfClass:[NSString class]]);
|
|
|
+ return supported;
|
|
|
+}
|
|
|
+
|
|
|
+@end
|