/packages/gtk1/src/gtk/gtkaccellabel.pp

https://github.com/slibre/freepascal · Puppet · 87 lines · 66 code · 21 blank · 0 comment · 0 complexity · 5320d5b646e9b9c9b789a20f96258872 MD5 · raw file

  1. {
  2. }
  3. {****************************************************************************
  4. Interface
  5. ****************************************************************************}
  6. {$ifdef read_interface}
  7. type
  8. PGtkAccelLabel = ^TGtkAccelLabel;
  9. TGtkAccelLabel = record
  10. _label : TGtkLabel;
  11. queue_id : guint;
  12. accel_padding : guint;
  13. accel_widget : PGtkWidget;
  14. accel_string : Pgchar;
  15. accel_string_width : guint16;
  16. end;
  17. PGtkAccelLabelClass = ^TGtkAccelLabelClass;
  18. TGtkAccelLabelClass = record
  19. parent_class : TGtkLabelClass;
  20. signal_quote1 : Pgchar;
  21. signal_quote2 : Pgchar;
  22. mod_name_shift : Pgchar;
  23. mod_name_control : Pgchar;
  24. mod_name_alt : Pgchar;
  25. mod_separator : Pgchar;
  26. accel_seperator : Pgchar;
  27. flag0 : {$ifdef win32}longint{$else}word{$endif};
  28. end;
  29. const
  30. bm_TGtkAccelLabelClass_latin1_to_char = $1;
  31. bp_TGtkAccelLabelClass_latin1_to_char = 0;
  32. type
  33. GTK_ACCEL_LABEL=PGtkAccelLabel;
  34. GTK_ACCEL_LABEL_CLASS=PGtkAccelLabelClass;
  35. function latin1_to_char(var a : TGtkAccelLabelClass) : guint;
  36. procedure set_latin1_to_char(var a : TGtkAccelLabelClass; __latin1_to_char : guint);
  37. function GTK_ACCEL_LABEL_TYPE:TGtkType;cdecl;external gtkdll name 'gtk_accel_label_get_type';
  38. function GTK_IS_ACCEL_LABEL(obj:pointer):boolean;
  39. function GTK_IS_ACCEL_LABEL_CLASS(klass:pointer):boolean;
  40. function gtk_accel_label_get_type:TGtkType;cdecl;external gtkdll name 'gtk_accel_label_get_type';
  41. function gtk_accel_label_new(thestring:Pgchar):PGtkWidget;cdecl;external gtkdll name 'gtk_accel_label_new';
  42. function gtk_accel_label_get_accel_width(accel_label:PGtkAccelLabel):guint;cdecl;external gtkdll name 'gtk_accel_label_get_accel_width';
  43. procedure gtk_accel_label_set_accel_widget(accel_label:PGtkAccelLabel; accel_widget:PGtkWidget);cdecl;external gtkdll name 'gtk_accel_label_set_accel_widget';
  44. function gtk_accel_label_refetch(accel_label:PGtkAccelLabel):gboolean;cdecl;external gtkdll name 'gtk_accel_label_refetch';
  45. {$endif read_interface}
  46. {****************************************************************************
  47. Implementation
  48. ****************************************************************************}
  49. {$ifdef read_implementation}
  50. function latin1_to_char(var a : TGtkAccelLabelClass) : guint;
  51. begin
  52. latin1_to_char:=(a.flag0 and bm_TGtkAccelLabelClass_latin1_to_char) shr bp_TGtkAccelLabelClass_latin1_to_char;
  53. end;
  54. procedure set_latin1_to_char(var a : TGtkAccelLabelClass; __latin1_to_char : guint);
  55. begin
  56. a.flag0:=a.flag0 or ((__latin1_to_char shl bp_TGtkAccelLabelClass_latin1_to_char) and bm_TGtkAccelLabelClass_latin1_to_char);
  57. end;
  58. function GTK_IS_ACCEL_LABEL(obj:pointer):boolean;
  59. begin
  60. GTK_IS_ACCEL_LABEL:=(obj<>nil) and GTK_IS_ACCEL_LABEL_CLASS(PGtkTypeObject(obj)^.klass);
  61. end;
  62. function GTK_IS_ACCEL_LABEL_CLASS(klass:pointer):boolean;
  63. begin
  64. GTK_IS_ACCEL_LABEL_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GTK_ACCEL_LABEL_TYPE);
  65. end;
  66. {$endif read_implementation}