; -*- scheme -*-

;; pygtk's .defs files must be read for object, enum defs before this file

(define-object ZvtTerm (GtkWidget)
  (fields
   (GtkAdjustment adjustment)
   (int charwidth) (int charheight)))

(define-func zvt_term_new
  GtkWidget
  ())

(define-func zvt_term_new_with_size
  GtkWidget
  ((int cols) (int rows)))

(define-func zvt_term_reset
  none
  ((ZvtTerm term)
   (int hard)))

; zvt_term_feed

(define-func zvt_term_forkpty
  int
  ((ZvtTerm term)
   (int do_uwtmp_log)))

(define-func zvt_term_closepty
  int
  ((ZvtTerm term)))

(define-func zvt_term_killchild
  int
  ((ZvtTerm term)
   (int signal)))

(define-func zvt_term_bell
  none
  ((ZvtTerm term)))

(define-func zvt_term_set_scrollback
  none
  ((ZvtTerm term)
   (int lines)))

; zvt_term_get_buffer

(define-func zvt_term_set_font_name
  none
  ((ZvtTerm term)
   (string name)))

(define-func zvt_term_set_fonts
  none
  ((ZvtTerm term)
   (GdkFont font)
   (GdkFont font_bold)))

(define-func zvt_term_hide_pointer
  none
  ((ZvtTerm term)))

(define-func zvt_term_show_pointer
  none
  ((ZvtTerm term)))

(define-func zvt_term_set_bell
  none
  ((ZvtTerm term)
   (int state)))

(define-func zvt_term_get_bell
  bool
  ((ZvtTerm term)))

(define-func zvt_term_set_blink
  none
  ((ZvtTerm term)
   (int state)))

(define-func zvt_term_set_scroll_on_keystroke
  none
  ((ZvtTerm term)
   (int state)))

(define-func zvt_term_set_scroll_on_output
  none
  ((ZvtTerm term)
   (int state)))

; zvt_term_set_color_scheme

(define-func zvt_term_set_default_color_scheme
  none
  ((ZvtTerm term)))

(define-func zvt_term_set_del_key_swap
  none
  ((ZvtTerm term)
   (int state)))

(define-func zvt_term_set_wordclass
  none
  ((ZvtTerm term)
   (string class)))

(define-func zvt_term_match_add
  int
  ((ZvtTerm term)
   (string regex)
   (uint highlight_mask)
   (string data (null-ok)))) ; this last one is actually a void * pointer

(define-func zvt_term_match_clear
  none
  ((ZvtTerm term)
   (string regex)))

(define-func zvt_term_set_background
  none
  ((ZvtTerm term)
   (string pixmap_file)
   (int transparent)
   (int shaded)))

(define-func zvt_term_set_shadow_type
  none
  ((ZvtTerm term)
   (GtkShadowType type)))

(define-func zvt_term_set_size
  none
  ((ZvtTerm term)
   (uint width) (uint height)))


