to this trick:
http://mail.gnome.org/archives/gtk-app-devel-list/2003-May/msg00241.html *)
-val filetree : string -> Slave.rw_flag -> GTree.view
- (** [filetree dev rw] creates a new filetree widget.
+type t
+ (** A filetree widget. Actually an opaque object which contains the
+ widget and other data. Use the accessors below. *)
- [dev] is the device.
- [rw] is the RO|RW flag. *)
+val create : packing:(GObj.widget -> unit) -> unit -> t
+ (** Create a new filetree widget (empty).
+
+ [~packing] is the required packing for the widget. *)
+
+val clear : t -> unit
+ (** Clear out all rows in existing widget. *)
+
+val add : t -> string -> Slave.inspection_data -> unit
+ (** [add t name data] clears out the widget and adds the operating
+ system and/or filesystems described by the [data] struct.
+
+ The [name] parameter should be some host-side (verifiable) name,
+ not any untrusted string from the guest; usually we pass the
+ name of the guest from libvirt here. *)