let tag = QName.to_string (T.tag tree node) in
let lbox = (String.length tag + 2) * 10 in
let s_node = "node" ^ (string_of_int node_id) in
- fprintf osvg "<rect id=\"%s\" onclick=\"activate(\'%s\');\" x=\"%i\" y=\"%i\" width=\"%i\" height=\"20\" style=\"fill:rgba(255,%i,%i,255);stroke-width:2;stroke:rgb(0,0,0)%s\"/>\n%!"
- s_node s_node x y lbox color color (if marked then "" else ";stroke-dasharray:2,2");
+ fprintf osvg "<rect id=\"%s\" onclick=\"activate(\'%s\');\" x=\"%i\" y=\"%i\" width=\"%i\" height=\"20\" style=\"fill:rgba(255,%i,%i,255);stroke:rgb(0,0,0)%s\"/>\n%!"
+ s_node s_node x y lbox color color (if marked then ";stroke-width:4" else ";stroke-width:2;stroke-dasharray:2,2");
fprintf osvg "<text x=\"%i\" y=\"%i\" style=\"font-size:17;font-family:typewriter;\" onclick=\"activate(\'%s\');\" >%s</text>\n" (x+10) (y+15) s_node tag;
fprintf ohtml "data['%s'] = new Array();\n" s_node;
M.iter
IFDEF HTMLTRACE
THEN
-DEFINE TRACE(e) = (e)
+DEFINE IFTRACE(e) = (e)
ELSE
-DEFINE TRACE(e) = ()
+DEFINE IFTRACE(e) = ()
END
let html tree node i config msg =
}
else c
in
- TRACE(html tree node _i status0 "Entering node");
+ IFTRACE(html tree node _i status0 "Entering node");
(* get the node_statuses for the first child, next sibling and parent *)
let ps = unsafe_get_status status (T.preorder tree parent) in
(* evaluate the transitions with all this statuses *)
let status1 = if status0.NodeStatus.node.todo == StateSet.empty then status0 else begin
let status1 = eval_trans auto cache2 cache5 tag fcs nss ps status0 in
- TRACE(html tree node _i status1 "Updating transitions");
+ IFTRACE(html tree node _i status1 "Updating transitions");
(* update the cache if the status of the node changed *)
if status1 != status0 then status.(node_id) <- status1;
status1
(* update the status *)
let status2 = if status1.NodeStatus.node.todo == StateSet.empty then status1 else begin
let status2 = eval_trans auto cache2 cache5 tag fcs1 nss ps status1 in
- TRACE(html tree node _i status2 "Updating transitions (after first-child)");
+ IFTRACE(html tree node _i status2 "Updating transitions (after first-child)");
if status2 != status1 then status.(node_id) <- status2;
status2
end
let nss1 = unsafe_get_status status ns_id in
let status3 = if status2.NodeStatus.node.todo == StateSet.empty then status2 else begin
let status3 = eval_trans auto cache2 cache5 tag fcs1 nss1 ps status2 in
- TRACE(html tree node _i status3 "Updating transitions (after next-sibling)");
+ IFTRACE(html tree node _i status3 "Updating transitions (after next-sibling)");
if status3 != status2 then status.(node_id) <- status3;
status3
end
|| StateSet.empty != status3.NodeStatus.node.todo
in
Bitvector.unsafe_set unstable node_id unstable_self;
- TRACE((if not unstable_self then
+ IFTRACE((if not unstable_self then
Html.finalize_node
node_id
_i
while run.redo do
top_down run
done;
- TRACE(Html.gen_trace auto (module T : Tree.S with type t = T.t) tree);
+
+ IFTRACE(Html.gen_trace auto (module T : Tree.S with type t = T.t) tree);
+
run
let full_eval auto tree nodes =