2006-11-23 James Livingston <doclivingston@gmail.com>
[rhythmbox.git] / bindings / python / rhythmdb.defs
blobdaab0232ce8e69a8d6a05785a62ace21e5a4a5aa
1 ;; -*- scheme -*-
2 ; object definitions ...
4 (define-interface QueryResults
5   (in-module "RhythmDB")
6   (c-name "RhythmDBQueryResults")
7   (gtype-id "RHYTHMDB_TYPE_QUERY_RESULTS")
10 (define-object RhythmDB
11   (in-module "RhythmDB")
12   (parent "GObject")
13   (c-name "RhythmDB")
14   (gtype-id "RHYTHMDB_TYPE_RHYTHMDB")
17 (define-boxed Entry
18   (in-module "RhythmDB")
19   (c-name "RhythmDBEntry")
20   (gtype-id "RHYTHMDB_TYPE_ENTRY")
23 (define-boxed EntryType
24   (in-module "RhythmDB")
25   (c-name "RhythmDBEntryType_")
26   (gtype-id "RHYTHMDB_TYPE_ENTRY_TYPE")
27   (fields
28     '("gpointer" "post_entry_create" (access readwrite))
29     '("gpointer" "pre_entry_destroy" (access readwrite))
30     '("gpointer" "get_playback_uri" (access readwrite))
31     '("char*" "can_sync_metadata" (access readwrite))
32     '("char*" "sync_metadata" (access readwrite))
33   )
36 (define-boxed Query
37   (in-module "RhythmDB")
38   (c-name "RhythmDBQuery")
39   (gtype-id "RHYTHMDB_TYPE_QUERY")
42 (define-object PropertyModel
43   (in-module "RhythmDB")
44   (parent "GObject")
45   (interface "GtkTreeModel")
46   (c-name "RhythmDBPropertyModel")
47   (gtype-id "RHYTHMDB_TYPE_PROPERTY_MODEL")
50 (define-object QueryModel
51   (in-module "RhythmDB")
52   (parent "GObject")
53   (interface "GtkTreeModel")
54   (interface "RhythmDBQueryResults")
55   (c-name "RhythmDBQueryModel")
56   (gtype-id "RHYTHMDB_TYPE_QUERY_MODEL")
60 ;; Enumerations and flags ...
62 (define-enum QueryType
63   (in-module "RhythmDB")
64   (c-name "RhythmDBQueryType")
65   (gtype-id "RHYTHMDB_TYPE_QUERY_TYPE")
66   (values
67     '("end" "RHYTHMDB_QUERY_END")
68     '("disjunction" "RHYTHMDB_QUERY_DISJUNCTION")
69     '("subquery" "RHYTHMDB_QUERY_SUBQUERY")
70     '("prop-equals" "RHYTHMDB_QUERY_PROP_EQUALS")
71     '("prop-like" "RHYTHMDB_QUERY_PROP_LIKE")
72     '("prop-not-like" "RHYTHMDB_QUERY_PROP_NOT_LIKE")
73     '("prop-prefix" "RHYTHMDB_QUERY_PROP_PREFIX")
74     '("prop-suffix" "RHYTHMDB_QUERY_PROP_SUFFIX")
75     '("prop-greater" "RHYTHMDB_QUERY_PROP_GREATER")
76     '("prop-less" "RHYTHMDB_QUERY_PROP_LESS")
77     '("prop-current-time-within" "RHYTHMDB_QUERY_PROP_CURRENT_TIME_WITHIN")
78     '("prop-current-time-not-within" "RHYTHMDB_QUERY_PROP_CURRENT_TIME_NOT_WITHIN")
79     '("prop-year-equals" "RHYTHMDB_QUERY_PROP_YEAR_EQUALS")
80     '("prop-year-greater" "RHYTHMDB_QUERY_PROP_YEAR_GREATER")
81     '("prop-year-less" "RHYTHMDB_QUERY_PROP_YEAR_LESS")
82   )
86 (define-enum PropType
87   (in-module "RhythmDB")
88   (c-name "RhythmDBPropType")
89   (gtype-id "RHYTHMDB_TYPE_PROP_TYPE")
90   (values
91     '("prop-type" "RHYTHMDB_PROP_TYPE")
92     '("prop-title" "RHYTHMDB_PROP_TITLE")
93     '("prop-genre" "RHYTHMDB_PROP_GENRE")
94     '("prop-artist" "RHYTHMDB_PROP_ARTIST")
95     '("prop-album" "RHYTHMDB_PROP_ALBUM")
96     '("prop-track-number" "RHYTHMDB_PROP_TRACK_NUMBER")
97     '("prop-disc-number" "RHYTHMDB_PROP_DISC_NUMBER")
98     '("prop-duration" "RHYTHMDB_PROP_DURATION")
99     '("prop-file-size" "RHYTHMDB_PROP_FILE_SIZE")
100     '("prop-location" "RHYTHMDB_PROP_LOCATION")
101     '("prop-mountpoint" "RHYTHMDB_PROP_MOUNTPOINT")
102     '("prop-mtime" "RHYTHMDB_PROP_MTIME")
103     '("prop-first-seen" "RHYTHMDB_PROP_FIRST_SEEN")
104     '("prop-last-seen" "RHYTHMDB_PROP_LAST_SEEN")
105     '("prop-rating" "RHYTHMDB_PROP_RATING")
106     '("prop-play-count" "RHYTHMDB_PROP_PLAY_COUNT")
107     '("prop-last-played" "RHYTHMDB_PROP_LAST_PLAYED")
108     '("prop-bitrate" "RHYTHMDB_PROP_BITRATE")
109     '("prop-date" "RHYTHMDB_PROP_DATE")
110     '("prop-track-gain" "RHYTHMDB_PROP_TRACK_GAIN")
111     '("prop-track-peak" "RHYTHMDB_PROP_TRACK_PEAK")
112     '("prop-album-gain" "RHYTHMDB_PROP_ALBUM_GAIN")
113     '("prop-album-peak" "RHYTHMDB_PROP_ALBUM_PEAK")
114     '("prop-mimetype" "RHYTHMDB_PROP_MIMETYPE")
115     '("prop-title-sort-key" "RHYTHMDB_PROP_TITLE_SORT_KEY")
116     '("prop-genre-sort-key" "RHYTHMDB_PROP_GENRE_SORT_KEY")
117     '("prop-artist-sort-key" "RHYTHMDB_PROP_ARTIST_SORT_KEY")
118     '("prop-album-sort-key" "RHYTHMDB_PROP_ALBUM_SORT_KEY")
119     '("prop-title-folded" "RHYTHMDB_PROP_TITLE_FOLDED")
120     '("prop-genre-folded" "RHYTHMDB_PROP_GENRE_FOLDED")
121     '("prop-artist-folded" "RHYTHMDB_PROP_ARTIST_FOLDED")
122     '("prop-album-folded" "RHYTHMDB_PROP_ALBUM_FOLDED")
123     '("prop-last-played-str" "RHYTHMDB_PROP_LAST_PLAYED_STR")
124     '("prop-hidden" "RHYTHMDB_PROP_HIDDEN")
125     '("prop-playback-error" "RHYTHMDB_PROP_PLAYBACK_ERROR")
126     '("prop-first-seen-str" "RHYTHMDB_PROP_FIRST_SEEN_STR")
127     '("prop-last-seen-str" "RHYTHMDB_PROP_LAST_SEEN_STR")
128     '("prop-search-match" "RHYTHMDB_PROP_SEARCH_MATCH")
129     '("prop-year" "RHYTHMDB_PROP_YEAR")
130     '("prop-status" "RHYTHMDB_PROP_STATUS")
131     '("prop-description" "RHYTHMDB_PROP_DESCRIPTION")
132     '("prop-subtitle" "RHYTHMDB_PROP_SUBTITLE")
133     '("prop-summary" "RHYTHMDB_PROP_SUMMARY")
134     '("prop-lang" "RHYTHMDB_PROP_LANG")
135     '("prop-copyright" "RHYTHMDB_PROP_COPYRIGHT")
136     '("prop-image" "RHYTHMDB_PROP_IMAGE")
137     '("prop-post-time" "RHYTHMDB_PROP_POST_TIME")
138     '("num-properties" "RHYTHMDB_NUM_PROPERTIES")
139   )
142 (define-enum PropertyModelColumn
143   (in-module "RhythmDB")
144   (c-name "RhythmDBPropertyModelColumn")
145   (gtype-id "RHYTHMDB_TYPE_PROPERTY_MODEL_COLUMN")
146   (values
147     '("title" "RHYTHMDB_PROPERTY_MODEL_COLUMN_TITLE")
148     '("priority" "RHYTHMDB_PROPERTY_MODEL_COLUMN_PRIORITY")
149     '("number" "RHYTHMDB_PROPERTY_MODEL_COLUMN_NUMBER")
150     '("last" "RHYTHMDB_PROPERTY_MODEL_COLUMN_LAST")
151   )
155 ;; From ../../rhythmdb/rhythmdb-query-results.h
157 (define-function rhythmdb_query_results_get_type
158   (c-name "rhythmdb_query_results_get_type")
159   (return-type "GType")
162 (define-method set_query
163   (of-object "RhythmDBQueryResults")
164   (c-name "rhythmdb_query_results_set_query")
165   (return-type "none")
166   (parameters
167     '("RhythmDBQuery*" "query")
168   )
171 (define-method add_results
172   (of-object "RhythmDBQueryResults")
173   (c-name "rhythmdb_query_results_add_results")
174   (return-type "none")
175   (parameters
176     '("GPtrArray*" "entries")
177   )
180 (define-method query_complete
181   (of-object "RhythmDBQueryResults")
182   (c-name "rhythmdb_query_results_query_complete")
183   (return-type "none")
187 ;; From ../../rhythmdb/rhythmdb.h
189 (define-function rhythmdb_query_get_type
190   (c-name "rhythmdb_query_get_type")
191   (return-type "GType")
194 (define-function rhythmdb_prop_get_type
195   (c-name "rhythmdb_prop_get_type")
196   (return-type "GType")
199 (define-method get_entry_type
200   (of-object "RhythmDBEntry")
201   (c-name "rhythmdb_entry_get_entry_type")
202   (return-type "RhythmDBEntryType_*")
205 (define-method shutdown
206   (of-object "RhythmDB")
207   (c-name "rhythmdb_shutdown")
208   (return-type "none")
211 (define-method load
212   (of-object "RhythmDB")
213   (c-name "rhythmdb_load")
214   (return-type "none")
217 (define-method save
218   (of-object "RhythmDB")
219   (c-name "rhythmdb_save")
220   (return-type "none")
223 (define-method save_async
224   (of-object "RhythmDB")
225   (c-name "rhythmdb_save_async")
226   (return-type "none")
229 (define-method start_action_thread
230   (of-object "RhythmDB")
231   (c-name "rhythmdb_start_action_thread")
232   (return-type "none")
235 (define-method query_preprocess
236   (of-object "RhythmDB")
237   (c-name "rhythmdb_query_preprocess")
238   (return-type "none")
239   (parameters
240     '("RhythmDBQuery*" "query")
241   )
244 (define-method query_serialize
245   (of-object "RhythmDB")
246   (c-name "rhythmdb_query_serialize")
247   (return-type "none")
248   (parameters
249     '("RhythmDBQuery*" "query")
250     '("xmlNodePtr" "node")
251   )
254 (define-method query_deserialize
255   (of-object "RhythmDB")
256   (c-name "rhythmdb_query_deserialize")
257   (return-type "RhythmDBQuery*")
258   (parameters
259     '("xmlNodePtr" "node")
260   )
263 (define-method entry_get
264   (of-object "RhythmDB")
265   (c-name "rhythmdb_entry_get")
266   (return-type "none")
267   (parameters
268     '("RhythmDBEntry*" "entry")
269     '("RhythmDBPropType" "propid")
270     '("GValue*" "val")
271   )
274 (define-method get_string
275   (of-object "RhythmDBEntry")
276   (c-name "rhythmdb_entry_get_string")
277   (return-type "const-char*")
278   (parameters
279     '("RhythmDBPropType" "propid")
280   )
283 (define-method get_pointer
284   (of-object "RhythmDBEntry")
285   (c-name "rhythmdb_entry_get_pointer")
286   (return-type "gpointer")
287   (parameters
288     '("RhythmDBPropType" "propid")
289   )
292 (define-method get_boolean
293   (of-object "RhythmDBEntry")
294   (c-name "rhythmdb_entry_get_boolean")
295   (return-type "gboolean")
296   (parameters
297     '("RhythmDBPropType" "propid")
298   )
301 (define-method get_uint64
302   (of-object "RhythmDBEntry")
303   (c-name "rhythmdb_entry_get_uint64")
304   (return-type "guint64")
305   (parameters
306     '("RhythmDBPropType" "propid")
307   )
310 (define-method get_ulong
311   (of-object "RhythmDBEntry")
312   (c-name "rhythmdb_entry_get_ulong")
313   (return-type "gulong")
314   (parameters
315     '("RhythmDBPropType" "propid")
316   )
319 (define-method get_double
320   (of-object "RhythmDBEntry")
321   (c-name "rhythmdb_entry_get_double")
322   (return-type "double")
323   (parameters
324     '("RhythmDBPropType" "propid")
325   )
328 (define-method get_playback_uri
329   (of-object "RhythmDBEntry")
330   (c-name "rhythmdb_entry_get_playback_uri")
331   (return-type "char*")
334 (define-function rhythmdb_get_type
335   (c-name "rhythmdb_get_type")
336   (return-type "GType")
339 (define-method commit
340   (of-object "RhythmDB")
341   (c-name "rhythmdb_commit")
342   (return-type "none")
345 (define-method entry_is_editable
346   (of-object "RhythmDB")
347   (c-name "rhythmdb_entry_is_editable")
348   (return-type "gboolean")
349   (parameters
350     '("RhythmDBEntry*" "entry")
351   )
354 (define-method entry_new
355   (of-object "RhythmDB")
356   (c-name "rhythmdb_entry_new")
357   (return-type "RhythmDBEntry*")
358   (parameters
359     '("RhythmDBEntryType_*" "type")
360     '("const-char*" "uri")
361   )
364 (define-method add_uri
365   (of-object "RhythmDB")
366   (c-name "rhythmdb_add_uri")
367   (return-type "none")
368   (parameters
369     '("const-char*" "uri")
370   )
373 (define-method add_uri_with_type
374   (of-object "RhythmDB")
375   (c-name "rhythmdb_add_uri_with_type")
376   (return-type "none")
377   (parameters
378     '("const-char*" "uri")
379     '("RhythmDBEntryType_*" "type")
380   )
383 (define-method set
384   (of-object "RhythmDB")
385   (c-name "rhythmdb_entry_set")
386   (return-type "none")
387   (parameters
388     '("RhythmDBEntry*" "entry")
389     '("RhythmDBPropType" "propid")
390     '("const-GValue*" "value")
391   )
394 (define-method entry_delete
395   (of-object "RhythmDB")
396   (c-name "rhythmdb_entry_delete")
397   (return-type "none")
398   (parameters
399     '("RhythmDBEntry*" "entry")
400   )
403 (define-method entry_delete_by_type
404   (of-object "RhythmDB")
405   (c-name "rhythmdb_entry_delete_by_type")
406   (return-type "none")
407   (parameters
408     '("RhythmDBEntryType_*" "type")
409   )
412 (define-method entry_move_to_trash
413   (of-object "RhythmDB")
414   (c-name "rhythmdb_entry_move_to_trash")
415   (return-type "none")
416   (parameters
417     '("RhythmDBEntry*" "entry")
418   )
421 (define-method entry_lookup_by_location
422   (of-object "RhythmDB")
423   (c-name "rhythmdb_entry_lookup_by_location")
424   (return-type "RhythmDBEntry*")
425   (parameters
426     '("const-char*" "uri")
427   )
430 (define-method evaluate_query
431   (of-object "RhythmDB")
432   (c-name "rhythmdb_evaluate_query")
433   (return-type "gboolean")
434   (parameters
435     '("RhythmDBQuery*" "query")
436     '("RhythmDBEntry*" "entry")
437   )
440 (define-method entry_foreach
441   (of-object "RhythmDB")
442   (c-name "rhythmdb_entry_foreach")
443   (return-type "none")
444   (parameters
445     '("GFunc" "func")
446     '("gpointer" "data")
447   )
450 (define-method do_full_query_parsed
451   (of-object "RhythmDB")
452   (c-name "rhythmdb_do_full_query_parsed")
453   (return-type "none")
454   (parameters
455     '("RhythmDBQueryResults*" "results")
456     '("RhythmDBQuery*" "query")
457   )
460 (define-method do_full_query_async_parsed
461   (of-object "RhythmDB")
462   (c-name "rhythmdb_do_full_query_async_parsed")
463   (return-type "none")
464   (parameters
465     '("RhythmDBQueryResults*" "results")
466     '("RhythmDBQuery*" "query")
467   )
470 (define-method query_parse
471   (of-object "RhythmDB")
472   (c-name "rhythmdb_query_parse")
473   (return-type "RhythmDBQuery*")
474   (varargs #t)
477 (define-method append
478   (of-object "RhythmDBQuery")
479   (c-name "rhythmdb_query_append")
480   (return-type "none")
481   (varargs #t)
484 (define-method append_prop_multiple
485   (of-object "RhythmDBQuery")
486   (c-name "rhythmdb_query_append_prop_multiple")
487   (return-type "none")
488   (parameters
489     '("RhythmDBPropType" "propid")
490     '("GList*" "items")
491   )
494 (define-method concatenate
495   (of-object "RhythmDBQuery")
496   (c-name "rhythmdb_query_concatenate")
497   (return-type "none")
498   (parameters
499     '("RhythmDBQuery*" "query2")
500   )
503 (define-method is_busy
504   (of-object "RhythmDB")
505   (c-name "rhythmdb_is_busy")
506   (return-type "gboolean")
509 (define-function rhythmdb_compute_status_normal
510   (c-name "rhythmdb_compute_status_normal")
511   (return-type "char*")
512   (parameters
513     '("gint" "n_songs")
514     '("glong" "duration")
515     '("guint64" "size")
516     '("const-char*" "singular")
517     '("const-char*" "plural")
518   )
521 (define-method get_property_type
522   (of-object "RhythmDB")
523   (c-name "rhythmdb_get_property_type")
524   (return-type "GType")
525   (parameters
526     '("RhythmDBPropType" "property_id")
527   )
530 (define-method entry_ref
531   (of-object "RhythmDB")
532   (c-name "rhythmdb_entry_ref")
533   (return-type "none")
534   (parameters
535     '("RhythmDBEntry*" "entry")
536   )
539 (define-method entry_unref
540   (of-object "RhythmDB")
541   (c-name "rhythmdb_entry_unref")
542   (return-type "none")
543   (parameters
544     '("RhythmDBEntry*" "entry")
545   )
548 (define-method entry_register_type
549   (of-object "RhythmDB")
550   (c-name "rhythmdb_entry_register_type")
551   (return-type "RhythmDBEntryType_*")
552   (parameters
553     '("const-char*" "name")
554   )
557 (define-method entry_type_get_by_name
558   (of-object "RhythmDB")
559   (c-name "rhythmdb_entry_type_get_by_name")
560   (return-type "RhythmDBEntryType_*")
561   (parameters
562     '("const-char*" "name")
563   )
566 (define-function rhythmdb_entry_song_get_type
567   (c-name "rhythmdb_entry_song_get_type")
568   (return-type "RhythmDBEntryType_*")
571 (define-function rhythmdb_entry_iradio_get_type
572   (c-name "rhythmdb_entry_iradio_get_type")
573   (return-type "RhythmDBEntryType_*")
576 (define-function rhythmdb_entry_podcast_post_get_type
577   (c-name "rhythmdb_entry_podcast_post_get_type")
578   (return-type "RhythmDBEntryType_*")
581 (define-function rhythmdb_entry_podcast_feed_get_type
582   (c-name "rhythmdb_entry_podcast_feed_get_type")
583   (return-type "RhythmDBEntryType_*")
586 (define-function rhythmdb_entry_import_error_get_type
587   (c-name "rhythmdb_entry_import_error_get_type")
588   (return-type "RhythmDBEntryType_*")
591 (define-function rhythmdb_entry_ignore_get_type
592   (c-name "rhythmdb_entry_ignore_get_type")
593   (return-type "RhythmDBEntryType_*")
596 (define-method entry_request_extra_metadata
597   (of-object "RhythmDB")
598   (c-name "rhythmdb_entry_request_extra_metadata")
599   (return-type "GValue*")
600   (parameters
601     '("RhythmDBEntry*" "entry")
602     '("const-gchar*" "property_name")
603   )
606 (define-method entry_gather_metadata
607   (of-object "RhythmDB")
608   (c-name "rhythmdb_entry_gather_metadata")
609   (return-type "GHashTable*")
610   (parameters
611     '("RhythmDBEntry*" "entry")
612   )
615 (define-method emit_entry_extra_metadata_notify
616   (of-object "RhythmDB")
617   (c-name "rhythmdb_emit_entry_extra_metadata_notify")
618   (return-type "none")
619   (parameters
620     '("RhythmDBEntry*" "entry")
621     '("const-gchar*" "property_name")
622     '("const-GValue*" "metadata")
623   )
627 ;; From ../../rhythmdb/rhythmdb-property-model.h
629 (define-function rhythmdb_property_model_get_type
630   (c-name "rhythmdb_property_model_get_type")
631   (return-type "GType")
634 (define-method property_model_new
635   (of-object "RhythmDB")
636   (c-name "rhythmdb_property_model_new")
637   (return-type "RhythmDBPropertyModel*")
638   (parameters
639     '("RhythmDBPropType" "propid")
640   )
643 (define-method iter_from_string
644   (of-object "RhythmDBPropertyModel")
645   (c-name "rhythmdb_property_model_iter_from_string")
646   (return-type "gboolean")
647   (parameters
648     '("const-char*" "name")
649     '("GtkTreeIter*" "iter")
650   )
653 (define-method enable_drag
654   (of-object "RhythmDBPropertyModel")
655   (c-name "rhythmdb_property_model_enable_drag")
656   (return-type "none")
657   (parameters
658     '("GtkTreeView*" "view")
659   )
662 ;; From ../../rhythmdb/rhythmdb-query-model.h
664 (define-function rhythmdb_query_model_get_type
665   (c-name "rhythmdb_query_model_get_type")
666   (return-type "GType")
669 (define-method query_model_new
670   (of-object "RhythmDB")
671   (c-name "rhythmdb_query_model_new")
672   (return-type "RhythmDBQueryModel*")
673   (parameters
674     '("RhythmDBQuery*" "query")
675     '("GCompareDataFunc" "sort_func" (default "NULL"))
676     '("gpointer" "sort_data" (default "NULL"))
677     '("gboolean" "sort_reverse" (default "FALSE"))
678   )
681 (define-method query_model_new_empty
682   (of-object "RhythmDB")
683   (c-name "rhythmdb_query_model_new_empty")
684   (return-type "RhythmDBQueryModel*")
687 (define-method chain
688   (of-object "RhythmDBQueryModel")
689   (c-name "rhythmdb_query_model_chain")
690   (return-type "none")
691   (parameters
692     '("RhythmDBQueryModel*" "base")
693     '("gboolean" "import_entries")
694   )
697 (define-method add_entry
698   (of-object "RhythmDBQueryModel")
699   (c-name "rhythmdb_query_model_add_entry")
700   (return-type "none")
701   (parameters
702     '("RhythmDBEntry*" "entry")
703     '("gint" "index")
704   )
707 (define-method remove_entry
708   (of-object "RhythmDBQueryModel")
709   (c-name "rhythmdb_query_model_remove_entry")
710   (return-type "gboolean")
711   (parameters
712     '("RhythmDBEntry*" "entry")
713   )
716 (define-method move_entry
717   (of-object "RhythmDBQueryModel")
718   (c-name "rhythmdb_query_model_move_entry")
719   (return-type "none")
720   (parameters
721     '("RhythmDBEntry*" "entry")
722     '("gint" "index")
723   )
726 (define-method get_size
727   (of-object "RhythmDBQueryModel")
728   (c-name "rhythmdb_query_model_get_size")
729   (return-type "guint64")
732 (define-method get_duration
733   (of-object "RhythmDBQueryModel")
734   (c-name "rhythmdb_query_model_get_duration")
735   (return-type "long")
738 (define-method entry_to_iter
739   (of-object "RhythmDBQueryModel")
740   (c-name "rhythmdb_query_model_entry_to_iter")
741   (return-type "gboolean")
742   (parameters
743     '("RhythmDBEntry*" "entry")
744     '("GtkTreeIter*" "iter")
745   )
748 (define-method tree_path_to_entry
749   (of-object "RhythmDBQueryModel")
750   (c-name "rhythmdb_query_model_tree_path_to_entry")
751   (return-type "RhythmDBEntry*")
752   (parameters
753     '("GtkTreePath*" "path")
754   )
757 (define-method iter_to_entry
758   (of-object "RhythmDBQueryModel")
759   (c-name "rhythmdb_query_model_iter_to_entry")
760   (return-type "RhythmDBEntry*")
761   (parameters
762     '("GtkTreeIter*" "entry_iter")
763   )
766 (define-method has_pending_changes
767   (of-object "RhythmDBQueryModel")
768   (c-name "rhythmdb_query_model_has_pending_changes")
769   (return-type "gboolean")
772 (define-method iter_to_entry
773   (of-object "RhythmDBQueryModel")
774   (c-name "rhythmdb_query_model_iter_to_entry")
775   (return-type "RhythmDBEntry*")
776   (parameters
777     '("GtkTreeIter*" "entry_iter")
778   )
781 (define-method get_next_from_entry
782   (of-object "RhythmDBQueryModel")
783   (c-name "rhythmdb_query_model_get_next_from_entry")
784   (return-type "RhythmDBEntry*")
785   (parameters
786     '("RhythmDBEntry*" "entry")
787   )
790 (define-method get_previous_from_entry
791   (of-object "RhythmDBQueryModel")
792   (c-name "rhythmdb_query_model_get_previous_from_entry")
793   (return-type "RhythmDBEntry*")
794   (parameters
795     '("RhythmDBEntry*" "entry")
796   )
799 (define-method compute_status_normal
800   (of-object "RhythmDBQueryModel")
801   (c-name "rhythmdb_query_model_compute_status_normal")
802   (return-type "char*")
803   (parameters
804     '("const-char*" "singular")
805     '("const-char*" "plural")
806   )
809 (define-method set_sort_order
810   (of-object "RhythmDBQueryModel")
811   (c-name "rhythmdb_query_model_set_sort_order")
812   (return-type "none")
813   (parameters
814     '("GCompareDataFunc" "sort_func")
815     '("gpointer" "sort_data" (default "NULL"))
816     '("gboolean" "sort_reverse" (default "FALSE"))
817   )
820 (define-method reapply_query
821   (of-object "RhythmDBQueryModel")
822   (c-name "rhythmdb_query_model_reapply_query")
823   (return-type "none")
824   (parameters
825     '("gboolean" "filter")
826   )
829 (define-function rhythmdb_query_model_location_sort_func
830   (c-name "rhythmdb_query_model_location_sort_func")
831   (return-type "gint")
832   (parameters
833     '("RhythmDBEntry*" "a")
834     '("RhythmDBEntry*" "b")
835     '("RhythmDBQueryModel*" "model")
836   )
839 (define-function rhythmdb_query_model_string_sort_func
840   (c-name "rhythmdb_query_model_string_sort_func")
841   (return-type "gint")
842   (parameters
843     '("RhythmDBEntry*" "a")
844     '("RhythmDBEntry*" "b")
845     '("RhythmDBQueryModel*" "model")
846   )
849 (define-function rhythmdb_query_model_title_sort_func
850   (c-name "rhythmdb_query_model_title_sort_func")
851   (return-type "gint")
852   (parameters
853     '("RhythmDBEntry*" "a")
854     '("RhythmDBEntry*" "b")
855     '("RhythmDBQueryModel*" "model")
856   )
859 (define-function rhythmdb_query_model_album_sort_func
860   (c-name "rhythmdb_query_model_album_sort_func")
861   (return-type "gint")
862   (parameters
863     '("RhythmDBEntry*" "a")
864     '("RhythmDBEntry*" "b")
865     '("RhythmDBQueryModel*" "model")
866   )
869 (define-function rhythmdb_query_model_artist_sort_func
870   (c-name "rhythmdb_query_model_artist_sort_func")
871   (return-type "gint")
872   (parameters
873     '("RhythmDBEntry*" "a")
874     '("RhythmDBEntry*" "b")
875     '("RhythmDBQueryModel*" "model")
876   )
879 (define-function rhythmdb_query_model_genre_sort_func
880   (c-name "rhythmdb_query_model_genre_sort_func")
881   (return-type "gint")
882   (parameters
883     '("RhythmDBEntry*" "a")
884     '("RhythmDBEntry*" "b")
885     '("RhythmDBQueryModel*" "model")
886   )
889 (define-function rhythmdb_query_model_track_sort_func
890   (c-name "rhythmdb_query_model_track_sort_func")
891   (return-type "gint")
892   (parameters
893     '("RhythmDBEntry*" "a")
894     '("RhythmDBEntry*" "b")
895     '("RhythmDBQueryModel*" "model")
896   )
899 (define-function rhythmdb_query_model_double_ceiling_sort_func
900   (c-name "rhythmdb_query_model_double_ceiling_sort_func")
901   (return-type "gint")
902   (parameters
903     '("RhythmDBEntry*" "a")
904     '("RhythmDBEntry*" "b")
905     '("RhythmDBQueryModel*" "model")
906   )
909 (define-function rhythmdb_query_model_ulong_sort_func
910   (c-name "rhythmdb_query_model_ulong_sort_func")
911   (return-type "gint")
912   (parameters
913     '("RhythmDBEntry*" "a")
914     '("RhythmDBEntry*" "b")
915     '("RhythmDBQueryModel*" "model")
916   )
919 (define-function rhythmdb_query_model_date_sort_func
920   (c-name "rhythmdb_query_model_date_sort_func")
921   (return-type "gint")
922   (parameters
923     '("RhythmDBEntry*" "a")
924     '("RhythmDBEntry*" "b")
925     '("RhythmDBQueryModel*" "model")
926   )