2
0

gtkstatusbar.pp 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. {
  2. }
  3. {****************************************************************************
  4. Interface
  5. ****************************************************************************}
  6. {$ifdef read_interface}
  7. type
  8. PGtkStatusbar = ^TGtkStatusbar;
  9. TGtkStatusbar = record
  10. parent_widget : TGtkHBox;
  11. frame : PGtkWidget;
  12. thelabel : PGtkWidget;
  13. messages : PGSList;
  14. keys : PGSList;
  15. seq_context_id : guint;
  16. seq_message_id : guint;
  17. end;
  18. PGtkStatusbarClass = ^TGtkStatusbarClass;
  19. TGtkStatusbarClass = record
  20. parent_class : TGtkHBoxClass;
  21. messages_mem_chunk : PGMemChunk;
  22. text_pushed : procedure (statusbar:PGtkStatusbar; context_id:guint; thetext:Pgchar); cdecl;
  23. text_popped : procedure (statusbar:PGtkStatusbar; context_id:guint; thetext:Pgchar); cdecl;
  24. end;
  25. PGtkStatusbarMsg = ^TGtkStatusbarMsg;
  26. TGtkStatusbarMsg = record
  27. thetext : Pgchar;
  28. context_id : guint;
  29. message_id : guint;
  30. end;
  31. Type
  32. GTK_STATUSBAR=PGtkStatusbar;
  33. GTK_STATUSBAR_CLASS=PGtkStatusbarClass;
  34. function GTK_STATUSBAR_TYPE:TGtkType;cdecl;external gtkdll name 'gtk_statusbar_get_type';
  35. function GTK_IS_STATUSBAR(obj:pointer):boolean;
  36. function GTK_IS_STATUSBAR_CLASS(klass:pointer):boolean;
  37. function gtk_statusbar_get_type:TGtkType;cdecl;external gtkdll name 'gtk_statusbar_get_type';
  38. function gtk_statusbar_new:PGtkWidget;cdecl;external gtkdll name 'gtk_statusbar_new';
  39. function gtk_statusbar_get_context_id(statusbar:PGtkStatusbar; context_description:Pgchar):guint;cdecl;external gtkdll name 'gtk_statusbar_get_context_id';
  40. function gtk_statusbar_push(statusbar:PGtkStatusbar; context_id:guint; thetext:Pgchar):guint;cdecl;external gtkdll name 'gtk_statusbar_push';
  41. procedure gtk_statusbar_pop(statusbar:PGtkStatusbar; context_id:guint);cdecl;external gtkdll name 'gtk_statusbar_pop';
  42. procedure gtk_statusbar_remove(statusbar:PGtkStatusbar; context_id:guint; message_id:guint);cdecl;external gtkdll name 'gtk_statusbar_remove';
  43. {$endif read_interface}
  44. {****************************************************************************
  45. Implementation
  46. ****************************************************************************}
  47. {$ifdef read_implementation}
  48. function GTK_IS_STATUSBAR(obj:pointer):boolean;
  49. begin
  50. GTK_IS_STATUSBAR:=(obj<>nil) and GTK_IS_STATUSBAR_CLASS(PGtkTypeObject(obj)^.klass);
  51. end;
  52. function GTK_IS_STATUSBAR_CLASS(klass:pointer):boolean;
  53. begin
  54. GTK_IS_STATUSBAR_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GTK_STATUSBAR_TYPE);
  55. end;
  56. {$endif read_implementation}