%------------------------------------------------------------------------------%
% Copyright (C) 1999 INRIA/INSA.
--- /soft/eclipse/eclipse4.1/lib_pd/opium_light/interface.op	Sat Feb 20 16:09:16 1999
+++ interface.op	Thu Nov  4 09:01:11 1999
@@ -16,7 +16,7 @@
 
 /*
  * 	INTERFACE scenario
- * It has to be compiled in opium_kernel module.
+ * It has to be compiled in morphine module.
  */
 
 opium_scenario(
@@ -32,248 +32,249 @@
 
 
 
-/*
- *	INTERFACE-STATUS/1
- */
-opium_procedure(
-	name		: interface_status,
-	arg_list	: [Status],
-	implementation	: interface_status_Op,
-	parameters	: [],
-	message		:
-"Procedure which tells what the interface status currently is (either \n\
-tty or pce). Useful for scenario with sophisticated display."
-	).
-
-:- make_local_array(interface_status).
-:- setval(interface_status, tty).
-
-interface_status_Op(X) :-
-	getval(interface_status, X).
-
-
-/*
- *	PCE-INTERFACE/1
- */
-opium_command(
-	name		: pce_interface,
-	arg_list	: [WindowSystem],
-	arg_type_list	: [is_member([sunview, xview])],
-	abbrev		: _,
-	interface	: hidden,
-	command_type	: opium,
-	implementation	: pce_interface_Op,
-	parameters	: [],
-	message		:
- "Command which sets (or resets) a window-based user interface built \n\
-on top of PCE (see KEGI manual). This interface runs both under \n\
-SunView and XView.  It provides a control panel, and output views \n\
-complementing the usual tty window used by default. The control panel \n\
-contains a menu with all the loaded scenarios; a menu with all the \n\
-Opium module; buttons and menus giving access to the objects of the \n\
-current scenario. The Opium commands and the trace lines are still \n\
-displayed in the tty window, but help information and source \n\
-information are directed to specialized output views. NOTE that to \n\
-select items in menus you have to use the right-hand button of the \n\
-mouse.  Note also that if you write extensions which may run either on \n\
-tty and pce interface, to output results you should use the opium_write \n\
-primitives."
-	).
-
-pce_interface_Op(WindowSystem) :-
-	not get_flag(extension, kegi_xview),
-	!,
-	error(142, pce_interface(WindowSystem)).
-pce_interface_Op(WindowSystem) :-
-	(  interface_status(pce)
-	-> true
-	;  reset_pce_interface(WindowSystem)).
-
-reset_pce_interface(WindowSystem) :- 
-	call(init_running("PCE"), kegi),
-	(  WindowSystem == sunview
-	-> call(start_pce(pce), kegi)
-	;  WindowSystem == xview,
-	   call(start_pce(xpce), kegi)),
-	pce_quiet, 				% no warning, nothing written on pce.log
-	setval(interface_status, pce),		% has to be set before make_interface_list
-	make_interface_list(O), 
-	init_opium_interface, 
-	open_interface_sepia_communication,
-	wui_error_handlers.
-reset_pce_interface(WindowSystem) :- 
-	reset_tty_interface,
-	!,
-	fail.
-
-
-/*
- *	TTY-INTERFACE/0
- */
-opium_command(
-	name		: tty_interface,
-	arg_list	: [],
-	arg_type_list	: [],
-	abbrev		: _,
-	interface	: button,
-	command_type	: opium,
-	implementation	: tty_interface_Op,
-	parameters	: [],
-	message		:
- "Command which sets (or resets) a tty like interface for Opium. In \n\
-the tty interface input and output related to the Opium process are \n\
-done via a tty-like window. Input is only entered with the keyboard."
-	).
-
-tty_interface_Op :-
-	(  interface_status(tty)
-	-> true
-	;  reset_tty_interface).
-
-/*
- * 
- */
-reset_tty_interface :- 
-	setval(interface_status, tty),
-	tty_error_handlers,
- 	(close_pce -> true ; true),
-	set_flag(enable_interrupts, on),	% Kegi does not always leave this in a proper state
-	(close_interface_sepia_communication-> true; true).	
-
-
-/*
- *  -------------------------------
- *   Hooks for the wui-interface 
- *  -------------------------------
- */
-
-/*
- *
- */
-update_opium_module_menu(X):-
-	(  interface_status(pce)
-	-> pce_update_opium_module_menu(X)
-	;  true).
-
-/* 
- * This doesn't do anything yet in either interface XXX
- */
-update_tracing_command_interface(OnOff).
-
-
-/* 
- * This should open the opium tty window in any case ?? XXX
- */
-
-opium_command(
-	name		: show_interface,
-	arg_list	: [OnOff],
-	arg_type_list	: [is_member([on, off])],
-	abbrev		: show_int,
-	interface	: button,
-	command_type	: opium,
-	implementation	: show_interface_Op,
-	parameters	: [],
-	message		:
- "Commands which hides the windowing user interface items (off) or \n\
-makes them visible. The windowing user interface is still present."
-	).
-
-show_interface_Op(on):-
-	(  interface_status(pce)
-	-> pce_show_interface(on)
-	;  true).
-show_interface_Op(off) :-
-	(  interface_status(pce)
-	-> pce_show_interface(off)
-	;  true).
-
-/* 
- * 
- */
-init_interface :-
-	(  interface_status(pce)
-	-> pce_init_interface
-	;  true).
-
-/*
- *
- */
-make_interface_list(X,Y,Z) :-
-	(  interface_status(pce)
-	-> wui_make_interface_list(X,Y,Z)
-	;  true).
-
-
-
-/*
- *   EXECUTE_DEMO_GOAL
- */
-opium_procedure(
-	name		: execute_demo_goal,
-	arg_list	: [Goal],
-	implementation	: execute_demo_goal_Op,
-	parameters	: [],
-	message		:
- "This procedure executes a goal for demos, according to the current \n\
-interface_status."
-	).
-
-/* wui_execute_demo_goal doesn't need the Module info as it is simply
- * echoing input in the sepia session.
- */
-execute_demo_goal_Op(Goal) :-
-	(  interface_status(tty)
-	-> opium_nl(help),
-	   get_flag(toplevel_module, Module), 
-	   call(Goal, Module)
-	;  wui_execute_demo_goal(Goal)
-	).
-
-
-
-/*
- *   INIT-DEMO-SERIES/0
- */
-opium_procedure(
-	name		: init_demo_series,
-	arg_list	: [],
-	implementation	: init_demo_series_Op,
-	parameters	: [],
-	message		:
- "Procedure which initializes the interface and aborts the currently \n\
-traced execution if there exists one. This should be used in the \n\
-\"condition\" of a the first demo of a series (currently those ending \n\
-with \"_0\")."
-	).
-
-init_demo_series_Op :-
-	(traced_execution_running -> abort_trace ; true),
-	system(clear),				% for trace and control window
-	opium_clear(source, pce),
-	opium_clear(help, pce).
-
-
-
-/*
- *	READ-INPUT
- */
-opium_procedure(
-	name		: read_input,
-	arg_list	: [Input],
-	implementation	: read_input_Op,
-	parameters	: [],
-	message		:
-"Procedure which reads an input from within the current input stream \n\
-of opium."
-	).
-
-/*  read in both cases from the input stream 
- */
-read_input_Op(X) :-
-	read(input, X).
+% /*
+%  *	INTERFACE-STATUS/1
+%  */
+% opium_procedure(
+% 	name		: interface_status,
+% 	arg_list	: [Status],
+% 	implementation	: interface_status_Op,
+% 	parameters	: [],
+% 	message		:
+% "Procedure which tells what the interface status currently is (either \n\
+% tty or pce). Useful for scenario with sophisticated display."
+% 	).
+
+% :- make_local_array(interface_status).
+% :- setval(interface_status, tty).
+
+% interface_status_Op(X) :-
+% 	getval(interface_status, X).
+
+
+% /*
+%  *	PCE-INTERFACE/1
+%  */
+% opium_command(
+% 	name		: pce_interface,
+% 	arg_list	: [WindowSystem],
+% 	arg_type_list	: [is_member([sunview, xview])],
+% 	abbrev		: _,
+% 	interface	: hidden,
+% 	command_type	: opium,
+% 	implementation	: pce_interface_Op,
+% 	parameters	: [],
+% 	message		:
+%  "Command which sets (or resets) a window-based user interface built \n\
+% on top of PCE (see KEGI manual). This interface runs both under \n\
+% SunView and XView.  It provides a control panel, and output views \n\
+% complementing the usual tty window used by default. The control panel \n\
+% contains a menu with all the loaded scenarios; a menu with all the \n\
+% Opium module; buttons and menus giving access to the objects of the \n\
+% current scenario. The Opium commands and the trace lines are still \n\
+% displayed in the tty window, but help information and source \n\
+% information are directed to specialized output views. NOTE that to \n\
+% select items in menus you have to use the right-hand button of the \n\
+% mouse.  Note also that if you write extensions which may run either on \n\
+% tty and pce interface, to output results you should use the opium_write \n\
+% primitives."
+% 	).
+
+% pce_interface_Op(WindowSystem) :-
+% 	not get_flag(extension, kegi_xview),
+% 	!,
+% 	error(142, pce_interface(WindowSystem)).
+% pce_interface_Op(WindowSystem) :-
+% 	(  interface_status(pce)
+% 	-> true
+% 	;  reset_pce_interface(WindowSystem)).
+
+% reset_pce_interface(WindowSystem) :- 
+% 	call(init_running("PCE"), kegi),
+% 	(  WindowSystem == sunview
+% 	-> call(start_pce(pce), kegi)
+% 	;  WindowSystem == xview,
+% 	   call(start_pce(xpce), kegi)),
+% 	pce_quiet, 				% no warning, nothing written on pce.log
+% 	setval(interface_status, pce),		% has to be set before make_interface_list
+% 	make_interface_list(O), 
+% 	init_opium_interface, 
+% 	open_interface_sepia_communication,
+% 	wui_error_handlers.
+% reset_pce_interface(WindowSystem) :- 
+% 	reset_tty_interface,
+% 	!,
+% 	fail.
+
+
+% /*
+%  *	TTY-INTERFACE/0
+%  */
+% opium_command(
+% 	name		: tty_interface,
+% 	arg_list	: [],
+% 	arg_type_list	: [],
+% 	abbrev		: _,
+% 	interface	: button,
+% 	command_type	: opium,
+% 	implementation	: tty_interface_Op,
+% 	parameters	: [],
+% 	message		:
+%  "Command which sets (or resets) a tty like interface for Opium. In \n\
+% the tty interface input and output related to the Opium process are \n\
+% done via a tty-like window. Input is only entered with the keyboard."
+% 	).
+
+% tty_interface_Op :-
+% 	(  interface_status(tty)
+% 	-> true
+% 	;  reset_tty_interface).
+
+% /*
+%  * 
+%  */
+% reset_tty_interface :- 
+% 	setval(interface_status, tty),
+% 	tty_error_handlers,
+%  	(close_pce -> true ; true),
+% 	set_flag(enable_interrupts, on),	% Kegi does not always leave this in a proper state
+% 	(close_interface_sepia_communication-> true; true).	
+
+
+% /*
+%  *  -------------------------------
+%  *   Hooks for the wui-interface 
+%  *  -------------------------------
+%  */
+
+% /*
+%  *
+%  */
+% update_opium_module_menu(X):-
+% 	(  interface_status(pce)
+% 	-> pce_update_opium_module_menu(X)
+% 	;  true).
+
+% /* 
+%  * This doesn't do anything yet in either interface XXX
+%  */
+% update_tracing_command_interface(OnOff).
+
+
+% /* 
+%  * This should open the opium tty window in any case ?? XXX
+%  */
+
+% opium_command(
+% 	name		: show_interface,
+% 	arg_list	: [OnOff],
+% 	arg_type_list	: [is_member([on, off])],
+% 	abbrev		: show_int,
+% 	interface	: button,
+% 	command_type	: opium,
+% 	implementation	: show_interface_Op,
+% 	parameters	: [],
+% 	message		:
+%  "Commands which hides the windowing user interface items (off) or \n\
+% makes them visible. The windowing user interface is still present."
+% 	).
+
+% show_interface_Op(on):-
+% 	(  interface_status(pce)
+% 	-> pce_show_interface(on)
+% 	;  true).
+% show_interface_Op(off) :-
+% 	(  interface_status(pce)
+% 	-> pce_show_interface(off)
+% 	;  true).
+
+% /* 
+%  * 
+%  */
+% init_interface :-
+% 	(  interface_status(pce)
+% 	-> pce_init_interface
+% 	;  true).
+
+% /*
+%  *
+%  */
+% make_interface_list(X,Y,Z) :-
+% 	(  interface_status(pce)
+% 	-> wui_make_interface_list(X,Y,Z)
+% 	;  true).
+
+
+
+% /*
+%  *   EXECUTE_DEMO_GOAL
+%  */
+% opium_procedure(
+% 	name		: execute_demo_goal,
+% 	arg_list	: [Goal],
+% 	implementation	: execute_demo_goal_Op,
+% 	parameters	: [],
+% 	message		:
+%  "This procedure executes a goal for demos, according to the current \n\
+% interface_status."
+% 	).
+
+% /* wui_execute_demo_goal doesn't need the Module info as it is simply
+%  * echoing input in the sepia session.
+%  */
+% execute_demo_goal_Op(Goal) :-
+% 	(  interface_status(tty)
+% 	-> opium_nl(help),
+% 	   get_flag(toplevel_module, Module), 
+% 	   call(Goal, Module)
+% 	;  wui_execute_demo_goal(Goal)
+% 	).
+
+
+
+% /*
+%  *   INIT-DEMO-SERIES/0
+%  */
+% opium_procedure(
+% 	name		: init_demo_series,
+% 	arg_list	: [],
+% 	implementation	: init_demo_series_Op,
+% 	parameters	: [],
+% 	message		:
+%  "Procedure which initializes the interface and aborts the currently \n\
+% traced execution if there exists one. This should be used in the \n\
+% \"condition\" of a the first demo of a series (currently those ending \n\
+% with \"_0\")."
+% 	).
+
+% init_demo_series_Op :-
+% 	(traced_execution_running -> abort_trace ; true),
+% 	system(clear),				% for trace and control window
+% 	opium_clear(source, pce),
+% 	opium_clear(help, pce).
+
+
+
+% /*
+%  *	READ-INPUT
+%  */
+% opium_procedure(
+% 	name		: read_input,
+% 	arg_list	: [Input],
+% 	implementation	: read_input_Op,
+% 	parameters	: [],
+% 	message		:
+% "Procedure which reads an input from within the current input stream \n\
+% of opium."
+% 	).
+
+% /*  read in both cases from the input stream 
+%  */
+% read_input_Op(X) :-
+% 	read(input, X).
 
 
+interface_status(tty).
 
 /* 
  *  -------------------------------
@@ -340,9 +341,9 @@
 	!,
 	write(Stream, X),		%standard sepia's write
 	flush(Stream).
-opium_write_do(View, X, pce) :-
-	!,
-	pce_opium_write(View, X).
+% opium_write_do(View, X, pce) :-
+% 	!,
+% 	pce_opium_write(View, X).
 
 
 /*
@@ -382,8 +383,8 @@
 
 opium_clear_do(View, tty):-
 	!.
-opium_clear_do(View, pce) :-
-	pce_opium_clear(View).
+% opium_clear_do(View, pce) :-
+% 	pce_opium_clear(View).
 
 
 
@@ -431,9 +432,9 @@
 opium_nl_do(Stream, tty) :-
 	!,
 	nl(Stream).
-opium_nl_do(View,pce) :-
-	!,
-	pce_opium_nl(View).
+% opium_nl_do(View,pce) :-
+% 	!,
+% 	pce_opium_nl(View).
 
 
 /*
