From 7b02207537d35bfa1714bf8beafc921f717d100a Mon Sep 17 00:00:00 2001
From: 单军华
Date: Wed, 11 Jul 2018 10:47:42 +0800
Subject: [PATCH] 首次上传
---
screendisplay/Pods/YYText/YYText/Component/YYTextInput.m | 152 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 152 insertions(+), 0 deletions(-)
diff --git a/screendisplay/Pods/YYText/YYText/Component/YYTextInput.m b/screendisplay/Pods/YYText/YYText/Component/YYTextInput.m
new file mode 100755
index 0000000..0c4cb52
--- /dev/null
+++ b/screendisplay/Pods/YYText/YYText/Component/YYTextInput.m
@@ -0,0 +1,152 @@
+//
+// YYTextInput.m
+// YYText <https://github.com/ibireme/YYText>
+//
+// Created by ibireme on 15/4/17.
+// Copyright (c) 2015 ibireme.
+//
+// This source code is licensed under the MIT-style license found in the
+// LICENSE file in the root directory of this source tree.
+//
+
+#import "YYTextInput.h"
+#import "YYTextUtilities.h"
+
+
+@implementation YYTextPosition
+
++ (instancetype)positionWithOffset:(NSInteger)offset {
+ return [self positionWithOffset:offset affinity:YYTextAffinityForward];
+}
+
++ (instancetype)positionWithOffset:(NSInteger)offset affinity:(YYTextAffinity)affinity {
+ YYTextPosition *p = [self new];
+ p->_offset = offset;
+ p->_affinity = affinity;
+ return p;
+}
+
+- (instancetype)copyWithZone:(NSZone *)zone {
+ return [self.class positionWithOffset:_offset affinity:_affinity];
+}
+
+- (NSString *)description {
+ return [NSString stringWithFormat:@"<%@: %p> (%@%@)", self.class, self, @(_offset), _affinity == YYTextAffinityForward ? @"F":@"B"];
+}
+
+- (NSUInteger)hash {
+ return _offset * 2 + (_affinity == YYTextAffinityForward ? 1 : 0);
+}
+
+- (BOOL)isEqual:(YYTextPosition *)object {
+ if (!object) return NO;
+ return _offset == object.offset && _affinity == object.affinity;
+}
+
+- (NSComparisonResult)compare:(YYTextPosition *)otherPosition {
+ if (!otherPosition) return NSOrderedAscending;
+ if (_offset < otherPosition.offset) return NSOrderedAscending;
+ if (_offset > otherPosition.offset) return NSOrderedDescending;
+ if (_affinity == YYTextAffinityBackward && otherPosition.affinity == YYTextAffinityForward) return NSOrderedAscending;
+ if (_affinity == YYTextAffinityForward && otherPosition.affinity == YYTextAffinityBackward) return NSOrderedDescending;
+ return NSOrderedSame;
+}
+
+@end
+
+
+
+@implementation YYTextRange {
+ YYTextPosition *_start;
+ YYTextPosition *_end;
+}
+
+- (instancetype)init {
+ self = [super init];
+ if (!self) return nil;
+ _start = [YYTextPosition positionWithOffset:0];
+ _end = [YYTextPosition positionWithOffset:0];
+ return self;
+}
+
+- (YYTextPosition *)start {
+ return _start;
+}
+
+- (YYTextPosition *)end {
+ return _end;
+}
+
+- (BOOL)isEmpty {
+ return _start.offset == _end.offset;
+}
+
+- (NSRange)asRange {
+ return NSMakeRange(_start.offset, _end.offset - _start.offset);
+}
+
++ (instancetype)rangeWithRange:(NSRange)range {
+ return [self rangeWithRange:range affinity:YYTextAffinityForward];
+}
+
++ (instancetype)rangeWithRange:(NSRange)range affinity:(YYTextAffinity)affinity {
+ YYTextPosition *start = [YYTextPosition positionWithOffset:range.location affinity:affinity];
+ YYTextPosition *end = [YYTextPosition positionWithOffset:range.location + range.length affinity:affinity];
+ return [self rangeWithStart:start end:end];
+}
+
++ (instancetype)rangeWithStart:(YYTextPosition *)start end:(YYTextPosition *)end {
+ if (!start || !end) return nil;
+ if ([start compare:end] == NSOrderedDescending) {
+ YYTEXT_SWAP(start, end);
+ }
+ YYTextRange *range = [YYTextRange new];
+ range->_start = start;
+ range->_end = end;
+ return range;
+}
+
++ (instancetype)defaultRange {
+ return [self new];
+}
+
+- (instancetype)copyWithZone:(NSZone *)zone {
+ return [self.class rangeWithStart:_start end:_end];
+}
+
+- (NSString *)description {
+ return [NSString stringWithFormat:@"<%@: %p> (%@, %@)%@", self.class, self, @(_start.offset), @(_end.offset - _start.offset), _end.affinity == YYTextAffinityForward ? @"F":@"B"];
+}
+
+- (NSUInteger)hash {
+ return (sizeof(NSUInteger) == 8 ? OSSwapInt64(_start.hash) : OSSwapInt32(_start.hash)) + _end.hash;
+}
+
+- (BOOL)isEqual:(YYTextRange *)object {
+ if (!object) return NO;
+ return [_start isEqual:object.start] && [_end isEqual:object.end];
+}
+
+@end
+
+
+
+@implementation YYTextSelectionRect
+
+@synthesize rect = _rect;
+@synthesize writingDirection = _writingDirection;
+@synthesize containsStart = _containsStart;
+@synthesize containsEnd = _containsEnd;
+@synthesize isVertical = _isVertical;
+
+- (id)copyWithZone:(NSZone *)zone {
+ YYTextSelectionRect *one = [self.class new];
+ one.rect = _rect;
+ one.writingDirection = _writingDirection;
+ one.containsStart = _containsStart;
+ one.containsEnd = _containsEnd;
+ one.isVertical = _isVertical;
+ return one;
+}
+
+@end
--
Gitblit v1.8.0