atkeditabletext.inc 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. // included by atk.pp
  2. {
  3. AtkEditableText is used to support access in an "accessibility" context
  4. to editing features of editable text widgets.
  5. }
  6. {$IFDEF read_forward_definitions}
  7. {$ENDIF read_forward_definitions}
  8. //------------------------------------------------------------------------------
  9. {$IFDEF read_interface_types}
  10. PAtkEditableTextIface = ^TAtkEditableTextIface;
  11. TAtkEditableTextIface = record
  12. parent_interface : TGTypeInterface;
  13. set_run_attributes : function (text:PAtkEditableText; attrib_set:PAtkAttributeSet; start_offset:gint; end_offset:gint):gboolean; cdecl;
  14. set_text_contents : procedure (text:PAtkEditableText; _string:Pgchar); cdecl;
  15. insert_text : procedure (text:PAtkEditableText; _string:Pgchar; length:gint; position:Pgint); cdecl;
  16. copy_text : procedure (text:PAtkEditableText; start_pos:gint; end_pos:gint); cdecl;
  17. cut_text : procedure (text:PAtkEditableText; start_pos:gint; end_pos:gint); cdecl;
  18. delete_text : procedure (text:PAtkEditableText; start_pos:gint; end_pos:gint); cdecl;
  19. paste_text : procedure (text:PAtkEditableText; position:gint); cdecl;
  20. pad1 : TAtkFunction;
  21. pad2 : TAtkFunction;
  22. end;
  23. {$ENDIF read_interface_types}
  24. //------------------------------------------------------------------------------
  25. {$IFDEF read_interface_rest}
  26. function ATK_TYPE_EDITABLE_TEXT : GType;
  27. function ATK_IS_EDITABLE_TEXT(obj: pointer) : boolean;
  28. function ATK_EDITABLE_TEXT(obj: pointer) : PAtkEditableText;
  29. function ATK_EDITABLE_TEXT_GET_IFACE(obj: pointer) : PAtkEditableTextIface;
  30. function atk_editable_text_get_type:GType; cdecl; external atklib;
  31. function atk_editable_text_set_run_attributes(text:PAtkEditableText; attrib_set:PAtkAttributeSet; start_offset:gint; end_offset:gint):gboolean; cdecl; external atklib;
  32. procedure atk_editable_text_set_text_contents(text:PAtkEditableText; _string:Pgchar); cdecl; external atklib;
  33. procedure atk_editable_text_insert_text(text:PAtkEditableText; _string:Pgchar; length:gint; position:Pgint); cdecl; external atklib;
  34. procedure atk_editable_text_copy_text(text:PAtkEditableText; start_pos:gint; end_pos:gint); cdecl; external atklib;
  35. procedure atk_editable_text_cut_text(text:PAtkEditableText; start_pos:gint; end_pos:gint); cdecl; external atklib;
  36. procedure atk_editable_text_delete_text(text:PAtkEditableText; start_pos:gint; end_pos:gint); cdecl; external atklib;
  37. procedure atk_editable_text_paste_text(text:PAtkEditableText; position:gint); cdecl; external atklib;
  38. {$ENDIF read_interface_rest}
  39. //------------------------------------------------------------------------------
  40. {$IFDEF read_implementation}
  41. function ATK_TYPE_EDITABLE_TEXT : GType;
  42. begin
  43. ATK_TYPE_EDITABLE_TEXT:=atk_editable_text_get_type;
  44. end;
  45. function ATK_IS_EDITABLE_TEXT(obj: pointer) : boolean;
  46. begin
  47. ATK_IS_EDITABLE_TEXT:=G_TYPE_CHECK_INSTANCE_TYPE(obj,ATK_TYPE_EDITABLE_TEXT);
  48. end;
  49. function ATK_EDITABLE_TEXT(obj: pointer) : PAtkEditableText;
  50. begin
  51. ATK_EDITABLE_TEXT:=PAtkEditableText(G_TYPE_CHECK_INSTANCE_CAST(obj,ATK_TYPE_EDITABLE_TEXT));
  52. end;
  53. function ATK_EDITABLE_TEXT_GET_IFACE(obj: pointer) : PAtkEditableTextIface;
  54. begin
  55. ATK_EDITABLE_TEXT_GET_IFACE:=PAtkEditableTextIface(G_TYPE_INSTANCE_GET_INTERFACE(obj,ATK_TYPE_EDITABLE_TEXT));
  56. end;
  57. {$ENDIF read_implementation}