diff options
Diffstat (limited to 'ide/coqide/session.mli')
| -rw-r--r-- | ide/coqide/session.mli | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/ide/coqide/session.mli b/ide/coqide/session.mli new file mode 100644 index 0000000000..9c0a8760c3 --- /dev/null +++ b/ide/coqide/session.mli @@ -0,0 +1,55 @@ +(************************************************************************) +(* * The Coq Proof Assistant / The Coq Development Team *) +(* v * Copyright INRIA, CNRS and contributors *) +(* <O___,, * (see version control and CREDITS file for authors & dates) *) +(* \VV/ **************************************************************) +(* // * This file is distributed under the terms of the *) +(* * GNU Lesser General Public License Version 2.1 *) +(* * (see LICENSE file for the text of the license) *) +(************************************************************************) + +(** A session is a script buffer + proof + messages, + interacting with a coqtop, and a few other elements around *) + +class type ['a] page = + object + inherit GObj.widget + method update : 'a -> unit + method on_update : callback:('a -> unit) -> unit + method data : 'a + end + +class type control = + object + method detach : unit -> unit + end + +type errpage = (int * string) list page +type jobpage = string CString.Map.t page + +type session = { + buffer : GText.buffer; + script : Wg_ScriptView.script_view; + proof : Wg_ProofView.proof_view; + messages : Wg_RoutedMessageViews.message_views_router; + segment : Wg_Segment.segment; + fileops : FileOps.ops; + coqops : CoqOps.ops; + coqtop : Coq.coqtop; + command : Wg_Command.command_window; + finder : Wg_Find.finder; + tab_label : GMisc.label; + errpage : errpage; + jobpage : jobpage; + mutable control : control; +} + +(** [create filename coqtop_args] *) +val create : string option -> string list -> session + +val kill : session -> unit + +val build_layout : session -> + GObj.widget option * GObj.widget option * GObj.widget + +val window_size : (int * int) ref |
