rect.pp 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. (******************************************************************************
  2. *
  3. * Copyright (c) 1994-2000 Palm, Inc. or its subsidiaries.
  4. * All rights reserved.
  5. *
  6. * File: Rect.h
  7. *
  8. * Release: Palm OS SDK 4.0 (63220)
  9. *
  10. * Description:
  11. * This file defines rectangle structures and routines.
  12. *
  13. * History:
  14. * November 3, 1994 Created by Roger Flores
  15. * Name Date Description
  16. * ---- ---- -----------
  17. * bob 2/9/99 Use Coord abstraction, fix up consts
  18. *
  19. *****************************************************************************)
  20. {$MACRO ON}
  21. {$IFNDEF FPC_DOTTEDUNITS}
  22. unit rect;
  23. {$ENDIF FPC_DOTTEDUNITS}
  24. interface
  25. {$IFDEF FPC_DOTTEDUNITS}
  26. uses PalmApi.Palmos, PalmApi.Coretraps;
  27. {$ELSE FPC_DOTTEDUNITS}
  28. uses palmos, coretraps;
  29. {$ENDIF FPC_DOTTEDUNITS}
  30. type
  31. AbsRectType = record
  32. left: Coord;
  33. top: Coord;
  34. right: Coord;
  35. bottom: Coord;
  36. end;
  37. PointType = record
  38. x: Coord;
  39. y: Coord;
  40. end;
  41. PointPtr = ^PointType;
  42. RectangleType = record
  43. topLeft: PointType;
  44. extent: PointType;
  45. end;
  46. RectanglePtr = ^RectangleType;
  47. procedure RctSetRectangle(var rP: RectangleType; left, top, width, height: Coord); syscall sysTrapRctSetRectangle;
  48. procedure RctCopyRectangle({const} var srcRectP: RectangleType; var dstRectP: RectangleType); syscall sysTrapRctCopyRectangle;
  49. procedure RctInsetRectangle(var rP: RectangleType; insetAmt: Coord); syscall sysTrapRctInsetRectangle;
  50. procedure RctOffsetRectangle(var rP: RectangleType; deltaX, deltaY: Coord); syscall sysTrapRctOffsetRectangle;
  51. function RctPtInRectangle(x, y: Coord; {const} var rP: RectangleType): Boolean; syscall sysTrapRctPtInRectangle;
  52. procedure RctGetIntersection({const} var r1P, r2P: RectangleType; var r3P: RectangleType); syscall sysTrapRctGetIntersection;
  53. implementation
  54. end.