gtkprogressbar.pp 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. {
  2. }
  3. {****************************************************************************
  4. Interface
  5. ****************************************************************************}
  6. {$ifdef read_interface}
  7. type
  8. TGtkProgressBarStyle = (GTK_PROGRESS_CONTINUOUS,GTK_PROGRESS_DISCRETE
  9. );
  10. TGtkProgressBarOrientation = (GTK_PROGRESS_LEFT_TO_RIGHT,GTK_PROGRESS_RIGHT_TO_LEFT,
  11. GTK_PROGRESS_BOTTOM_TO_TOP,GTK_PROGRESS_TOP_TO_BOTTOM
  12. );
  13. PGtkProgressBar = ^TGtkProgressBar;
  14. TGtkProgressBar = record
  15. progress : TGtkProgress;
  16. bar_style : TGtkProgressBarStyle;
  17. orientation : TGtkProgressBarOrientation;
  18. blocks : guint;
  19. in_block : gint;
  20. activity_pos : gint;
  21. activity_step : guint;
  22. activity_blocks : guint;
  23. flag0 : {$ifdef win32}longint{$else}word{$endif};
  24. end;
  25. const
  26. bm_TGtkProgressBar_activity_dir = $1;
  27. bp_TGtkProgressBar_activity_dir = 0;
  28. function activity_dir(var a : TGtkProgressBar) : guint;
  29. procedure set_activity_dir(var a : TGtkProgressBar; __activity_dir : guint);
  30. type
  31. PGtkProgressBarClass = ^TGtkProgressBarClass;
  32. TGtkProgressBarClass = record
  33. parent_class : TGtkProgressClass;
  34. end;
  35. Type
  36. GTK_PROGRESS_BAR=PGtkProgressBar;
  37. GTK_PROGRESS_BAR_CLASS=PGtkProgressBarClass;
  38. function GTK_PROGRESS_BAR_TYPE:TGtkType;cdecl;external gtkdll name 'gtk_progress_bar_get_type';
  39. function GTK_IS_PROGRESS_BAR(obj:pointer):boolean;
  40. function GTK_IS_PROGRESS_BAR_CLASS(klass:pointer):boolean;
  41. function gtk_progress_bar_get_type:TGtkType;cdecl;external gtkdll name 'gtk_progress_bar_get_type';
  42. function gtk_progress_bar_new:PGtkWidget;cdecl;external gtkdll name 'gtk_progress_bar_new';
  43. function gtk_progress_bar_new_with_adjustment(adjustment:PGtkAdjustment):PGtkWidget;cdecl;external gtkdll name 'gtk_progress_bar_new_with_adjustment';
  44. procedure gtk_progress_bar_set_bar_style(pbar:PGtkProgressBar; style:TGtkProgressBarStyle);cdecl;external gtkdll name 'gtk_progress_bar_set_bar_style';
  45. procedure gtk_progress_bar_set_discrete_blocks(pbar:PGtkProgressBar; blocks:guint);cdecl;external gtkdll name 'gtk_progress_bar_set_discrete_blocks';
  46. procedure gtk_progress_bar_set_activity_step(pbar:PGtkProgressBar; step:guint);cdecl;external gtkdll name 'gtk_progress_bar_set_activity_step';
  47. procedure gtk_progress_bar_set_activity_blocks(pbar:PGtkProgressBar; blocks:guint);cdecl;external gtkdll name 'gtk_progress_bar_set_activity_blocks';
  48. procedure gtk_progress_bar_set_orientation(pbar:PGtkProgressBar; orientation:TGtkProgressBarOrientation);cdecl;external gtkdll name 'gtk_progress_bar_set_orientation';
  49. procedure gtk_progress_bar_update(pbar:PGtkProgressBar; percentage:gfloat);cdecl;external gtkdll name 'gtk_progress_bar_update';
  50. {$endif read_interface}
  51. {****************************************************************************
  52. Implementation
  53. ****************************************************************************}
  54. {$ifdef read_implementation}
  55. function activity_dir(var a : TGtkProgressBar) : guint;
  56. begin
  57. activity_dir:=(a.flag0 and bm_TGtkProgressBar_activity_dir) shr bp_TGtkProgressBar_activity_dir;
  58. end;
  59. procedure set_activity_dir(var a : TGtkProgressBar; __activity_dir : guint);
  60. begin
  61. a.flag0:=a.flag0 or ((__activity_dir shl bp_TGtkProgressBar_activity_dir) and bm_TGtkProgressBar_activity_dir);
  62. end;
  63. function GTK_IS_PROGRESS_BAR(obj:pointer):boolean;
  64. begin
  65. GTK_IS_PROGRESS_BAR:=(obj<>nil) and GTK_IS_PROGRESS_BAR_CLASS(PGtkTypeObject(obj)^.klass);
  66. end;
  67. function GTK_IS_PROGRESS_BAR_CLASS(klass:pointer):boolean;
  68. begin
  69. GTK_IS_PROGRESS_BAR_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GTK_PROGRESS_BAR_TYPE);
  70. end;
  71. {$endif read_implementation}