mirror of https://github.com/oxen-io/session-ios
				
				
				
			
			You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
	
	
		
			71 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Swift
		
	
		
		
			
		
	
	
			71 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Swift
		
	
| 
											7 years ago
										 | // | ||
|  | //  Copyright (c) 2019 Open Whisper Systems. All rights reserved. | ||
|  | // | ||
|  | 
 | ||
|  | import UIKit | ||
|  | 
 | ||
|  | @objc public enum ImageEditorError: Int, Error { | ||
|  |     case assertionError | ||
|  |     case invalidInput | ||
|  | } | ||
|  | 
 | ||
|  | @objc | ||
|  | public enum ImageEditorItemType: Int { | ||
|  |     case test | ||
|  |     case stroke | ||
|  |     case text | ||
|  | } | ||
|  | 
 | ||
|  | // MARK: - | ||
|  | 
 | ||
|  | // Represented in a "ULO unit" coordinate system | ||
|  | // for source image. | ||
|  | // | ||
|  | // "ULO" coordinate system is "upper-left-origin". | ||
|  | // | ||
|  | // "Unit" coordinate system means values are expressed | ||
|  | // in terms of some other values, in this case the | ||
|  | // width and height of the source image. | ||
|  | // | ||
|  | // * 0.0 = left edge | ||
|  | // * 1.0 = right edge | ||
|  | // * 0.0 = top edge | ||
|  | // * 1.0 = bottom edge | ||
|  | public typealias ImageEditorSample = CGPoint | ||
|  | 
 | ||
|  | // MARK: - | ||
|  | 
 | ||
|  | // Instances of ImageEditorItem should be treated | ||
|  | // as immutable, once configured. | ||
|  | @objc | ||
|  | public class ImageEditorItem: NSObject { | ||
|  |     @objc | ||
|  |     public let itemId: String | ||
|  | 
 | ||
|  |     @objc | ||
|  |     public let itemType: ImageEditorItemType | ||
|  | 
 | ||
|  |     @objc | ||
|  |     public init(itemType: ImageEditorItemType) { | ||
|  |         self.itemId = UUID().uuidString | ||
|  |         self.itemType = itemType | ||
|  | 
 | ||
|  |         super.init() | ||
|  |     } | ||
|  | 
 | ||
|  |     @objc | ||
|  |     public init(itemId: String, | ||
|  |                 itemType: ImageEditorItemType) { | ||
|  |         self.itemId = itemId | ||
|  |         self.itemType = itemType | ||
|  | 
 | ||
|  |         super.init() | ||
|  |     } | ||
|  | 
 | ||
|  |     // The scale with which to render this item's content | ||
|  |     // when rendering the "output" image for sending. | ||
|  |     public func outputScale() -> CGFloat { | ||
|  |         return 1.0 | ||
|  |     } | ||
|  | } |