You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
2.1 KiB

  1. using System;
  2. using System.Runtime.InteropServices;
  3. namespace Apewer.Internals.Interop
  4. {
  5. [System.Security.SecuritySafeCritical]
  6. internal class Gdi32
  7. {
  8. /// <summary>
  9. ///
  10. /// </summary>
  11. /// <param name="hdc"></param>
  12. /// <returns></returns>
  13. [DllImport("gdi32.dll", ExactSpelling = true, SetLastError = true)]
  14. public static extern IntPtr CreateCompatibleDC(IntPtr hdc);
  15. /// <summary>
  16. ///
  17. /// </summary>
  18. /// <param name="x1"></param>
  19. /// <param name="y1"></param>
  20. /// <param name="x2"></param>
  21. /// <param name="y2"></param>
  22. /// <param name="x3"></param>
  23. /// <param name="y3"></param>
  24. /// <returns></returns>
  25. [DllImport("gdi32.dll")]
  26. public static extern int CreateRoundRectRgn(int x1, int y1, int x2, int y2, int x3, int y3);
  27. /// <summary>
  28. ///
  29. /// </summary>
  30. /// <param name="hdc"></param>
  31. /// <returns></returns>
  32. [DllImport("gdi32.dll", ExactSpelling = true, SetLastError = true)]
  33. public static extern int DeleteDC(IntPtr hdc);
  34. /// <summary>
  35. ///
  36. /// </summary>
  37. /// <param name="hobj"></param>
  38. /// <returns></returns>
  39. [DllImport("gdi32.dll", ExactSpelling = true, SetLastError = true)]
  40. public static extern int DeleteObject(IntPtr hobj);
  41. /// <summary>
  42. ///
  43. /// </summary>
  44. /// <param name="lpxform"></param>
  45. /// <param name="ncount"></param>
  46. /// <param name="rgndata"></param>
  47. /// <returns></returns>
  48. [DllImport("gdi32.dll", ExactSpelling = true, SetLastError = true)]
  49. public static extern IntPtr ExtCreateRegion(IntPtr lpxform, uint ncount, IntPtr rgndata);
  50. /// <summary>
  51. ///
  52. /// </summary>
  53. /// <param name="hdc"></param>
  54. /// <param name="hobj"></param>
  55. /// <returns></returns>
  56. [DllImport("gdi32.dll", ExactSpelling = true)]
  57. public static extern IntPtr SelectObject(IntPtr hdc, IntPtr hobj);
  58. }
  59. }