GtkBuilder.def 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. DEFINITION MODULE FOR "C" GtkBuilder ;
  2. (*
  3. m2-GTK4 - GtkBuilder: build a widget tree from UI description XML
  4. (".ui" files). Mapped onto <gtk/gtkbuild.h>.
  5. Two styles of API:
  6. * gtk_builder_new_from_file/_from_resource/_from_string are
  7. convenience constructors. They return NIL on failure but do not
  8. report the error message.
  9. * gtk_builder_add_from_* take a VAR error: GError, so callers can
  10. inspect parse failures:
  11. VAR err: GError;
  12. err := NIL;
  13. IF gtk_builder_add_from_string(b, ui, -1, err) = 0 THEN ... END;
  14. IF err # NIL THEN GtkUtils.ErrorMessage(err, msg); ... END;
  15. The length argument is gssize; pass -1 for a NUL-terminated
  16. string.
  17. Objects are fetched by id with gtk_builder_get_object (an opaque
  18. handle - cast/assign to the concrete type). GtkBuilder is a GObject:
  19. release it with GtkUtils.Unref / g_object_unref.
  20. The gtk_builder_value_from_string* functions are omitted because they
  21. need a GValue, which is not bound (yet).
  22. *)
  23. FROM SYSTEM IMPORT ADDRESS;
  24. FROM GError IMPORT GError;
  25. EXPORT UNQUALIFIED
  26. GtkBuilder, GtkBuilderError, GtkBuilderClosureFlags,
  27. GtkBuilderErrorInvalidTypeFunction, GtkBuilderErrorUnhandledTag,
  28. GtkBuilderErrorMissingAttribute, GtkBuilderErrorInvalidAttribute,
  29. GtkBuilderErrorInvalidTag, GtkBuilderErrorMissingPropertyValue,
  30. GtkBuilderErrorInvalidValue, GtkBuilderErrorVersionMismatch,
  31. GtkBuilderErrorDuplicateId, GtkBuilderErrorObjectTypeRefused,
  32. GtkBuilderErrorTemplateMismatch, GtkBuilderErrorInvalidProperty,
  33. GtkBuilderErrorInvalidSignal, GtkBuilderErrorInvalidId,
  34. GtkBuilderErrorInvalidFunction,
  35. GtkBuilderClosureSwapped,
  36. gtk_builder_new,
  37. gtk_builder_new_from_file, gtk_builder_new_from_resource,
  38. gtk_builder_new_from_string,
  39. gtk_builder_add_from_file, gtk_builder_add_from_resource,
  40. gtk_builder_add_from_string,
  41. gtk_builder_add_objects_from_file, gtk_builder_add_objects_from_resource,
  42. gtk_builder_add_objects_from_string,
  43. gtk_builder_get_object, gtk_builder_get_objects,
  44. gtk_builder_get_type_from_name,
  45. gtk_builder_expose_object,
  46. gtk_builder_get_current_object, gtk_builder_set_current_object,
  47. gtk_builder_set_translation_domain, gtk_builder_get_translation_domain,
  48. gtk_builder_get_scope, gtk_builder_set_scope,
  49. gtk_builder_create_closure, gtk_builder_extend_with_template,
  50. gtk_builder_error_quark;
  51. TYPE
  52. GtkBuilder = ADDRESS;
  53. GtkBuilderError = CARDINAL;
  54. GtkBuilderClosureFlags = CARDINAL;
  55. CONST
  56. GtkBuilderErrorInvalidTypeFunction = 0;
  57. GtkBuilderErrorUnhandledTag = 1;
  58. GtkBuilderErrorMissingAttribute = 2;
  59. GtkBuilderErrorInvalidAttribute = 3;
  60. GtkBuilderErrorInvalidTag = 4;
  61. GtkBuilderErrorMissingPropertyValue = 5;
  62. GtkBuilderErrorInvalidValue = 6;
  63. GtkBuilderErrorVersionMismatch = 7;
  64. GtkBuilderErrorDuplicateId = 8;
  65. GtkBuilderErrorObjectTypeRefused = 9;
  66. GtkBuilderErrorTemplateMismatch = 10;
  67. GtkBuilderErrorInvalidProperty = 11;
  68. GtkBuilderErrorInvalidSignal = 12;
  69. GtkBuilderErrorInvalidId = 13;
  70. GtkBuilderErrorInvalidFunction = 14;
  71. GtkBuilderClosureSwapped = 1; (* GTK_BUILDER_CLOSURE_SWAPPED *)
  72. (* GQuark gtk_builder_error_quark(void) *)
  73. PROCEDURE gtk_builder_error_quark () : CARDINAL;
  74. (* GtkBuilder *gtk_builder_new(void) *)
  75. PROCEDURE gtk_builder_new () : GtkBuilder;
  76. (* GtkBuilder *gtk_builder_new_from_file(const char *filename) *)
  77. PROCEDURE gtk_builder_new_from_file (filename: ARRAY OF CHAR) : GtkBuilder;
  78. (* GtkBuilder *gtk_builder_new_from_resource(const char *resource_path) *)
  79. PROCEDURE gtk_builder_new_from_resource (resource_path: ARRAY OF CHAR) : GtkBuilder;
  80. (* GtkBuilder *gtk_builder_new_from_string(const char *string, gssize length) *)
  81. PROCEDURE gtk_builder_new_from_string (string: ARRAY OF CHAR;
  82. length: LONGINT) : GtkBuilder;
  83. (* gboolean gtk_builder_add_from_file(GtkBuilder *builder,
  84. const char *filename, GError **error) *)
  85. PROCEDURE gtk_builder_add_from_file (builder: GtkBuilder;
  86. filename: ARRAY OF CHAR;
  87. VAR error: GError) : [ INTEGER ];
  88. (* gboolean gtk_builder_add_from_resource(GtkBuilder *builder,
  89. const char *resource_path,
  90. GError **error) *)
  91. PROCEDURE gtk_builder_add_from_resource (builder: GtkBuilder;
  92. resource_path: ARRAY OF CHAR;
  93. VAR error: GError) : [ INTEGER ];
  94. (* gboolean gtk_builder_add_from_string(GtkBuilder *builder,
  95. const char *buffer, gssize length,
  96. GError **error) *)
  97. PROCEDURE gtk_builder_add_from_string (builder: GtkBuilder;
  98. buffer: ARRAY OF CHAR;
  99. length: LONGINT;
  100. VAR error: GError) : [ INTEGER ];
  101. (* gboolean gtk_builder_add_objects_from_file(GtkBuilder *builder,
  102. const char *filename,
  103. const char **object_ids,
  104. GError **error) *)
  105. PROCEDURE gtk_builder_add_objects_from_file (builder: GtkBuilder;
  106. filename: ARRAY OF CHAR;
  107. object_ids: ADDRESS;
  108. VAR error: GError) : [ INTEGER ];
  109. (* gboolean gtk_builder_add_objects_from_resource(GtkBuilder *builder,
  110. const char *resource_path,
  111. const char **object_ids,
  112. GError **error) *)
  113. PROCEDURE gtk_builder_add_objects_from_resource (builder: GtkBuilder;
  114. resource_path: ARRAY OF CHAR;
  115. object_ids: ADDRESS;
  116. VAR error: GError) : [ INTEGER ];
  117. (* gboolean gtk_builder_add_objects_from_string(GtkBuilder *builder,
  118. const char *buffer,
  119. gssize length,
  120. const char **object_ids,
  121. GError **error) *)
  122. PROCEDURE gtk_builder_add_objects_from_string (builder: GtkBuilder;
  123. buffer: ARRAY OF CHAR;
  124. length: LONGINT;
  125. object_ids: ADDRESS;
  126. VAR error: GError) : [ INTEGER ];
  127. (* GObject *gtk_builder_get_object(GtkBuilder *builder, const char *name) *)
  128. PROCEDURE gtk_builder_get_object (builder: GtkBuilder;
  129. name: ARRAY OF CHAR) : ADDRESS;
  130. (* GSList *gtk_builder_get_objects(GtkBuilder *builder) *)
  131. PROCEDURE gtk_builder_get_objects (builder: GtkBuilder) : ADDRESS;
  132. (* GType gtk_builder_get_type_from_name(GtkBuilder *builder,
  133. const char *type_name) *)
  134. PROCEDURE gtk_builder_get_type_from_name (builder: GtkBuilder;
  135. type_name: ARRAY OF CHAR) : LONGCARD;
  136. (* void gtk_builder_expose_object(GtkBuilder *builder, const char *name,
  137. GObject *object) *)
  138. PROCEDURE gtk_builder_expose_object (builder: GtkBuilder;
  139. name: ARRAY OF CHAR; object: ADDRESS);
  140. (* GObject *gtk_builder_get_current_object(GtkBuilder *builder) *)
  141. PROCEDURE gtk_builder_get_current_object (builder: GtkBuilder) : ADDRESS;
  142. (* void gtk_builder_set_current_object(GtkBuilder *builder,
  143. GObject *current_object) *)
  144. PROCEDURE gtk_builder_set_current_object (builder: GtkBuilder;
  145. current_object: ADDRESS);
  146. (* void gtk_builder_set_translation_domain(GtkBuilder *builder,
  147. const char *domain) *)
  148. PROCEDURE gtk_builder_set_translation_domain (builder: GtkBuilder;
  149. domain: ARRAY OF CHAR);
  150. (* const char *gtk_builder_get_translation_domain(GtkBuilder *builder) *)
  151. PROCEDURE gtk_builder_get_translation_domain (builder: GtkBuilder) : ADDRESS;
  152. (* GtkBuilderScope *gtk_builder_get_scope(GtkBuilder *builder) *)
  153. PROCEDURE gtk_builder_get_scope (builder: GtkBuilder) : ADDRESS;
  154. (* void gtk_builder_set_scope(GtkBuilder *builder, GtkBuilderScope *scope) *)
  155. PROCEDURE gtk_builder_set_scope (builder: GtkBuilder; scope: ADDRESS);
  156. (* GClosure *gtk_builder_create_closure(GtkBuilder *builder,
  157. const char *function_name,
  158. GtkBuilderClosureFlags flags,
  159. GObject *object, GError **error) *)
  160. PROCEDURE gtk_builder_create_closure (builder: GtkBuilder;
  161. function_name: ARRAY OF CHAR;
  162. flags: GtkBuilderClosureFlags;
  163. object: ADDRESS;
  164. VAR error: GError) : ADDRESS;
  165. (* gboolean gtk_builder_extend_with_template(GtkBuilder *builder,
  166. GObject *object,
  167. GType template_type,
  168. const char *buffer,
  169. gssize length, GError **error) *)
  170. PROCEDURE gtk_builder_extend_with_template (builder: GtkBuilder;
  171. object: ADDRESS;
  172. template_type: LONGCARD;
  173. buffer: ARRAY OF CHAR;
  174. length: LONGINT;
  175. VAR error: GError) : [ INTEGER ];
  176. END GtkBuilder.