X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2FDEVEL%2Flablgtkmathview%2FgtkMathView.ml;h=2420c94c110f2c3ca6f2edee7d32e9a01decf82c;hb=962cc970cd9a2161f69b70aa01b6ee9e289d9778;hp=3eefbd6defab7af0913bba025176ae007635dbf0;hpb=4a97b3700b140024e1783ac12501ad5dfa4be9b5;p=helm.git diff --git a/helm/DEVEL/lablgtkmathview/gtkMathView.ml b/helm/DEVEL/lablgtkmathview/gtkMathView.ml index 3eefbd6de..2420c94c1 100644 --- a/helm/DEVEL/lablgtkmathview/gtkMathView.ml +++ b/helm/DEVEL/lablgtkmathview/gtkMathView.ml @@ -1,4 +1,5 @@ -(* Copyright (C) 2000, Luca Padovani . +(* Copyright (C) 2000-2003, Luca Padovani , + * Claudio Sacerdoti Coen . * * This file is part of lablgtkmathview, the Ocaml binding * for the GtkMathView widget. @@ -24,27 +25,15 @@ open Gtk open Gtk_mathview open Tags open GtkBase -open Misc +open Gpointer -external mDOMNode_of_boxed : - Misc.pointer -> Minidom.mDOMNode = - "ml_gtk_math_view_mDOMNode_of_boxed" +external gdome_element_of_boxed_option : + Gpointer.boxed option -> TElement.t = + "ml_gtk_math_view_gdome_element_of_boxed_option" -external mDOMNode_option_of_boxed : - Misc.pointer -> Minidom.mDOMNode option = - "ml_gtk_math_view_mDOMNode_option_of_boxed" - -let o_mDOMNode_of_mDOMNode node = new Ominidom.o_mDOMNode node - -let o_mDOMNode_option_of_mDOMNode_option = - function - | Some x -> Some (o_mDOMNode_of_mDOMNode x) - | None -> None - -let mDOMNode_option_of_o_mDOMNode_option = - function - | Some x -> Some (x#get_dom_node) - | None -> None +external gdome_element_option_of_boxed_option : + Gpointer.boxed option -> TElement.t option = + "ml_gtk_math_view_gdome_element_option_of_boxed_option" module MathView = struct exception NoSelection @@ -54,18 +43,28 @@ module MathView = struct math_view obj = "ml_gtk_math_view_new" let create ~adjustmenth ~adjustmentv () = create (optboxed adjustmenth) (optboxed adjustmentv) - external load : [>`math_view] obj -> filename:string -> bool = - "ml_gtk_math_view_load" + external freeze : [>`math_view] obj -> unit = + "ml_gtk_math_view_freeze" + external thaw : [>`math_view] obj -> unit = + "ml_gtk_math_view_thaw" + external load_uri : [>`math_view] obj -> filename:string -> bool = + "ml_gtk_math_view_load_uri" + external load_doc : [>`math_view] obj -> dom:[> `Document] GdomeT.t -> bool = + "ml_gtk_math_view_load_doc" external unload : [>`math_view] obj -> unit = "ml_gtk_math_view_unload" - external raw_get_selection : [>`math_view] obj -> Minidom.mDOMNode option = - "ml_gtk_math_view_get_selection" - let get_selection obj = - o_mDOMNode_option_of_mDOMNode_option (raw_get_selection obj) - external raw_set_selection : [>`math_view] obj -> Minidom.mDOMNode option -> unit= - "ml_gtk_math_view_set_selection" - let set_selection obj node = - raw_set_selection obj (mDOMNode_option_of_o_mDOMNode_option node) + external select : + [>`math_view] obj -> [> `Element] GdomeT.t -> unit = + "ml_gtk_math_view_select" + external unselect : + [>`math_view] obj -> [> `Element] GdomeT.t -> unit = + "ml_gtk_math_view_unselect" + external is_selected : + [>`math_view] obj -> [> `Element] GdomeT.t -> bool = + "ml_gtk_math_view_is_selected" + external get_element_at : + [> `math_view] obj -> int -> int -> TElement.t option = + "ml_gtk_math_view_get_element_at" external get_width : [>`math_view] obj -> int = "ml_gtk_math_view_get_width" external get_height : [>`math_view] obj -> int = @@ -82,8 +81,10 @@ module MathView = struct "ml_gtk_math_view_get_vadjustment" external get_buffer : [>`math_view] obj -> Gdk.pixmap = "ml_gtk_math_view_get_buffer" - external get_frame : [>`math_view] obj -> [`frame] obj = + external get_frame : [>`math_view] obj -> Gtk.frame obj = "ml_gtk_math_view_get_frame" + external get_drawing_area : [>`math_view] obj -> Gtk.drawing_area obj = + "ml_gtk_math_view_get_drawing_area" external set_font_size : [>`math_view] obj -> int -> unit = "ml_gtk_math_view_set_font_size" external get_font_size : [>`math_view] obj -> int = @@ -92,10 +93,10 @@ module MathView = struct "ml_gtk_math_view_set_anti_aliasing" external get_anti_aliasing : [>`math_view] obj -> bool = "ml_gtk_math_view_get_anti_aliasing" - external set_kerning : [>`math_view] obj -> bool -> unit = - "ml_gtk_math_view_set_kerning" - external get_kerning : [>`math_view] obj -> bool = - "ml_gtk_math_view_get_kerning" + external set_transparency : [>`math_view] obj -> bool -> unit = + "ml_gtk_math_view_set_transparency" + external get_transparency : [>`math_view] obj -> bool = + "ml_gtk_math_view_get_transparency" external set_log_verbosity : [>`math_view] obj -> int -> unit = "ml_gtk_math_view_set_log_verbosity" external get_log_verbosity : [>`math_view] obj -> int = @@ -113,28 +114,62 @@ module MathView = struct module Signals = struct open GtkSignal - let clicked : ([>`math_view],_) t = - let marshal_clicked f argv = - match GtkArgv.get_pointer argv ~pos:0 with - Some p -> f (o_mDOMNode_of_mDOMNode (mDOMNode_of_boxed (Obj.magic p))) - | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_clicked" + let click : ([>`math_view],_) t = + let marshal_click f _ = + function + [GtkArgv.POINTER element; GtkArgv.INT state] -> + f (gdome_element_option_of_boxed_option element) state + | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_click" + in + { name = "click"; classe = `math_view; marshaller = marshal_click } + + let element_over : ([>`math_view],_) t = + let marshal_element_over f _ = + function + [GtkArgv.POINTER element; GtkArgv.INT state] -> + f (gdome_element_option_of_boxed_option element) state + | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_element_over" + in + { name = "element_over"; classe = `math_view; + marshaller = marshal_element_over } + + let select_begin : ([>`math_view],_) t = + let marshal_select_begin f _ = + function + [GtkArgv.POINTER element; GtkArgv.INT state] -> + f (gdome_element_option_of_boxed_option element) state + | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_select_begin" + in + { name = "select_begin"; classe = `math_view; + marshaller = marshal_select_begin } + + let select_over : ([>`math_view],_) t = + let marshal_select_over f _ = + function + [GtkArgv.POINTER element; GtkArgv.INT state] -> + f (gdome_element_option_of_boxed_option element) state + | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_select_over" in - { name = "clicked"; marshaller = marshal_clicked } + { name = "select_over"; classe = `math_view; + marshaller = marshal_select_over } - let jump : ([>`math_view],_) t = - let marshal_jump f argv = - match GtkArgv.get_pointer argv ~pos:0 with - Some p -> f (o_mDOMNode_of_mDOMNode (mDOMNode_of_boxed (Obj.magic p))) - | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_jump" + let select_end : ([>`math_view],_) t = + let marshal_select_end f _ = + function + [GtkArgv.POINTER element; GtkArgv.INT state] -> + f (gdome_element_option_of_boxed_option element) state + | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_select_end" in - { name = "jump"; marshaller = marshal_jump } + { name = "select_end"; classe = `math_view; + marshaller = marshal_select_end } - let selection_changed : ([>`math_view],_) t = - let marshal_selection_changed f argv = - match GtkArgv.get_pointer argv ~pos:0 with - Some p ->f (o_mDOMNode_option_of_mDOMNode_option (mDOMNode_option_of_boxed (Obj.magic p))) - | None -> f None + let select_abort : ([>`math_view],_) t = + let marshal_select_abort f _ = + function + [] -> f () + | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_select_abort" in - { name = "selection_changed"; marshaller = marshal_selection_changed } + { name = "select_abort"; classe = `math_view; + marshaller = marshal_select_abort } end end