(** The Window module handles all aspects of the main window, menus,
dialogs and so on. *)
-type display_state = {
- window : GWindow.window;
- throbber_busy : unit -> unit;
- throbber_idle : unit -> unit;
- set_statusbar : string -> unit;
- clear_statusbar : unit -> unit;
- set_vmlist : string list -> unit;
- clear_vmlist : unit -> unit;
- clear_notebook : unit -> unit;
- filesystem : GPack.box;
- notebook : GPack.notebook;
-}
- (** This structure describes various variables and functions
- for the main window. It is returned from {!open_main_window}
- and passed around to various other functions. *)
+type window_state
-val open_main_window : unit -> display_state
+val open_main_window : unit -> window_state
(** Open the main Gtk window, set up the menus, callbacks and so on. *)
-val failure : display_state -> exn -> unit
+val failure : window_state -> exn -> unit
(** This is the global error handling function. It is invoked in
the main thread for failures in the slave thread (see
{!Slave.set_failure_hook}). *)
-val run_cli_request : display_state -> Cmdline.cli_request -> unit
- (** This function performs the {!Cmdline.cli_request} operation.
- The actual operation happens asynchronously after this function
- has returned. *)
+val throbber_busy : window_state -> unit -> unit
+val throbber_idle : window_state -> unit -> unit
+ (** These are callbacks from the slave thread (invoked in the main
+ thread) which are called whenever the throbber should be
+ animated/busy or idle. *)
+
+val progress : window_state -> int64 * int64 -> unit
+ (** This called whenever the progress bar should move. *)
+
+(*
+ val run_cli_request : window_state -> Cmdline.cli_request -> unit
+(** This function performs the {!Cmdline.cli_request} operation.
+ The actual operation happens asynchronously after this function
+ has returned. *)
+*)