1 (* Copyright (C) 2000-2003, Luca Padovani <luca.padovani@cs.unibo.it>,
2 * Claudio Sacerdoti Coen <sacerdot@cs.unibo.it>.
4 * This file is part of lablgtkmathview, the Ocaml binding
5 * for the GtkMathView widget.
7 * lablgtkmathview is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version 2
10 * of the License, or (at your option) any later version.
12 * lablgtkmathview is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with lablgtkmathview; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
21 * For details, send a mail to the author.
30 external gdome_element_of_boxed_option :
31 Gpointer.boxed option -> TElement.t =
32 "ml_gtk_math_view_gdome_element_of_boxed_option"
34 external gdome_element_option_of_boxed_option :
35 Gpointer.boxed option -> TElement.t option =
36 "ml_gtk_math_view_gdome_element_option_of_boxed_option"
38 module MathView = struct
41 let cast w : math_view obj = Object.try_cast w "GtkMathView"
42 external create : Gtk.adjustment optobj -> Gtk.adjustment optobj ->
43 math_view obj = "ml_gtk_math_view_new"
44 let create ~adjustmenth ~adjustmentv () =
45 create (optboxed adjustmenth) (optboxed adjustmentv)
46 external freeze : [>`math_view] obj -> unit =
47 "ml_gtk_math_view_freeze"
48 external thaw : [>`math_view] obj -> unit =
49 "ml_gtk_math_view_thaw"
50 external load_uri : [>`math_view] obj -> filename:string -> bool =
51 "ml_gtk_math_view_load_uri"
52 external load_doc : [>`math_view] obj -> dom:[> `Document] GdomeT.t -> bool =
53 "ml_gtk_math_view_load_doc"
54 external unload : [>`math_view] obj -> unit =
55 "ml_gtk_math_view_unload"
57 [>`math_view] obj -> [> `Element] GdomeT.t -> unit =
58 "ml_gtk_math_view_select"
60 [>`math_view] obj -> [> `Element] GdomeT.t -> unit =
61 "ml_gtk_math_view_unselect"
62 external is_selected :
63 [>`math_view] obj -> [> `Element] GdomeT.t -> bool =
64 "ml_gtk_math_view_is_selected"
65 external get_element_at :
66 [> `math_view] obj -> int -> int -> TElement.t option =
67 "ml_gtk_math_view_get_element_at"
68 external get_width : [>`math_view] obj -> int =
69 "ml_gtk_math_view_get_width"
70 external get_height : [>`math_view] obj -> int =
71 "ml_gtk_math_view_get_height"
72 external get_top : [>`math_view] obj -> (int * int) =
73 "ml_gtk_math_view_get_top"
74 external set_top : [>`math_view] obj -> int -> int -> unit =
75 "ml_gtk_math_view_set_top"
76 external set_adjustments : [>`math_view] obj -> Gtk.adjustment obj -> Gtk.adjustment obj -> unit =
77 "ml_gtk_math_view_set_adjustments"
78 external get_hadjustment : [>`math_view] obj -> Gtk.adjustment obj =
79 "ml_gtk_math_view_get_hadjustment"
80 external get_vadjustment : [>`math_view] obj -> Gtk.adjustment obj =
81 "ml_gtk_math_view_get_vadjustment"
82 external get_buffer : [>`math_view] obj -> Gdk.pixmap =
83 "ml_gtk_math_view_get_buffer"
84 external get_frame : [>`math_view] obj -> Gtk.frame obj =
85 "ml_gtk_math_view_get_frame"
86 external get_drawing_area : [>`math_view] obj -> Gtk.drawing_area obj =
87 "ml_gtk_math_view_get_drawing_area"
88 external set_font_size : [>`math_view] obj -> int -> unit =
89 "ml_gtk_math_view_set_font_size"
90 external get_font_size : [>`math_view] obj -> int =
91 "ml_gtk_math_view_get_font_size"
92 external set_anti_aliasing : [>`math_view] obj -> bool -> unit =
93 "ml_gtk_math_view_set_anti_aliasing"
94 external get_anti_aliasing : [>`math_view] obj -> bool =
95 "ml_gtk_math_view_get_anti_aliasing"
96 external set_transparency : [>`math_view] obj -> bool -> unit =
97 "ml_gtk_math_view_set_transparency"
98 external get_transparency : [>`math_view] obj -> bool =
99 "ml_gtk_math_view_get_transparency"
100 external set_log_verbosity : [>`math_view] obj -> int -> unit =
101 "ml_gtk_math_view_set_log_verbosity"
102 external get_log_verbosity : [>`math_view] obj -> int =
103 "ml_gtk_math_view_get_log_verbosity"
104 external export_to_postscript :
105 [>`math_view] obj -> width:int -> height:int -> x_margin:int -> y_margin:int -> disable_colors:bool -> filename:string -> bool =
106 "ml_gtk_math_view_export_to_postscript_bytecode" "ml_gtk_math_view_export_to_postscript_native"
107 external get_font_manager_type : [>`math_view] obj ->
108 [`font_manager_gtk | `font_manager_t1] =
109 "ml_gtk_math_view_get_font_manager_type"
110 external set_font_manager_type : [>`math_view] obj ->
111 fm_type:[`font_manager_gtk | `font_manager_t1] -> unit =
112 "ml_gtk_math_view_set_font_manager_type"
114 module Signals = struct
117 let click : ([>`math_view],_) t =
118 let marshal_click f _ =
120 [GtkArgv.POINTER element; GtkArgv.INT state] ->
121 f (gdome_element_option_of_boxed_option element) state
122 | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_click"
124 { name = "click"; classe = `math_view; marshaller = marshal_click }
126 let element_over : ([>`math_view],_) t =
127 let marshal_element_over f _ =
129 [GtkArgv.POINTER element; GtkArgv.INT state] ->
130 f (gdome_element_option_of_boxed_option element) state
131 | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_element_over"
133 { name = "element_over"; classe = `math_view;
134 marshaller = marshal_element_over }
136 let select_begin : ([>`math_view],_) t =
137 let marshal_select_begin f _ =
139 [GtkArgv.POINTER element; GtkArgv.INT state] ->
140 f (gdome_element_option_of_boxed_option element) state
141 | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_select_begin"
143 { name = "select_begin"; classe = `math_view;
144 marshaller = marshal_select_begin }
146 let select_over : ([>`math_view],_) t =
147 let marshal_select_over f _ =
149 [GtkArgv.POINTER element; GtkArgv.INT state] ->
150 f (gdome_element_option_of_boxed_option element) state
151 | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_select_over"
153 { name = "select_over"; classe = `math_view;
154 marshaller = marshal_select_over }
156 let select_end : ([>`math_view],_) t =
157 let marshal_select_end f _ =
159 [GtkArgv.POINTER element; GtkArgv.INT state] ->
160 f (gdome_element_option_of_boxed_option element) state
161 | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_select_end"
163 { name = "select_end"; classe = `math_view;
164 marshaller = marshal_select_end }
166 let select_abort : ([>`math_view],_) t =
167 let marshal_select_abort f _ =
170 | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_select_abort"
172 { name = "select_abort"; classe = `math_view;
173 marshaller = marshal_select_abort }