diff disp.pl @ 19:e1d3145cff7a lite-verifier

*** empty log message ***
author kono
date Thu, 30 Aug 2007 12:44:35 +0900
parents 1c57a78f1d98
children 07d6c4c5654b
line wrap: on
line diff
--- a/disp.pl	Sun Jan 21 10:21:43 2001 +0900
+++ b/disp.pl	Thu Aug 30 12:44:35 2007 +0900
@@ -30,11 +30,31 @@
 
 display :-
 	init_display,!,
-	event_loop(run).
+	event_loop(run),
+	tcl_exit.
+
+tcl_exit :-
+    tcl(X),tcl_delete(X),retract(tcl(X)).
+
+tcl_name(L,Name) :-
+	concatenate(L,L1),
+	name(Name,L1).
+
+concatenate([],[]).
+concatenate([H|T],X) :- atomic(H),!,
+	name(H,List),concatenate(T,X1),append(List,X1,X).
+concatenate([H|T],X) :-  H=[_|_],
+	concatenate(T,X1),append(H,X1,X).
+
+tcl_eval(E) :- atomic(E),!,
+	tcl(Tcl),tcl_eval(Tcl,E,_).
+tcl_eval(E) :- E=[_|_],tcl_name(E,N),
+	tcl(Tcl),tcl_eval(Tcl,N,_).
 
 init_display :-
 	(retract(r_event(_,_)),fail;true),
-	tk_init('lite',[]),
+         tk_new([name('Lite Verifier')], Tcl),
+	assert(tcl(Tcl)),
 %	tcl_eval('source disp.tcl'),
 	tcl_eval('source xf-disp'),
         all_disable.
@@ -78,8 +98,9 @@
         all_enable.
 verify(_) :-
         all_disable.
+
 display_contents(X) :-
-	ttyflush,t2strings(X,XS0),easy_pp(XS0,XS),
+	ttyflush,t2string(X,XS0),easy_pp(XS0,XS),
 	tcl_eval('$symbolicName(entry) delete 0.0 end'),
 	tcl_eval(['$symbolicName(entry) insert 0.0 {',XS,'}']),
         display_update.