@@ -126,16 +126,35 @@ public enum CGRectEdge : UInt32 {
126
126
}
127
127
128
128
extension NSRectEdge {
129
- public init ( rectEdge: CGRectEdge ) { NSUnimplemented ( ) }
129
+ public init ( rectEdge: CGRectEdge ) {
130
+ switch rectEdge {
131
+ case . MinXEdge: self = . MinX
132
+ case . MinYEdge: self = . MinY
133
+ case . MaxXEdge: self = . MaxX
134
+ case . MaxYEdge: self = . MaxY
135
+ }
136
+ }
130
137
}
131
138
132
139
public struct NSEdgeInsets {
133
140
public var top : CGFloat
134
141
public var left : CGFloat
135
142
public var bottom : CGFloat
136
143
public var right : CGFloat
137
- public init ( ) { NSUnimplemented ( ) }
138
- public init ( top: CGFloat , left: CGFloat , bottom: CGFloat , right: CGFloat ) { NSUnimplemented ( ) }
144
+
145
+ public init ( ) {
146
+ self . top = CGFloat ( )
147
+ self . left = CGFloat ( )
148
+ self . bottom = CGFloat ( )
149
+ self . right = CGFloat ( )
150
+ }
151
+
152
+ public init ( top: CGFloat , left: CGFloat , bottom: CGFloat , right: CGFloat ) {
153
+ self . top = top
154
+ self . left = left
155
+ self . bottom = bottom
156
+ self . right = right
157
+ }
139
158
}
140
159
141
160
public struct NSAlignmentOptions : OptionSetType {
@@ -176,49 +195,57 @@ public let NSZeroSize: NSSize = NSSize()
176
195
public let NSZeroRect : NSRect = NSRect ( )
177
196
public let NSEdgeInsetsZero : NSEdgeInsets = NSEdgeInsets ( )
178
197
179
- public func NSMakePoint( x: CGFloat , _ y: CGFloat ) -> NSPoint { NSUnimplemented ( ) }
198
+ public func NSMakePoint( x: CGFloat , _ y: CGFloat ) -> NSPoint { return NSPoint ( x: x, y: y) }
199
+
200
+ public func NSMakeSize( w: CGFloat , _ h: CGFloat ) -> NSSize { return NSSize ( width: w, height: h) }
180
201
181
- public func NSMakeSize ( w: CGFloat , _ h: CGFloat ) -> NSSize { NSUnimplemented ( ) }
202
+ public func NSMakeRect ( x : CGFloat , _ y : CGFloat , _ w: CGFloat , _ h: CGFloat ) -> NSRect { return NSRect ( origin : NSPoint ( x : x , y : y ) , size : NSSize ( width : w , height : h ) ) }
182
203
183
- public func NSMakeRect ( x : CGFloat , _ y : CGFloat , _ w : CGFloat , _ h : CGFloat ) -> NSRect { NSUnimplemented ( ) }
204
+ public func NSMaxX ( aRect : NSRect ) -> CGFloat { return CGFloat ( aRect . origin . x . native + aRect . size . width . native ) }
184
205
185
- public func NSMaxX ( aRect: NSRect ) -> CGFloat { NSUnimplemented ( ) }
206
+ public func NSMaxY ( aRect: NSRect ) -> CGFloat { return CGFloat ( aRect . origin . y . native + aRect . size . height . native ) }
186
207
187
- public func NSMaxY ( aRect: NSRect ) -> CGFloat { NSUnimplemented ( ) }
208
+ public func NSMidX ( aRect: NSRect ) -> CGFloat { return CGFloat ( aRect . origin . x . native + ( aRect . size . width . native / 2 ) ) }
188
209
189
- public func NSMidX ( aRect: NSRect ) -> CGFloat { NSUnimplemented ( ) }
210
+ public func NSMidY ( aRect: NSRect ) -> CGFloat { return CGFloat ( aRect . origin . y . native + ( aRect . size . height . native / 2 ) ) }
190
211
191
- public func NSMidY ( aRect: NSRect ) -> CGFloat { NSUnimplemented ( ) }
212
+ public func NSMinX ( aRect: NSRect ) -> CGFloat { return aRect . origin . x }
192
213
193
- public func NSMinX ( aRect: NSRect ) -> CGFloat { NSUnimplemented ( ) }
214
+ public func NSMinY ( aRect: NSRect ) -> CGFloat { return aRect . origin . y }
194
215
195
- public func NSMinY ( aRect: NSRect ) -> CGFloat { NSUnimplemented ( ) }
216
+ public func NSWidth ( aRect: NSRect ) -> CGFloat { return aRect . size . width }
196
217
197
- public func NSWidth ( aRect: NSRect ) -> CGFloat { NSUnimplemented ( ) }
218
+ public func NSHeight ( aRect: NSRect ) -> CGFloat { return aRect . size . height }
198
219
199
- public func NSHeight ( aRect : NSRect ) -> CGFloat { NSUnimplemented ( ) }
220
+ public func NSRectFromCGRect ( cgrect : CGRect ) -> NSRect { return cgrect }
200
221
201
- public func NSRectFromCGRect ( cgrect : CGRect ) -> NSRect { NSUnimplemented ( ) }
222
+ public func NSRectToCGRect ( nsrect : NSRect ) -> CGRect { return nsrect }
202
223
203
- public func NSRectToCGRect ( nsrect : NSRect ) -> CGRect { NSUnimplemented ( ) }
224
+ public func NSPointFromCGPoint ( cgpoint : CGPoint ) -> NSPoint { return cgpoint }
204
225
205
- public func NSPointFromCGPoint ( cgpoint : CGPoint ) -> NSPoint { NSUnimplemented ( ) }
226
+ public func NSPointToCGPoint ( nspoint : NSPoint ) -> CGPoint { return nspoint }
206
227
207
- public func NSPointToCGPoint ( nspoint : NSPoint ) -> CGPoint { NSUnimplemented ( ) }
228
+ public func NSSizeFromCGSize ( cgsize : CGSize ) -> NSSize { return cgsize }
208
229
209
- public func NSSizeFromCGSize ( cgsize : CGSize ) -> NSSize { NSUnimplemented ( ) }
230
+ public func NSSizeToCGSize ( nssize : NSSize ) -> CGSize { return nssize }
210
231
211
- public func NSSizeToCGSize ( nssize : NSSize ) -> CGSize { NSUnimplemented ( ) }
232
+ public func NSEdgeInsetsMake ( top : CGFloat , _ left : CGFloat , _ bottom : CGFloat , _ right : CGFloat ) -> NSEdgeInsets { return NSEdgeInsets ( top : top , left : left , bottom : bottom , right : right ) }
212
233
213
- public func NSEdgeInsetsMake( top: CGFloat , _ left: CGFloat , _ bottom: CGFloat , _ right: CGFloat ) -> NSEdgeInsets { NSUnimplemented ( ) }
234
+ public func NSEqualPoints( aPoint: NSPoint , _ bPoint: NSPoint ) -> Bool { return aPoint == bPoint }
235
+ public func NSEqualSizes( aSize: NSSize , _ bSize: NSSize ) -> Bool { return aSize == bSize }
236
+ public func NSEqualRects( aRect: NSRect , _ bRect: NSRect ) -> Bool { return aRect == bRect }
237
+ public func NSIsEmptyRect( aRect: NSRect ) -> Bool { return ( aRect. size. width. native <= 0 ) || ( aRect. size. height. native <= 0 ) }
238
+ public func NSEdgeInsetsEqual( aInsets: NSEdgeInsets , _ bInsets: NSEdgeInsets ) -> Bool { return ( aInsets. top == bInsets. top) && ( aInsets. left == bInsets. left) && ( aInsets. bottom == bInsets. bottom) && ( aInsets. right == bInsets. right) }
214
239
215
- public func NSEqualPoints( aPoint: NSPoint , _ bPoint: NSPoint ) -> Bool { NSUnimplemented ( ) }
216
- public func NSEqualSizes( aSize: NSSize , _ bSize: NSSize ) -> Bool { NSUnimplemented ( ) }
217
- public func NSEqualRects( aRect: NSRect , _ bRect: NSRect ) -> Bool { NSUnimplemented ( ) }
218
- public func NSIsEmptyRect( aRect: NSRect ) -> Bool { NSUnimplemented ( ) }
219
- public func NSEdgeInsetsEqual( aInsets: NSEdgeInsets , _ bInsets: NSEdgeInsets ) -> Bool { NSUnimplemented ( ) }
240
+ public func NSInsetRect( aRect: NSRect , _ dX: CGFloat , _ dY: CGFloat ) -> NSRect {
241
+ let x = CGFloat ( aRect. origin. x. native + dX. native)
242
+ let y = CGFloat ( aRect. origin. y. native + dY. native)
243
+ let w = CGFloat ( aRect. size. width. native - ( dX. native * 2 ) )
244
+ let h = CGFloat ( aRect. size. height. native - ( dY. native * 2 ) )
245
+
246
+ return NSMakeRect ( x, y, w, h)
247
+ }
220
248
221
- public func NSInsetRect( aRect: NSRect , _ dX: CGFloat , _ dY: CGFloat ) -> NSRect { NSUnimplemented ( ) }
222
249
public func NSIntegralRect( aRect: NSRect ) -> NSRect { NSUnimplemented ( ) }
223
250
public func NSIntegralRectWithOptions( aRect: NSRect , _ opts: NSAlignmentOptions ) -> NSRect { NSUnimplemented ( ) }
224
251
0 commit comments