X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2FDEVEL%2Flablgtkmathview%2FgtkMathView.ml;h=2420c94c110f2c3ca6f2edee7d32e9a01decf82c;hb=1c7fb836e2af4f2f3d18afd0396701f2094265ff;hp=eed812d9e893f4c2b56fa1ba44162b7f99e2b72c;hpb=aa4eb8949201e7a7b54e3459ec0fe271e126049c;p=helm.git diff --git a/helm/DEVEL/lablgtkmathview/gtkMathView.ml b/helm/DEVEL/lablgtkmathview/gtkMathView.ml index eed812d9e..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. @@ -26,25 +27,13 @@ open Tags open GtkBase open Gpointer -external mDOMNode_of_boxed_option : - Gpointer.boxed option -> Minidom.mDOMNode = - "ml_gtk_math_view_mDOMNode_of_boxed_option" +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_option : - Gpointer.boxed option -> Minidom.mDOMNode option = - "ml_gtk_math_view_mDOMNode_option_of_boxed_option" - -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,22 +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 raw_load_tree : [>`math_view] obj -> Minidom.mDOMDoc -> bool = - "ml_gtk_math_view_load_tree" - let load_tree obj ~(dom:Ominidom.o_mDOMDoc) = - raw_load_tree obj dom#get_dom_doc + 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 = @@ -88,6 +83,8 @@ module MathView = struct "ml_gtk_math_view_get_buffer" 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 = @@ -96,10 +93,6 @@ 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 = @@ -117,46 +110,66 @@ module MathView = struct external set_font_manager_type : [>`math_view] obj -> fm_type:[`font_manager_gtk | `font_manager_t1] -> unit = "ml_gtk_math_view_set_font_manager_type" - external raw_get_element : [>`math_view] obj -> Minidom.mDOMNode option = - "ml_gtk_math_view_get_element" - let get_element obj = - o_mDOMNode_option_of_mDOMNode_option (raw_get_element obj) - external action_get_selected : [>`math_view] obj -> int = - "ml_gtk_math_view_action_get_selected" - external action_set_selected : [>`math_view] obj -> int -> unit = - "ml_gtk_math_view_action_set_selected" - external raw_get_action : [>`math_view] obj -> Minidom.mDOMNode option = - "ml_gtk_math_view_get_action" - let get_action obj = - o_mDOMNode_option_of_mDOMNode_option (raw_get_action obj) - external action_toggle : [>`math_view] obj -> unit = - "ml_gtk_math_view_action_toggle" module Signals = struct open GtkSignal - let clicked : ([>`math_view],_) t = - let marshal_clicked f _ = + 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 node] -> f (o_mDOMNode_of_mDOMNode (mDOMNode_of_boxed_option node)) - | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_clicked" + [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 selection_changed : ([>`math_view],_) t = - let marshal_selection_changed f _ = + let select_end : ([>`math_view],_) t = + let marshal_select_end f _ = function - [GtkArgv.POINTER node] -> f (o_mDOMNode_option_of_mDOMNode_option (mDOMNode_option_of_boxed_option node)) - | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_selection_changed" + [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 = "selection_changed"; marshaller = marshal_selection_changed } + { name = "select_end"; classe = `math_view; + marshaller = marshal_select_end } - let element_changed : ([>`math_view],_) t = - let marshal_element_changed f _ = + let select_abort : ([>`math_view],_) t = + let marshal_select_abort f _ = function - [GtkArgv.POINTER node] -> f (o_mDOMNode_option_of_mDOMNode_option (mDOMNode_option_of_boxed_option node)) - | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_element_changed" + [] -> f () + | _ -> invalid_arg "GtkMathView.MathView.Signals.marshal_select_abort" in - { name = "element_changed"; marshaller = marshal_element_changed } + { name = "select_abort"; classe = `math_view; + marshaller = marshal_select_abort } end end