]> OCCT Git - occt-wok.git/commitdiff
No comments
authorcas <cas@opencascade.com>
Thu, 19 Jul 2001 14:35:51 +0000 (14:35 +0000)
committercas <cas@opencascade.com>
Thu, 19 Jul 2001 14:35:51 +0000 (14:35 +0000)
src/WOKTclLib/FILES
src/WOKTclLib/wprepare.tcl

index 929866e791a90775acbfa5af7fcc5d14c7105a03..732b3df8fb4b696d12dea668d6eb0017c957d6d5 100755 (executable)
@@ -147,4 +147,3 @@ srcinc:::template.minx
 srcinc:::template.mam
 srcinc:::template.mamx
 srcinc:::osutils.tcl
-srcinc:::opencascade.gif
index 8e6dff8908381499a4607c3eb4f9f5c0e3263593..e4242117ace7df2291c5460dbf48bcccd9a38577 100755 (executable)
@@ -155,21 +155,46 @@ proc wokPrepare:Unit:Ref { Fout Wb Uliste } {
 # Boucle sur une liste  {type name}, ecrit dans table le resultat de la comparaison
 # wokPrepare:Unit:Loop Mytable DEMO:Demo:Kernel DEMO:Demo:FK  {NTD AccesServer}
 # Pere = FACT:SHOP:WBPERE , Fils: FACT:SHOP:WBFILS
+# Pour chacune des Uds il faut chercher dans quel workbench elle se trouve au dessus.
+# si elle n'existe pas =. on met {}. 
+#
 #;<
 proc wokPrepare:Unit:Loop { Fout Pere Fils Uliste } {
-    set lupere [w_info -l $Pere]
+    wokPrepare:Unit:ouestu ${Pere} $Uliste map
     foreach e $Uliste {
        set t [uinfo -t ${Fils}:${e}]
        $Fout uheader "$e.$t"
        set loc [uinfo -fl -Tsource ${Fils}:$e]
-       if { [lsearch $lupere $e] != -1 } {
-           wokPrepare:Unit:Diff $Fout [uinfo -fp -Tsource ${Pere}:$e] [uinfo -fp -Tsource ${Fils}:$e] $loc
+       
+       if { $map($e) != {} } {
+           set ances $map($e)
+           wokPrepare:Unit:Diff $Fout [uinfo -fp -Tsource $ances:$e] [uinfo -fp -Tsource ${Fils}:$e] $loc
        } else {
            wokPrepare:Unit:Diff $Fout {} [uinfo -fp -Tsource ${Fils}:$e] $loc
        }
     }
 }
 
+#;>
+# retourne le nom du workbench ou se trouve u
+# dans l'ascendance de wb, (wb inclus)
+# wb est un full path
+#;<
+proc wokPrepare:Unit:ouestu { wb lu map} {
+    upvar $map TLOC
+    set pfx [wokinfo -s $wb]
+    set ancestors [w_info -A $wb]
+    foreach u $lu {
+       foreach w $ancestors {
+           set TLOC($u) {}
+           if { [wokinfo -x ${pfx}:${w}:$u] } {
+               set TLOC($u) ${pfx}:$w
+               break
+           }
+       }
+    }
+}
+
 #;>
 #
 #  l1 liste des sources vue du pere {basename dirname}