]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/matita/matitaMathView.mli
snapshot, notably:
[helm.git] / helm / matita / matitaMathView.mli
index 0ed1a4573725e0cc0336a0a8eca8bbe2b5870bc6..cdc9a8d65ead9e96fbb9eafadad7cea346b397ce 100644 (file)
  * http://helm.cs.unibo.it/
  *)
 
-val proof_viewer:
-  ?hadjustment:GData.adjustment ->
-  ?vadjustment:GData.adjustment ->
-  ?font_size:int ->
-  ?log_verbosity:int ->
-  ?width:int ->
-  ?height:int ->
-  ?packing:(GObj.widget -> unit) ->
-  ?show:bool ->
-  unit ->
-    MatitaTypes.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 clickable_math_view =
+  object
+    inherit GMathViewAux.multi_selection_math_view
+
+      (** set hyperlink callback. None disable hyperlink handling *)
+    method set_href_callback: (UriManager.uri -> unit) option -> unit
+  end
+
+class type sequent_viewer =
+  object
+    inherit clickable_math_view
+
+      (** @return the list of selected terms. Selections which are not terms are
+      * ignored *)
+    method get_selected_terms: Cic.term list
 
-val sequent_viewer:
+      (** @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 sequents_viewer =
+  object
+    method reset: unit
+    method load_sequents: Cic.metasenv -> unit
+    method goto_sequent: int -> unit  (* to be called _after_ load_sequents *)
+  end
+
+(** {2 Constructors} *)
+
+  (** meta constructor *)
+type 'widget constructor =
   ?hadjustment:GData.adjustment ->
   ?vadjustment:GData.adjustment ->
   ?font_size:int ->
@@ -45,11 +70,28 @@ val sequent_viewer:
   ?packing:(GObj.widget -> unit) ->
   ?show:bool ->
   unit ->
-    MatitaTypes.sequent_viewer
+    'widget
+
+val clickable_math_view:  clickable_math_view constructor
+
+val sequent_viewer:       sequent_viewer constructor
 
 val sequents_viewer:
   notebook:GPack.notebook ->
-  sequent_viewer:MatitaTypes.sequent_viewer ->
+  sequent_viewer:sequent_viewer ->
+  set_goal:(int -> unit) ->
+  unit ->
+    sequents_viewer
+
+val cicBrowser:
+  disambiguator:MatitaTypes.disambiguator ->
+  unit ->
+    MatitaTypes.cicBrowser
+
+val refresh_all_browsers: unit -> unit
+
+val mathViewer:
+  disambiguator:MatitaTypes.disambiguator ->
   unit ->
-    MatitaTypes.sequents_viewer
+    MatitaTypes.mathViewer