;; -*- scheme -*-
; object definitions ...
(define-object AddressEntry
  (in-module "Sugar")
  (parent "GtkEntry")
  (c-name "SugarAddressEntry")
  (gtype-id "SUGAR_TYPE_ADDRESS_ENTRY")
)

(define-object Browser
  (in-module "Sugar")
  (parent "GtkMozEmbed")
  (c-name "SugarBrowser")
  (gtype-id "SUGAR_TYPE_BROWSER")
)

(define-object KeyGrabber
  (in-module "Sugar")
  (parent "GObject")
  (c-name "SugarKeyGrabber")
  (gtype-id "SUGAR_TYPE_KEY_GRABBER")
)

(define-object TrayManager
  (in-module "Sugar")
  (parent "GObject")
  (c-name "SugarTrayManager")
  (gtype-id "SUGAR_TYPE_TRAY_MANAGER")
)

(define-object PushScroller
  (in-module "Sugar")
  (parent "GObject")
  (c-name "SugarPushScroller")
  (gtype-id "SUGAR_TYPE_PUSH_SCROLLER")
)

(define-object BrowserChandler
  (in-module "Sugar")
  (parent "GObject")
  (c-name "SugarBrowserChandler")
  (gtype-id "SUGAR_TYPE_BROWSER_CHANDLER")
)

;; Enumerations and flags ...


;; From sugar-address-entry.h

(define-function sugar_address_entry_get_type
  (c-name "sugar_address_entry_get_type")
  (return-type "GType")
)



;; From sugar-browser.h

(define-function sugar_browser_get_type
  (c-name "sugar_browser_get_type")
  (return-type "GType")
)

(define-function startup_browser
  (c-name "sugar_browser_startup")
  (return-type "gboolean")
)

(define-method grab_focus
  (of-object "SugarBrowser")
  (c-name "sugar_browser_grab_focus")
  (return-type "none")
)

(define-method create_window
  (of-object "SugarBrowser")
  (c-name "sugar_browser_create_window")
  (return-type "SugarBrowser*")
)

(define-virtual create_window
  (of-object "SugarBrowser")
  (c-name "sugar_browser_create_window")
  (return-type "SugarBrowser*")
)

;; From sugar-key-grabber.h

(define-function sugar_key_grabber_get_type
  (c-name "sugar_key_grabber_get_type")
  (return-type "GType")
)

(define-method grab
  (of-object "SugarKeyGrabber")
  (c-name "sugar_key_grabber_grab")
  (return-type "none")
  (parameters
    '("const-char*" "key")
  )
)

;; From sugar-tray-manager.h

(define-function tray_manager_get_type
  (c-name "sugar_tray_manager_get_type")
  (return-type "GType")
)

(define-function tray_manager_check_running
  (c-name "sugar_tray_manager_check_running")
  (return-type "gboolean")
  (parameters
    '("GdkScreen*" "screen")
  )
)

(define-function tray_manager_new
  (c-name "sugar_tray_manager_new")
  (is-constructor-of "SugarTrayManager")
  (return-type "SugarTrayManager*")
)

(define-method manage_screen
  (of-object "SugarTrayManager")
  (c-name "sugar_tray_manager_manage_screen")
  (return-type "gboolean")
  (parameters
    '("GdkScreen*" "screen")
  )
)

(define-method get_child_title
  (of-object "SugarTrayManager")
  (c-name "sugar_tray_manager_get_child_title")
  (return-type "char*")
  (parameters
    '("SugarTrayManagerChild*" "child")
  )
)

(define-method set_orientation
  (of-object "SugarTrayManager")
  (c-name "sugar_tray_manager_set_orientation")
  (return-type "none")
  (parameters
    '("GtkOrientation" "orientation")
  )
)

(define-method get_orientation
  (of-object "SugarTrayManager")
  (c-name "sugar_tray_manager_get_orientation")
  (return-type "GtkOrientation")
)

;; From sugar-push-scroller.h

(define-function push_scroller_get_type
  (c-name "sugar_push_scroller_get_type")
  (return-type "GType")
)

(define-method start
  (of-object "SugarPushScroller")
  (c-name "sugar_push_scroller_start")
  (return-type "none")
  (parameters
    '("SugarBrowser*" "browser")
    '("int" "x")
    '("int" "y")
  )
)

(define-method stop
  (of-object "SugarPushScroller")
  (c-name "sugar_push_scroller_stop")
  (return-type "none")
  (parameters
    '("guint32" "timestamp")
  )
)

;; From sugar-browser-chandler.h

(define-function sugar_browser_chandler_get_type
  (c-name "sugar_browser_chandler_get_type")
  (return-type "GType")
)

(define-function get_browser_chandler
  (c-name "sugar_get_browser_chandler")
  (return-type "SugarBrowserChandler*")
)