(module (qml core) * (import (scheme base)) (import (chicken gc)) (import (chicken string)) (import (qml lowlevel)) (import coops coops-primitive-objects coops-extras) ;; Enums (define-class () ((value accessor: value))) (define-class ()) (define (qevent-loop-process-event-flag value) (case value ((process-all-events:) (make 'value DosQEventLoopProcessEventFlagProcessAllEvents)) ((exclude-user-input-events:) (make 'value DosQEventLoopProcessEventFlagExcludeUserInputEvents)) ((process-exclude-socket-notifiers:) (make 'value DosQEventLoopProcessEventFlagProcessExcludeSocketNotifiers)) ((process-all-events-wait-for-more-events:) (make 'value DosQEventLoopProcessEventFlagProcessAllEventsWaitForMoreEvents)))) (define-class ()) (define (qt-connection-type value) (case value ((auto:) (make 'value DosQtConnectionTypeAutoConnection)) ((direct:) (make 'value DosQtConnectionTypeDirectConnection)) ((queued:) (make 'value DosQtConnectionTypeQueuedConnection)) ((blocking:) (make 'value DosQtConnectionTypeBlockingConnection)) ((unique:) (make 'value DosQtConnectionTypeUniqueConnection)))) ;; Helpers (define (application-dir-path) (dos_qcoreapplication_application_dir_path)) (define-method (process-events (flag )) (dos_qcoreapplication_process_events (value flag))) (define-method (process-events-timed (flag ) (timed )) (dos_qcoreapplication_process_events_timed (value flag) timed)) (define (gui-application-create) (dos_qguiapplication_create)) (define (gui-application-exec) (dos_qguiapplication_exec)) (define (gui-application-quit) (dos_qguiapplication_quit)) (define (gui-application-delete) (dos_qguiapplication_delete)) (define (qapplication-create) (dos_qapplication_create)) (define (qapplication-exec) (dos_qapplication_exec)) (define (qapplication-quit) (dos_qapplication_quit)) (define (qapplication-delete) (dos_qapplication_delete)) (define (qquickstyle-set-style style) (dos_qquickstyle_set_style style)) (define (qquickstyle-set-fallback-style style) (dos_qquickstyle_set_fallback_style style)) ;; Objects (define-class () ((ptr accessor: ptr))) (define-method (signal-emit (qo ) (name ) (paramcount ) (parameters )) (dos_qobject_signal_emit (ptr qo) name paramcount parameters)) (define-method (delete (qo )) (dos_qobject_delete (ptr qo))) (define-method (delete-later (qo )) (dos_qobject_deleteLater (ptr qo))) (define-class () ((ptr accessor: ptr))) (define-class ()) (define-method (base-url (context )) (dos_qqmlcontext_baseUrl (ptr context))) (define-method (set-property (context ) (name ) (value )) (dos_qqmlcontext_setcontextproperty (ptr context) name (ptr value))) (define-class () ((ptr accessor: ptr))) (define (new-QUrl url) (let ((qurl (make 'ptr (dos_qurl_create url 0)))) qurl)) (define-method (to-string (qurl )) (dos_qurl_to_string (ptr qurl))) (define-method (valid? (qurl )) (dos_qurl_isValid (ptr qurl))) (define-method (delete (qurl )) (dos_qurl_delete (ptr qurl))) (define-class () ((ptr accessor: ptr))) (define (new-QPixmap) (make 'ptr (dos_qpixmap_create))) (define (new-QPixmap width height) (make 'ptr (dos_qpixmap_create_width_and_height width height))) (define-method (copy (qpix )) (make 'ptr (dos_qpixmap_create_qpixmap (ptr qpix)))) (define-method (load (qpix ) (filepath ) (format )) (dos_qpixmap_load (ptr qpix) filepath format)) (define-method (load-from-data (qpix ) (data ) (len )) (dos_qpixmap_loadFromData (ptr qpix) data len)) (define-method (fill (qpix ) (r ) (g ) (b ) (a )) (dos_qpixmap_fill (ptr qpix) r g b a)) (define-method (assign (qpix ) (other )) (dos_qpixmap_assign (ptr qpix) (ptr other))) (define-method (is-null? (qpix )) (dos_qpixmap_isNull (ptr qpix))) (define-method (delete (qpix )) (dos_qpixmap_delete (ptr qpix))) (define-class () ((ptr accessor: ptr))) (define-method (new-QQuickImageProvider callback) (make 'ptr (dos_qquickimageprovider_create callback))) (define-method (delete (qip )) (dos_qquickimageprovider_delete (ptr qip))) (define-class ()) (define (new-QQmlApplicationEngine) (make 'ptr (dos_qqmlapplicationengine_create))) (define-method (load (appengine ) (filePath )) (dos_qqmlapplicationengine_load (ptr appengine) filePath)) (define-method (load-url (appengine ) (qurl )) (dos_qqmlapplicationengine_load_url (ptr appengine) (ptr qurl))) (define-method (load-data (appengine ) (data )) (dos_qqmlapplicationengine_load_data (ptr appengine) data)) (define-method (add-import-path (appengine ) (import-path )) (dos_qqmlapplicationengine_add_import_path (ptr appengine) import-path)) (define-method (context (appengine )) (make 'ptr (dos_qqmlapplicationengine_context (ptr appengine)))) (define-method (add-image-provider (appengine ) (provider-id ) (provider )) (dos_qqmlapplicationengine_addImageProvider (ptr appengine) provider-id (ptr provider))) (define-method (delete (appengine )) (dos_qqmlapplicationengine_delete (ptr appengine))) (define-class ()) (define (qquick-view-resize-mode value) (case value ((size-view-to-root-object:) (make 'value 0)) ((size-root-object-to-view:) (make 'value 1)))) (define-class ()) (define (new-QQuickView) (make 'ptr (dos_qquickview_create))) (define-method (show (qqv )) (dos_qquickview_show (ptr qqv))) (define-method (source (qqv )) (dos_qquickview_source (ptr qqv))) (define-method (set-source-url (qqv ) (qurl )) (dos_qquickview_set_source_url (ptr qqv) (ptr qurl))) (define-method (set-source (qqv ) (filename )) (dos_qquickview_set_source (ptr qqv) filename)) (define-method (set-resize-mode (qqv ) (mode )) (dos_qquickview_set_resize_mode (ptr qqv) (value mode))) (define-method (root-context (qqv )) (make 'ptr (dos_qquickview_rootContext (ptr qqv)))) (define-method (delete (qqv )) (dos_qquickview_delete (ptr qqv))) (define-class () ((ptr accessor: ptr))) (define-method (initialize-instance (qv )) (call-next-method) (set! (ptr qv) (dos_qvariant_create))) (define-method (qvariant (value )) (make 'ptr (dos_qvariant_create_int value))) (define-method (qvariant (value )) (make 'ptr (dos_qvariant_create_bool value))) (define-method (qvariant (value )) (make 'ptr (dos_qvariant_create_string value))) (define-method (qvariant (value )) (make 'ptr (dos_qvariant_create_qobject (ptr value)))) (define-method (qvariant (value )) (make 'ptr (dos_qvariant_create_float value))) (define-method (set (qv ) (value )) (dos_qvariant_setInt (ptr qv) value)) (define-method (set (qv ) (value )) (dos_qvariant_setBool (ptr qv) value)) (define-method (set (qv ) (value )) (dos_qvariant_setFloat (ptr qv) value)) (define-method (set (qv ) (value )) (dos_qvariant_setString (ptr qv) value)) (define-method (set (qv ) (value )) (dos_qvariant_setQObject (ptr qv) (ptr value))) (define-method (to (qv ) (target )) (case target ((integer:) (dos_qvariant_toInt (ptr qv))) ((boolean:) (dos_qvariant_toBool (ptr qv))) ((string:) (dos_qvariant_toString (ptr qv))) ((flonum:) (dos_qvariant_toFloat (ptr qv))) ((qobject:) (dos_qvariant_toQObject (ptr qv))))) (define-method (is-null? (qv )) (dos_qvariant_isnull (ptr qv))) (define-method (assign (qv ) (other )) (dos_qvariant_assign (ptr qv) (ptr other))) (define-method (copy (qv )) (make 'ptr (dos_qvariant_create_qvariant (ptr qv)))) (define-method (delete (qv )) (dos_qvariant_delete (ptr qv))) (define-class () ((ptr accessor: ptr))) (define (new-QMetaObject superclass, classname, signal-definitions, slot-definitions, property-definitions) (make 'ptr (dos_qmetaobject_create (ptr superclass) classname signal-definitions slot-definitions property-definitions))) (define-method (invoke-method (qmo ) (callback ) (data ) (connection-type )) (dos_qmetaobject_invoke_method (ptr qmo) callback data (value connection-type))) (define-method (delete (qmo )) (dos_qmetaobject_delete (ptr qmo))) (define-class ()) (define (qitem-data-role value) (case value ((display:) (make 'value 0)) ((decoration:) (make 'value 1)) ((edit:) (make 'value 2)) ((tool-tip:) (make 'value 3)) ((status-tip:) (make 'value 4)) ((whats-this:) (make 'value 5)) ((font:) (make 'value 6)) ((text-alignment:) (make 'value 7)) ((background:) (make 'value 8)) ((foreground:) (make 'value 9)) ((check-state:) (make 'value 10)) ((accessible-text:) (make 'value 11)) ((accessible-description:) (make 'value 12)) ((size-hint:) (make 'value 13)) ((initial-sort-order:) (make 'value 14)))) (define-class ()) (define (new-QAbstractItemModel callback meta-object dcallback callbacks) (dos_qabstractitemmodel_create callback (ptr meta-object) dcallback (ptr callbacks))) (define-method (set-data (qaim ) (qmi ) (qv ) (role )) (dos_qabstractitemmodel_setData (ptr qaim) (ptr qmi) (ptr qv) (value role))) (define-method (flags (qaim ) (qmi )) (dos_qabstractitemmodel_flags (ptr qaim) (ptr qmi))) (define-method (header-data)) (define-class ()) (define (new-QAbstractListModel callback qalm dcallback callbacks) (dos_qabstractlistmodel_create callback (ptr qalm) dcallback (ptr callbacks))) (define-method (index (qalm ) (row ) (column ) (parent )) (dos_qabstractlistmodel_index (ptr qalm) row column (ptr parent))) (define-method (parent (qalm ) (child )) (dos_qabstractlistmodel_parent (ptr qalm) (ptr child))) (define-method (column-count (qalm ) (parent )) (dos_qabstractlistmodel_columnCount (ptr qalm) (ptr parent))) (define-class ()) (define (new-QAbstractTableModel callback meta-object dcallback callbacks) (dos_qabstracttablemodel_create callback (ptr meta-object) dcallback (ptr callbacks))) (define-method (index (qatm ) (row ) (column ) (parent )) (dos_qabstracttablemodel_index (ptr qatm) row column (ptr parent))) (define-method (parent (qatm ) (child )) (dos_qabstracttablemodel_parent (ptr qatm) (ptr child))))