InlineFunctions.inc 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. function NSMakeRange (loc: NSUInteger; len: NSUInteger): NSRange;
  2. begin
  3. result.location := loc;
  4. result.length := len;
  5. end;
  6. function NSMaxRange (range: NSRange): NSUInteger;
  7. begin
  8. result := range.location + range.length;
  9. end;
  10. function NSLocationInRange (loc: NSUInteger; range: NSRange): boolean;
  11. begin
  12. if (loc <= range.location + range.length) and (loc >= range.location) then
  13. result := true
  14. else
  15. result := false;
  16. end;
  17. function NSEqualRanges (range1, range2: NSRange): boolean;
  18. begin
  19. if (range1.location = range2.location) and (range1.length = range2.length) then
  20. result := true
  21. else
  22. result := false;
  23. end;
  24. function NSMakePoint (x: CGFloat; y: CGFloat): NSPoint;
  25. begin
  26. result.y := y;
  27. result.x := x;
  28. end;
  29. function NSMakeSize(w: CGFloat; h: CGFloat): NSSize;
  30. begin
  31. result.width := w;
  32. result.height := h;
  33. end;
  34. function NSMakeRect(x, y: CGFloat; w, h: CGFloat): NSRect;
  35. begin
  36. result.origin.x := x;
  37. result.origin.y := y;
  38. result.size.width := w;
  39. result.size.height := h;
  40. end;
  41. function NSMaxX (aRect: NSRect): CGFloat;
  42. begin
  43. result := aRect.origin.x + aRect.size.width;
  44. end;
  45. function NSMaxY (aRect: NSRect): CGFloat;
  46. begin
  47. result := aRect.origin.y + aRect.size.height;
  48. end;
  49. function NSMidX (aRect: NSRect): CGFloat;
  50. begin
  51. result := (aRect.origin.x + aRect.size.width) * 0.5 ;
  52. end;
  53. function NSMidY (aRect: NSRect): CGFloat;
  54. begin
  55. result := (aRect.origin.y + aRect.size.height) * 0.5 ;
  56. end;
  57. function NSMinX (aRect: NSRect): CGFloat;
  58. begin
  59. result := aRect.origin.x;
  60. end;
  61. function NSMinY (aRect: NSRect): CGFloat;
  62. begin
  63. result := aRect.origin.y;
  64. end;
  65. function NSWidth (aRect: NSRect): CGFloat;
  66. begin
  67. result := aRect.size.width;
  68. end;
  69. function NSHeight (aRect: NSRect): CGFloat;
  70. begin
  71. result := aRect.size.height;
  72. end;
  73. function NSRectFromCGRect (aRect: CGRect): NSRect;
  74. begin
  75. result.origin.x := aRect.origin.x;
  76. result.origin.y := aRect.origin.y;
  77. result.size.width := aRect.size.width;
  78. result.size.height := aRect.size.height;
  79. end;
  80. function NSRectToCGRect (aRect: NSRect): CGRect;
  81. begin
  82. result.origin.x := aRect.origin.x;
  83. result.origin.y := aRect.origin.y;
  84. result.size.width := aRect.size.width;
  85. result.size.height := aRect.size.height;
  86. end;
  87. function NSPointFromCGPoint (aPoint: CGPoint): NSPoint;
  88. begin
  89. result.y := aPoint.y;
  90. result.x := aPoint.x;
  91. end;
  92. function NSPointToCGPoint (aPoint: NSPoint): CGPoint;
  93. begin
  94. result.y := aPoint.y;
  95. result.x := aPoint.x;
  96. end;
  97. function NSSizeFromCGSize(aSize: CGSize): NSSize;
  98. begin
  99. result.width := aSize.width;
  100. result.height := aSize.height;
  101. end;
  102. function NSSizeToCGSize(aSize: NSSize): CGSize;
  103. begin
  104. result.width := aSize.width;
  105. result.height := aSize.height;
  106. end;
  107. function NSSTR (inString: PChar): NSString;
  108. begin
  109. Result := NSString(CFSTR(inString));
  110. end;