X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fmatita%2FmatitaMathView.mli;h=ed57b886c44c7af09a476918b81cde2b50f599b3;hb=842919f2f8ee71a5301ad962220569450340a9e9;hp=6e43d130bb90889f3384335a01e3fcd9f853815a;hpb=1fa0472bfe2ed04c7adf166fa48df687f0022226;p=helm.git diff --git a/helm/matita/matitaMathView.mli b/helm/matita/matitaMathView.mli index 6e43d130b..ed57b886c 100644 --- a/helm/matita/matitaMathView.mli +++ b/helm/matita/matitaMathView.mli @@ -1,4 +1,4 @@ -(* Copyright (C) 2004, HELM Team. +(* Copyright (C) 2004-2005, HELM Team. * * This file is part of HELM, an Hypertextual, Electronic * Library of Mathematics, developed at the Computer Science @@ -23,7 +23,55 @@ * http://helm.cs.unibo.it/ *) -val proof_viewer : + (** multi selection gtkMathView which handle mactions and hyperlinks. Mactions + * are handled internally. Hyperlinks are handled by calling an user provided + * callback *) +class type clickableMathView = + object + inherit GMathViewAux.multi_selection_math_view + + (** set hyperlink callback. None disable hyperlink handling *) + method set_href_callback: (string -> unit) option -> unit + + method update_font_size: unit + end + +class type sequentViewer = + object + inherit clickableMathView + + (** @return the list of selected terms. Selections which are not terms are + * ignored *) + method get_selected_terms: Cic.term list + + (** @return the list of selected hypothese. Selections which are not + * hypotheses are ignored *) + method get_selected_hypotheses: Cic.hypothesis list + + (** load a sequent and render it into parent widget *) + method load_sequent: Cic.metasenv -> int -> unit + end + +class type sequentsViewer = + object + method reset: unit + method load_sequents: ProofEngineTypes.status -> unit + method goto_sequent: int -> unit (* to be called _after_ load_sequents *) + end + +exception Browser_failure of string + +class type cicBrowser = +object + method load: MatitaTypes.mathViewer_entry -> unit + (* method loadList: string list -> MatitaTypes.mathViewer_entry -> unit *) + method loadInput: string -> unit +end + +(** {2 Constructors} *) + + (** meta constructor *) +type 'widget constructor = ?hadjustment:GData.adjustment -> ?vadjustment:GData.adjustment -> ?font_size:int -> @@ -33,17 +81,33 @@ val proof_viewer : ?packing:(GObj.widget -> unit) -> ?show:bool -> unit -> - MatitaTypes.proof_viewer + 'widget -val sequent_viewer : - ?hadjustment:GData.adjustment -> - ?vadjustment:GData.adjustment -> - ?font_size:int -> - ?log_verbosity:int -> - ?width:int -> - ?height:int -> - ?packing:(GObj.widget -> unit) -> - ?show:bool -> +val clickableMathView: clickableMathView constructor + +val sequentViewer: sequentViewer constructor + +val sequentsViewer: + notebook:GPack.notebook -> + sequentViewer:sequentViewer -> unit -> - MatitaTypes.sequent_viewer + sequentsViewer + +val cicBrowser: unit -> cicBrowser + +(** mathview wide functions *) + +val increase_font_size: unit -> unit +val decrease_font_size: unit -> unit +val reset_font_size: unit -> unit + +val refresh_all_browsers: unit -> unit (** act on all cicBrowsers *) +val update_font_sizes: unit -> unit + +(** {2 singleton instances} *) + +val sequentViewer_instance: unit -> sequentViewer +val sequentsViewer_instance: unit -> sequentsViewer + +val mathViewer: unit -> MatitaTypes.mathViewer