--- /dev/null
+(* $Id$ *)
+
+let dialog ~title ~callback ?filename () =
+ let sel =
+ GWindow.file_selection ~title ~modal:true ?filename () in
+ sel#cancel_button#connect#clicked ~callback:sel#destroy;
+ sel#ok_button#connect#clicked ~callback:
+ begin fun () ->
+ let name = sel#get_filename in
+ sel#destroy ();
+ callback name
+ end;
+ sel#show ()