gtkprivate.pp 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. {
  2. }
  3. {****************************************************************************
  4. Interface
  5. ****************************************************************************}
  6. {$ifdef read_interface}
  7. type
  8. TGtkPrivateFlags = longint;
  9. const
  10. PRIVATE_GTK_USER_STYLE = 1 shl 0;
  11. PRIVATE_GTK_REDRAW_PENDING = 1 shl 1;
  12. PRIVATE_GTK_RESIZE_PENDING = 1 shl 2;
  13. PRIVATE_GTK_RESIZE_NEEDED = 1 shl 3;
  14. PRIVATE_GTK_LEAVE_PENDING = 1 shl 4;
  15. PRIVATE_GTK_HAS_SHAPE_MASK = 1 shl 5;
  16. PRIVATE_GTK_IN_REPARENT = 1 shl 6;
  17. PRIVATE_GTK_IS_OFFSCREEN = 1 shl 7;
  18. function GTK_PRIVATE_FLAGS(wid : PGtkWidget) : longint;
  19. function GTK_WIDGET_USER_STYLE(obj : PGtkWidget) : boolean;
  20. function GTK_WIDGET_REDRAW_PENDING(obj : PGtkWidget) : boolean;
  21. function GTK_CONTAINER_RESIZE_PENDING(obj : PGtkWidget) : boolean;
  22. function GTK_WIDGET_RESIZE_NEEDED(obj : PGtkWidget) : boolean;
  23. function GTK_WIDGET_LEAVE_PENDING(obj : PGtkWidget) : boolean;
  24. function GTK_WIDGET_HAS_SHAPE_MASK(obj : PGtkWidget) : boolean;
  25. function GTK_WIDGET_IN_REPARENT(obj : PGtkWidget) : boolean;
  26. function GTK_WIDGET_IS_OFFSCREEN(obj : PGtkWidget) : boolean;
  27. {$endif read_interface}
  28. {****************************************************************************
  29. Implementation
  30. ****************************************************************************}
  31. {$ifdef read_implementation}
  32. function GTK_PRIVATE_FLAGS(wid : PGtkWidget) : longint;
  33. begin
  34. GTK_PRIVATE_FLAGS:=wid^.private_flags;
  35. end;
  36. function GTK_WIDGET_USER_STYLE(obj : PGtkWidget) : boolean;
  37. begin
  38. GTK_WIDGET_USER_STYLE:=((GTK_PRIVATE_FLAGS(obj)) and longint(PRIVATE_GTK_USER_STYLE)) <> 0;
  39. end;
  40. function GTK_WIDGET_REDRAW_PENDING(obj : PGtkWidget) : boolean;
  41. begin
  42. GTK_WIDGET_REDRAW_PENDING:=((GTK_PRIVATE_FLAGS(obj)) and longint(PRIVATE_GTK_REDRAW_PENDING)) <> 0;
  43. end;
  44. function GTK_CONTAINER_RESIZE_PENDING(obj : PGtkWidget) : boolean;
  45. begin
  46. GTK_CONTAINER_RESIZE_PENDING:=((GTK_PRIVATE_FLAGS(obj)) and longint(PRIVATE_GTK_RESIZE_PENDING)) <> 0;
  47. end;
  48. function GTK_WIDGET_RESIZE_NEEDED(obj : PGtkWidget) : boolean;
  49. begin
  50. GTK_WIDGET_RESIZE_NEEDED:=((GTK_PRIVATE_FLAGS(obj)) and longint(PRIVATE_GTK_RESIZE_NEEDED)) <> 0;
  51. end;
  52. function GTK_WIDGET_LEAVE_PENDING(obj : PGtkWidget) : boolean;
  53. begin
  54. GTK_WIDGET_LEAVE_PENDING:=((GTK_PRIVATE_FLAGS(obj)) and longint(PRIVATE_GTK_LEAVE_PENDING)) <> 0;
  55. end;
  56. function GTK_WIDGET_HAS_SHAPE_MASK(obj : PGtkWidget) : boolean;
  57. begin
  58. GTK_WIDGET_HAS_SHAPE_MASK:=((GTK_PRIVATE_FLAGS(obj)) and longint(PRIVATE_GTK_HAS_SHAPE_MASK)) <> 0;
  59. end;
  60. function GTK_WIDGET_IN_REPARENT(obj : PGtkWidget) : boolean;
  61. begin
  62. GTK_WIDGET_IN_REPARENT:=((GTK_PRIVATE_FLAGS(obj)) and longint(PRIVATE_GTK_IN_REPARENT)) <> 0;
  63. end;
  64. function GTK_WIDGET_IS_OFFSCREEN(obj : PGtkWidget) : boolean;
  65. begin
  66. GTK_WIDGET_IS_OFFSCREEN:=((GTK_PRIVATE_FLAGS(obj)) and longint(PRIVATE_GTK_IS_OFFSCREEN)) <> 0;
  67. end;
  68. {$endif read_implementation}