1 (* Copyright (C) 2000, Luca Padovani <luca.padovani@cs.unibo.it>.
3 * This file is part of lablgtkmathview, the Ocaml binding
4 * for the GtkMathView widget.
6 * lablgtkmathview is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version 2
9 * of the License, or (at your option) any later version.
11 * lablgtkmathview is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with lablgtkmathview; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20 * For details, send a mail to the author.
29 external gdome_element_of_boxed_option :
30 Gpointer.boxed option -> TElement.t =
31 "ml_gtk_math_view_gdome_element_of_boxed_option"
33 external gdome_element_option_of_boxed_option :
34 Gpointer.boxed option -> TElement.t option =
35 "ml_gtk_math_view_gdome_element_option_of_boxed_option"
37 module MathView = struct
40 let cast w : math_view obj = Object.try_cast w "GtkMathView"
41 external create : Gtk.adjustment optobj -> Gtk.adjustment optobj ->
42 math_view obj = "ml_gtk_math_view_new"
43 let create ~adjustmenth ~adjustmentv () =
44 create (optboxed adjustmenth) (optboxed adjustmentv)
45 external freeze : [>`math_view] obj -> unit =
46 "ml_gtk_math_view_freeze"
47 external thaw : [>`math_view] obj -> unit =
48 "ml_gtk_math_view_thaw"
49 external load_uri : [>`math_view] obj -> filename:string -> bool =
50 "ml_gtk_math_view_load_uri"
51 external load_doc : [>`math_view] obj -> dom:[> `Document] GdomeT.t -> bool =
52 "ml_gtk_math_view_load_doc"
53 external unload : [>`math_view] obj -> unit =
54 "ml_gtk_math_view_unload"
56 [>`math_view] obj -> [> `Element] GdomeT.t -> unit =
57 "ml_gtk_math_view_select"
59 [>`math_view] obj -> [> `Element] GdomeT.t -> unit =
60 "ml_gtk_math_view_unselect"
61 external is_selected :
62 [>`math_view] obj -> [> `Element] GdomeT.t -> bool =
63 "ml_gtk_math_view_is_selected"
64 external get_width : [>`math_view] obj -> int =
65 "ml_gtk_math_view_get_width"
66 external get_height : [>`math_view] obj -> int =
67 "ml_gtk_math_view_get_height"
68 external get_top : [>`math_view] obj -> (int * int) =
69 "ml_gtk_math_view_get_top"
70 external set_top : [>`math_view] obj -> int -> int -> unit =
71 "ml_gtk_math_view_set_top"
72 external set_adjustments : [>`math_view] obj -> Gtk.adjustment obj -> Gtk.adjustment obj -> unit =
73 "ml_gtk_math_view_set_adjustments"
74 external get_hadjustment : [>`math_view] obj -> Gtk.adjustment obj =
75 "ml_gtk_math_view_get_hadjustment"
76 external get_vadjustment : [>`math_view] obj -> Gtk.adjustment obj =
77 "ml_gtk_math_view_get_vadjustment"
78 external get_buffer : [>`math_view] obj -> Gdk.pixmap =
79 "ml_gtk_math_view_get_buffer"
80 external get_frame : [>`math_view] obj -> Gtk.frame obj =
81 "ml_gtk_math_view_get_frame"
82 external set_font_size : [>`math_view] obj -> int -> unit =
83 "ml_gtk_math_view_set_font_size"
84 external get_font_size : [>`math_view] obj -> int =
85 "ml_gtk_math_view_get_font_size"
86 external set_anti_aliasing : [>`math_view] obj -> bool -> unit =
87 "ml_gtk_math_view_set_anti_aliasing"
88 external get_anti_aliasing : [>`math_view] obj -> bool =
89 "ml_gtk_math_view_get_anti_aliasing"
90 external set_transparency : [>`math_view] obj -> bool -> unit =
91 "ml_gtk_math_view_set_transparency"
92 external get_transparency : [>`math_view] obj -> bool =
93 "ml_gtk_math_view_get_transparency"
94 external set_log_verbosity : [>`math_view] obj -> int -> unit =
95 "ml_gtk_math_view_set_log_verbosity"
96 external get_log_verbosity : [>`math_view] obj -> int =
97 "ml_gtk_math_view_get_log_verbosity"
98 external export_to_postscript :
99 [>`math_view] obj -> width:int -> height:int -> x_margin:int -> y_margin:int -> disable_colors:bool -> filename:string -> bool =
100 "ml_gtk_math_view_export_to_postscript_bytecode" "ml_gtk_math_view_export_to_postscript_native"
101 external get_font_manager_type : [>`math_view] obj ->
102 [`font_manager_gtk | `font_manager_t1] =
103 "ml_gtk_math_view_get_font_manager_type"
104 external set_font_manager_type : [>`math_view] obj ->
105 fm_type:[`font_manager_gtk | `font_manager_t1] -> unit =
106 "ml_gtk_math_view_set_font_manager_type"
108 module Signals = struct
111 let clicked : ([>`math_view],_) t =
112 let marshal_clicked f _ =
114 [GtkArgv.POINTER element] -> f (gdome_element_of_boxed_option element)
115 | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_clicked"
117 { name = "clicked"; classe = `math_view; marshaller = marshal_clicked }
119 let press_move : ([>`math_view],_) t =
120 let marshal_press_move f _ =
122 [GtkArgv.POINTER first; GtkArgv.POINTER last] ->
123 f (gdome_element_option_of_boxed_option first)
124 (gdome_element_option_of_boxed_option last)
125 | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_press_move"
127 { name = "press_move"; classe = `math_view;
128 marshaller = marshal_press_move }
130 let element_changed : ([>`math_view],_) t =
131 let marshal_element_changed f _ =
133 [GtkArgv.POINTER element] -> f (gdome_element_option_of_boxed_option element)
134 | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_element_changed"
136 { name = "element_changed"; classe = `math_view;
137 marshaller = marshal_element_changed }