end
*)
+open Printf
+
open MatitaGeneratedGui
open MatitaGtkMisc
let toolbar = new toolBarWin ~file () in
let main = new mainWin ~file () in
let about = new aboutWin ~file () in
- let dialog = new genericDialog ~file () in
- let uriChoice = new uriChoiceDialog ~file () in
- let interpChoice = new interpChoiceDialog ~file () in
let fileSel = new fileSelectionWin ~file () in
let proof = new proofWin ~file () in
+ let check = new checkWin ~file () in
let keyBindingBoxes = (* event boxes which should receive global key events *)
- [ toolbar#toolBarEventBox; proof#proofWinEventBox ]
+ [ toolbar#toolBarEventBox; proof#proofWinEventBox; main#mainWinEventBox ]
+ in
+ let console =
+ MatitaConsole.console ~evbox:main#consoleEventBox
+ ~packing:main#scrolledConsole#add ()
in
- let uriChoices = new stringListModel uriChoice#uriChoiceTreeView in
object (self)
initializer
(* glade's check widgets *)
List.iter (fun w -> w#check_widgets ())
(let c w = (w :> <check_widgets: unit -> unit>) in
- [ c about; c dialog; c fileSel; c main; c proof; c toolbar;
- c uriChoice; c interpChoice ]);
+ [ c about; c fileSel; c main; c proof; c toolbar; c check ]);
(* show/hide commands *)
toggle_visibility toolbar#toolBarWin main#showToolBarMenuItem;
toggle_visibility proof#proofWin main#showProofMenuItem;
+ toggle_visibility check#checkWin main#showCheckMenuItem;
(* "global" key bindings *)
List.iter (fun (key, callback) -> self#addKeyBinding key callback)
[ GdkKeysyms._F3,
about#aboutWin#show ()));
ignore (about#aboutDismissButton#connect#clicked (fun _ ->
about#aboutWin#misc#hide ()));
+ about#aboutLabel#set_label (Pcre.replace ~pat:"@VERSION@"
+ ~templ:BuildTimeConf.version about#aboutLabel#label);
(* menus *)
List.iter (fun w -> w#misc#set_sensitive false)
[ main#saveMenuItem; main#saveAsMenuItem ];
main#helpMenu#set_right_justified true;
- (* uri choice *)
- ()
+ (* console *)
+ console#echo_message (sprintf "\tMatita version %s\n"
+ BuildTimeConf.version);
+ console#echo_prompt ();
+ console#misc#grab_focus ()
- method toolbar = toolbar
- method main = main
method about = about
- method dialog = dialog
- method uriChoice = uriChoice
- method interpChoice = interpChoice
+ method check = check
+ method console = console
method fileSel = fileSel
+ method main = main
method proof = proof
+ method toolbar = toolbar
+
+ method newUriDialog () =
+ let dialog = new uriChoiceDialog ~file () in
+ dialog#check_widgets ();
+ dialog
+
+ method newInterpDialog () =
+ let dialog = new interpChoiceDialog ~file () in
+ dialog#check_widgets ();
+ dialog
+
+ method newConfirmationDialog () =
+ let dialog = new confirmationDialog ~file () in
+ dialog#check_widgets ();
+ dialog
+
+ method newEmptyDialog () =
+ let dialog = new emptyDialog ~file () in
+ dialog#check_widgets ();
+ dialog
method private addKeyBinding key callback =
List.iter (fun evbox -> add_key_binding key callback evbox)
ignore (main#quitMenuItem#connect#activate callback);
self#addKeyBinding GdkKeysyms._q callback
- method uriChoices = uriChoices
+ method setPhraseCallback = console#set_callback
end
+let instance =
+ let gui = lazy (new gui (Helm_registry.get "matita.glade_file")) in
+ fun () -> Lazy.force gui
+